@@ -18,6 +18,14 @@ def test_isabs(self):
1818 self .failIf (isabs (":foo:bar" ))
1919 self .failIf (isabs (":foo:bar:" ))
2020
21+ self .assert_ (isabs (b"xx:yy" ))
22+ self .assert_ (isabs (b"xx:yy:" ))
23+ self .assert_ (isabs (b"xx:" ))
24+ self .failIf (isabs (b"foo" ))
25+ self .failIf (isabs (b":foo" ))
26+ self .failIf (isabs (b":foo:bar" ))
27+ self .failIf (isabs (b":foo:bar:" ))
28+
2129
2230 def test_commonprefix (self ):
2331 commonprefix = macpath .commonprefix
@@ -28,6 +36,13 @@ def test_commonprefix(self):
2836 self .assert_ (commonprefix ([":home:swen:spam" , ":home:swen:spam" ])
2937 == ":home:swen:spam" )
3038
39+ self .assert_ (commonprefix ([b"home:swenson:spam" , b"home:swen:spam" ])
40+ == b"home:swen" )
41+ self .assert_ (commonprefix ([b":home:swen:spam" , b":home:swen:eggs" ])
42+ == b":home:swen:" )
43+ self .assert_ (commonprefix ([b":home:swen:spam" , b":home:swen:spam" ])
44+ == b":home:swen:spam" )
45+
3146 def test_split (self ):
3247 split = macpath .split
3348 self .assertEquals (split ("foo:bar" ),
@@ -39,11 +54,37 @@ def test_split(self):
3954 self .assertEquals (split (":conky:mountpoint:" ),
4055 (':conky:mountpoint' , '' ))
4156
57+ self .assertEquals (split (b"foo:bar" ),
58+ (b'foo:' , b'bar' ))
59+ self .assertEquals (split (b"conky:mountpoint:foo:bar" ),
60+ (b'conky:mountpoint:foo' , b'bar' ))
61+
62+ self .assertEquals (split (b":" ), (b'' , b'' ))
63+ self .assertEquals (split (b":conky:mountpoint:" ),
64+ (b':conky:mountpoint' , b'' ))
65+
66+ def test_join (self ):
67+ join = macpath .join
68+ self .assertEquals (join ('a' , 'b' ), ':a:b' )
69+ self .assertEquals (join ('' , 'a:b' ), 'a:b' )
70+ self .assertEquals (join ('a:b' , 'c' ), 'a:b:c' )
71+ self .assertEquals (join ('a:b' , ':c' ), 'a:b:c' )
72+ self .assertEquals (join ('a' , ':b' , ':c' ), ':a:b:c' )
73+
74+ self .assertEquals (join (b'a' , b'b' ), b':a:b' )
75+ self .assertEquals (join (b'' , b'a:b' ), b'a:b' )
76+ self .assertEquals (join (b'a:b' , b'c' ), b'a:b:c' )
77+ self .assertEquals (join (b'a:b' , b':c' ), b'a:b:c' )
78+ self .assertEquals (join (b'a' , b':b' , b':c' ), b':a:b:c' )
79+
4280 def test_splitdrive (self ):
4381 splitdrive = macpath .splitdrive
4482 self .assertEquals (splitdrive ("foo:bar" ), ('' , 'foo:bar' ))
4583 self .assertEquals (splitdrive (":foo:bar" ), ('' , ':foo:bar' ))
4684
85+ self .assertEquals (splitdrive (b"foo:bar" ), (b'' , b'foo:bar' ))
86+ self .assertEquals (splitdrive (b":foo:bar" ), (b'' , b':foo:bar' ))
87+
4788 def test_splitext (self ):
4889 splitext = macpath .splitext
4990 self .assertEquals (splitext (":foo.ext" ), (':foo' , '.ext' ))
@@ -54,6 +95,49 @@ def test_splitext(self):
5495 self .assertEquals (splitext ("" ), ('' , '' ))
5596 self .assertEquals (splitext ("foo.bar.ext" ), ('foo.bar' , '.ext' ))
5697
98+ self .assertEquals (splitext (b":foo.ext" ), (b':foo' , b'.ext' ))
99+ self .assertEquals (splitext (b"foo:foo.ext" ), (b'foo:foo' , b'.ext' ))
100+ self .assertEquals (splitext (b".ext" ), (b'.ext' , b'' ))
101+ self .assertEquals (splitext (b"foo.ext:foo" ), (b'foo.ext:foo' , b'' ))
102+ self .assertEquals (splitext (b":foo.ext:" ), (b':foo.ext:' , b'' ))
103+ self .assertEquals (splitext (b"" ), (b'' , b'' ))
104+ self .assertEquals (splitext (b"foo.bar.ext" ), (b'foo.bar' , b'.ext' ))
105+
106+ def test_ismount (self ):
107+ ismount = macpath .ismount
108+ self .assertEquals (ismount ("a:" ), True )
109+ self .assertEquals (ismount ("a:b" ), False )
110+ self .assertEquals (ismount ("a:b:" ), True )
111+ self .assertEquals (ismount ("" ), False )
112+ self .assertEquals (ismount (":" ), False )
113+
114+ self .assertEquals (ismount (b"a:" ), True )
115+ self .assertEquals (ismount (b"a:b" ), False )
116+ self .assertEquals (ismount (b"a:b:" ), True )
117+ self .assertEquals (ismount (b"" ), False )
118+ self .assertEquals (ismount (b":" ), False )
119+
120+ def test_normpath (self ):
121+ normpath = macpath .normpath
122+ self .assertEqual (normpath ("a:b" ), "a:b" )
123+ self .assertEqual (normpath ("a" ), ":a" )
124+ self .assertEqual (normpath ("a:b::c" ), "a:c" )
125+ self .assertEqual (normpath ("a:b:c:::d" ), "a:d" )
126+ self .assertRaises (macpath .norm_error , normpath , "a::b" )
127+ self .assertRaises (macpath .norm_error , normpath , "a:b:::c" )
128+ self .assertEqual (normpath (":" ), ":" )
129+ self .assertEqual (normpath ("a:" ), "a:" )
130+ self .assertEqual (normpath ("a:b:" ), "a:b" )
131+
132+ self .assertEqual (normpath (b"a:b" ), b"a:b" )
133+ self .assertEqual (normpath (b"a" ), b":a" )
134+ self .assertEqual (normpath (b"a:b::c" ), b"a:c" )
135+ self .assertEqual (normpath (b"a:b:c:::d" ), b"a:d" )
136+ self .assertRaises (macpath .norm_error , normpath , b"a::b" )
137+ self .assertRaises (macpath .norm_error , normpath , b"a:b:::c" )
138+ self .assertEqual (normpath (b":" ), b":" )
139+ self .assertEqual (normpath (b"a:" ), b"a:" )
140+ self .assertEqual (normpath (b"a:b:" ), b"a:b" )
57141
58142def test_main ():
59143 support .run_unittest (MacPathTestCase )
0 commit comments