diff options
author | Serhiy Storchaka <storchaka@gmail.com> | 2013-11-18 11:06:43 (GMT) |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2013-11-18 11:06:43 (GMT) |
commit | fd32fffa5ada8b8be8a65bd51b001d989f99a3d3 (patch) | |
tree | 2b0324a2068af8e9b1d887bb74b426ac9f12ca2b /Lib/test/test_glob.py | |
parent | e3010fd740b63df306f878fc872e29d5f6be7487 (diff) | |
download | cpython-fd32fffa5ada8b8be8a65bd51b001d989f99a3d3.zip cpython-fd32fffa5ada8b8be8a65bd51b001d989f99a3d3.tar.gz cpython-fd32fffa5ada8b8be8a65bd51b001d989f99a3d3.tar.bz2 |
Issue #8402: Added the escape() function to the glob module.
Diffstat (limited to 'Lib/test/test_glob.py')
-rw-r--r-- | Lib/test/test_glob.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/Lib/test/test_glob.py b/Lib/test/test_glob.py index eb9aeb5..a5ab8d6 100644 --- a/Lib/test/test_glob.py +++ b/Lib/test/test_glob.py @@ -169,6 +169,28 @@ class GlobTests(unittest.TestCase): eq(glob.glob('\\\\*\\*\\'), []) eq(glob.glob(b'\\\\*\\*\\'), []) + def check_escape(self, arg, expected): + self.assertEqual(glob.escape(arg), expected) + self.assertEqual(glob.escape(os.fsencode(arg)), os.fsencode(expected)) + + def test_escape(self): + check = self.check_escape + check('abc', 'abc') + check('[', '[[]') + check('?', '[?]') + check('*', '[*]') + check('[[_/*?*/_]]', '[[][[]_/[*][?][*]/_]]') + check('/[[_/*?*/_]]/', '/[[][[]_/[*][?][*]/_]]/') + + @unittest.skipUnless(sys.platform == "win32", "Win32 specific test") + def test_escape_windows(self): + check = self.check_escape + check('?:?', '?:[?]') + check('*:*', '*:[*]') + check(r'\\?\c:\?', r'\\?\c:\[?]') + check(r'\\*\*\*', r'\\*\*\[*]') + check('//?/c:/?', '//?/c:/[?]') + check('//*/*/*', '//*/*/[*]') def test_main(): run_unittest(GlobTests) |