[Python-checkins] python/dist/src/Lib/test test_support.py, 1.58,
1.59
mhammond at users.sourceforge.net
mhammond at users.sourceforge.net
Tue Dec 2 20:27:25 EST 2003
Update of /cvsroot/python/python/dist/src/Lib/test
In directory sc8-pr-cvs1:/tmp/cvs-serv14031
Modified Files:
test_support.py
Log Message:
Add TESTFN_UNICODE_UNENCODEABLE, a unicode filename that can not be
encoded using the default file system encoding.
Index: test_support.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_support.py,v
retrieving revision 1.58
retrieving revision 1.59
diff -C2 -d -r1.58 -r1.59
*** test_support.py 16 Jul 2003 04:29:42 -0000 1.58
--- test_support.py 3 Dec 2003 01:27:23 -0000 1.59
***************
*** 125,128 ****
--- 125,131 ----
# Unicode name only used if TEST_FN_ENCODING exists for the platform.
if have_unicode:
+ # Assuming sys.getfilesystemencoding()!=sys.getdefaultencoding()
+ # TESTFN_UNICODE is a filename that can be encoded using the
+ # file system encoding, but *not* with the default (ascii) encoding
if isinstance('', unicode):
# python -U
***************
*** 132,135 ****
--- 135,156 ----
TESTFN_UNICODE=unicode("@test-\xe0\xf2", "latin-1") # 2 latin characters.
TESTFN_ENCODING=sys.getfilesystemencoding()
+ # TESTFN_UNICODE_UNENCODEABLE is a filename that should *not* be
+ # able to be encoded by *either* the default or filesystem encoding.
+ # Japanese characters (I think - from bug 846133)
+ TESTFN_UNICODE_UNENCODEABLE = u"@test-\u5171\u6709\u3055\u308c\u308b"
+ try:
+ # XXX - Note - should be using TESTFN_ENCODING here - but for
+ # Windows, "mbcs" currently always operates as if in
+ # errors=ignore' mode - hence we get '?' characters rather than
+ # the exception. 'Latin1' operates as we expect - ie, fails.
+ # See [ 850997 ] mbcs encoding ignores errors
+ TESTFN_UNICODE_UNENCODEABLE.encode("Latin1")
+ except UnicodeEncodeError:
+ pass
+ else:
+ print \
+ 'WARNING: The filename %r CAN be encoded by the filesystem. ' \
+ 'Unicode filename tests may not be effective' \
+ % TESTFN_UNICODE_UNENCODEABLE
# Make sure we can write to TESTFN, try in /tmp if we can't
More information about the Python-checkins
mailing list