Tentatively enable test_pep277 on all platforms.

This commit is contained in:
Florent Xicluna 2010-03-02 21:34:45 +00:00
parent d8472a4545
commit 2db61fb7a8
2 changed files with 9 additions and 3 deletions

View File

@ -2,8 +2,9 @@
# open, os.open, os.stat. os.listdir, os.rename, os.remove, os.mkdir, os.chdir, os.rmdir
import sys, os, unittest
from test import test_support
if not os.path.supports_unicode_filenames:
raise unittest.SkipTest, "test works only on NT+"
## There's no obvious reason to skip these tests on POSIX systems
# if not os.path.supports_unicode_filenames:
# raise unittest.SkipTest, "test works only on NT+"
filenames = [
'abc',
@ -51,6 +52,9 @@ class UnicodeFileTests(unittest.TestCase):
raise test_support.TestFailed("Expected to fail calling '%s(%r)'"
% (fn.__name__, filename))
except expected_exception, details:
# the "filename" exception attribute may be encoded
if isinstance(details.filename, str):
filename = filename.encode(sys.getfilesystemencoding())
if check_fn_in_exception and details.filename != filename:
raise test_support.TestFailed("Function '%s(%r) failed with "
"bad filename in the exception: %r"
@ -80,7 +84,7 @@ class UnicodeFileTests(unittest.TestCase):
f1 = os.listdir(test_support.TESTFN)
f2 = os.listdir(unicode(test_support.TESTFN,
sys.getfilesystemencoding()))
sf2 = set(u"\\".join((unicode(test_support.TESTFN), f))
sf2 = set(os.path.join(unicode(test_support.TESTFN), f)
for f in f2)
self.assertEqual(len(f1), len(self.files))
self.assertEqual(sf2, set(self.files))

View File

@ -106,6 +106,8 @@ Extension Modules
Tests
-----
- Issue #767675: enable test_pep277 on all platforms.
- Issue #6292: for the moment at least, the test suite runs cleanly if python
is run with the -OO flag. Tests requiring docstrings are skipped.