#3426: os.path.abspath now returns unicode when its arg is unicode.
diff --git a/Lib/test/test_posixpath.py b/Lib/test/test_posixpath.py
index 60a043c..2315b25 100644
--- a/Lib/test/test_posixpath.py
+++ b/Lib/test/test_posixpath.py
@@ -386,6 +386,15 @@
     def test_abspath(self):
         self.assertTrue("foo" in posixpath.abspath("foo"))
 
+        # 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
+        for cwd in (u'cwd', u'\xe7w\xf0'):
+            with test_support.temp_cwd(cwd):
+                for path in ('', 'foo', 'f\xf2\xf2', '/foo', 'C:\\'):
+                    self.assertIsInstance(posixpath.abspath(path), str)
+                for upath in (u'', u'fuu', u'f\xf9\xf9', u'/fuu', u'U:\\'):
+                    self.assertIsInstance(posixpath.abspath(upath), unicode)
+
         self.assertRaises(TypeError, posixpath.abspath)
 
     def test_realpath(self):