summaryrefslogtreecommitdiff
path: root/Lib/test/test_macpath.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/test/test_macpath.py')
-rw-r--r--Lib/test/test_macpath.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/Lib/test/test_macpath.py b/Lib/test/test_macpath.py
index 2449b0a1fb..81374d1a3f 100644
--- a/Lib/test/test_macpath.py
+++ b/Lib/test/test_macpath.py
@@ -1,3 +1,4 @@
+import os
import macpath
from test import test_support
import unittest
@@ -8,6 +9,22 @@ class MacPathTestCase(unittest.TestCase):
def test_abspath(self):
self.assert_(macpath.abspath("xx:yy") == "xx:yy")
+ # Issue 3426: check that abspath retuns unicode when the arg is unicode
+ # and str when it's str, with both ASCII and non-ASCII cwds
+ saved_cwd = os.getcwd()
+ for cwd in (u'cwd', u'\xe7w\xf0'):
+ try:
+ os.mkdir(cwd)
+ os.chdir(cwd)
+ for path in ('', 'foo', 'f\xf2\xf2', '/foo', 'C:\\'):
+ self.assertTrue(isinstance(macpath.abspath(path), str))
+ for upath in (u'', u'fuu', u'f\xf9\xf9', u'/fuu', u'U:\\'):
+ self.assertTrue(isinstance(macpath.abspath(upath), unicode))
+ finally:
+ os.chdir(saved_cwd)
+ os.rmdir(cwd)
+
+
def test_isabs(self):
isabs = macpath.isabs
self.assert_(isabs("xx:yy"))