diff options
author | native-api <ivan_pozdeev@mail.ru> | 2018-12-06 12:43:37 +0300 |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2018-12-06 11:43:37 +0200 |
commit | 29a4cbff92862207eb9df9a970b3636b8b06ff5d (patch) | |
tree | b34cbacca9cd8073a5c5418eadef8fda5a831614 | |
parent | 46aa472a8f2dd9e47ba6fbe3cc416ec7c62f11f4 (diff) | |
download | cpython-git-29a4cbff92862207eb9df9a970b3636b8b06ff5d.tar.gz |
[2.7] bpo-33709: test_ntpath and test_posixpath fail in Windows with ACP!=1252. (GH-7278) (GH-7279)
-rw-r--r-- | Lib/test/support/__init__.py | 8 | ||||
-rw-r--r-- | Lib/test/test_posixpath.py | 6 |
2 files changed, 8 insertions, 6 deletions
diff --git a/Lib/test/support/__init__.py b/Lib/test/support/__init__.py index 23b7065174..aaf028632a 100644 --- a/Lib/test/support/__init__.py +++ b/Lib/test/support/__init__.py @@ -657,8 +657,12 @@ if have_unicode: unichr(0x20AC), ): try: - character.encode(sys.getfilesystemencoding())\ - .decode(sys.getfilesystemencoding()) + # In Windows, 'mbcs' is used, and encode() returns '?' + # for characters missing in the ANSI codepage + if character.encode(sys.getfilesystemencoding())\ + .decode(sys.getfilesystemencoding())\ + != character: + raise UnicodeError except UnicodeError: pass else: diff --git a/Lib/test/test_posixpath.py b/Lib/test/test_posixpath.py index 0663a21ff0..18ea2e42ea 100644 --- a/Lib/test/test_posixpath.py +++ b/Lib/test/test_posixpath.py @@ -496,12 +496,10 @@ class PosixPathTest(unittest.TestCase): finally: os.getcwd = real_getcwd - @test_support.requires_unicode + @unittest.skipUnless(test_support.FS_NONASCII, 'need test_support.FS_NONASCII') def test_expandvars_nonascii_word(self): encoding = sys.getfilesystemencoding() - # Non-ASCII word characters - letters = test_support.u(r'\xe6\u0130\u0141\u03c6\u041a\u05d0\u062a\u0e01') - uwnonascii = letters.encode(encoding, 'ignore').decode(encoding)[:3] + uwnonascii = test_support.FS_NONASCII swnonascii = uwnonascii.encode(encoding) if not swnonascii: self.skipTest('Needs non-ASCII word characters') |