diff options
author | Martin v. Löwis <martin@v.loewis.de> | 2002-12-12 20:30:20 (GMT) |
---|---|---|
committer | Martin v. Löwis <martin@v.loewis.de> | 2002-12-12 20:30:20 (GMT) |
commit | de3337913f08266b16842f21a67427d10725ed8f (patch) | |
tree | f54488a637762efbde037aac60ebbfb83a217735 /Lib/test | |
parent | 427a290c9afca605ab8ed799f0072d890318b837 (diff) | |
download | cpython-de3337913f08266b16842f21a67427d10725ed8f.zip cpython-de3337913f08266b16842f21a67427d10725ed8f.tar.gz cpython-de3337913f08266b16842f21a67427d10725ed8f.tar.bz2 |
Patch #536661: Improve performance of splitext. Add test_macpath.
Diffstat (limited to 'Lib/test')
-rw-r--r-- | Lib/test/test_macpath.py | 64 | ||||
-rw-r--r-- | Lib/test/test_ntpath.py | 10 | ||||
-rw-r--r-- | Lib/test/test_posixpath.py | 5 |
3 files changed, 79 insertions, 0 deletions
diff --git a/Lib/test/test_macpath.py b/Lib/test/test_macpath.py new file mode 100644 index 0000000..67b1bed --- /dev/null +++ b/Lib/test/test_macpath.py @@ -0,0 +1,64 @@ +import macpath +from test import test_support +import unittest + + +class MacPathTestCase(unittest.TestCase): + + def test_abspath(self): + self.assert_(macpath.abspath("xx:yy") == "xx:yy") + + def test_isabs(self): + isabs = macpath.isabs + self.assert_(isabs("xx:yy")) + self.assert_(isabs("xx:yy:")) + self.assert_(isabs("xx:")) + self.failIf(isabs("foo")) + self.failIf(isabs(":foo")) + self.failIf(isabs(":foo:bar")) + self.failIf(isabs(":foo:bar:")) + + + def test_commonprefix(self): + commonprefix = macpath.commonprefix + self.assert_(commonprefix(["home:swenson:spam", "home:swen:spam"]) + == "home:swen") + self.assert_(commonprefix([":home:swen:spam", ":home:swen:eggs"]) + == ":home:swen:") + self.assert_(commonprefix([":home:swen:spam", ":home:swen:spam"]) + == ":home:swen:spam") + + def test_split(self): + split = macpath.split + self.assertEquals(split("foo:bar"), + ('foo:', 'bar')) + self.assertEquals(split("conky:mountpoint:foo:bar"), + ('conky:mountpoint:foo', 'bar')) + + self.assertEquals(split(":"), ('', '')) + self.assertEquals(split(":conky:mountpoint:"), + (':conky:mountpoint', '')) + + def test_splitdrive(self): + splitdrive = macpath.splitdrive + self.assertEquals(splitdrive("foo:bar"), ('', 'foo:bar')) + self.assertEquals(splitdrive(":foo:bar"), ('', ':foo:bar')) + + def test_splitext(self): + splitext = macpath.splitext + self.assertEquals(splitext(":foo.ext"), (':foo', '.ext')) + self.assertEquals(splitext("foo:foo.ext"), ('foo:foo', '.ext')) + self.assertEquals(splitext(".ext"), ('', '.ext')) + self.assertEquals(splitext("foo.ext:foo"), ('foo.ext:foo', '')) + self.assertEquals(splitext(":foo.ext:"), (':foo.ext:', '')) + self.assertEquals(splitext(""), ('', '')) + self.assertEquals(splitext("foo.bar.ext"), ('foo.bar', '.ext')) + + +def test_main(): + test_support.run_unittest(MacPathTestCase) + + +if __name__ == "__main__": + test_main() + diff --git a/Lib/test/test_ntpath.py b/Lib/test/test_ntpath.py index 40d785f..2419844 100644 --- a/Lib/test/test_ntpath.py +++ b/Lib/test/test_ntpath.py @@ -15,6 +15,16 @@ def tester(fn, wantResult): print " returned: " + str(gotResult) print "" errors = errors + 1 + +tester('ntpath.splitext("foo.ext")', ('foo', '.ext')) +tester('ntpath.splitext("/foo/foo.ext")', ('/foo/foo', '.ext')) +tester('ntpath.splitext(".ext")', ('', '.ext')) +tester('ntpath.splitext("\\foo.ext\\foo")', ('\\foo.ext\\foo', '')) +tester('ntpath.splitext("foo.ext\\")', ('foo.ext\\', '')) +tester('ntpath.splitext("")', ('', '')) +tester('ntpath.splitext("foo.bar.ext")', ('foo.bar', '.ext')) +tester('ntpath.splitext("xx/foo.bar.ext")', ('xx/foo.bar', '.ext')) +tester('ntpath.splitext("xx\\foo.bar.ext")', ('xx\\foo.bar', '.ext')) tester('ntpath.splitdrive("c:\\foo\\bar")', ('c:', '\\foo\\bar')) diff --git a/Lib/test/test_posixpath.py b/Lib/test/test_posixpath.py index 362483f..0aaddaf 100644 --- a/Lib/test/test_posixpath.py +++ b/Lib/test/test_posixpath.py @@ -21,6 +21,11 @@ tester('posixpath.split("foo")', ('', 'foo')) tester('posixpath.splitext("foo.ext")', ('foo', '.ext')) tester('posixpath.splitext("/foo/foo.ext")', ('/foo/foo', '.ext')) +tester('posixpath.splitext(".ext")', ('', '.ext')) +tester('posixpath.splitext("/foo.ext/foo")', ('/foo.ext/foo', '')) +tester('posixpath.splitext("foo.ext/")', ('foo.ext/', '')) +tester('posixpath.splitext("")', ('', '')) +tester('posixpath.splitext("foo.bar.ext")', ('foo.bar', '.ext')) tester('posixpath.isabs("/")', 1) tester('posixpath.isabs("/foo")', 1) |