]> granicus.if.org Git - python/commitdiff
Issue #17223: the test is specific to 32-bit wchar_t type
authorVictor Stinner <victor.stinner@gmail.com>
Fri, 8 Mar 2013 01:33:06 +0000 (02:33 +0100)
committerVictor Stinner <victor.stinner@gmail.com>
Fri, 8 Mar 2013 01:33:06 +0000 (02:33 +0100)
Skip the test on Windows.

Lib/test/test_array.py

index e004c0ee463aec655ca2dea402b45cd5e104d0db..f21b69f367a4147eb15b77dabeb4b2e2692f7810 100755 (executable)
@@ -24,15 +24,7 @@ try:
 except struct.error:
     have_long_long = False
 
-try:
-    import ctypes
-    sizeof_wchar = ctypes.sizeof(ctypes.c_wchar)
-except ImportError:
-    import sys
-    if sys.platform == 'win32':
-        sizeof_wchar = 2
-    else:
-        sizeof_wchar = 4
+sizeof_wchar = array.array('u').itemsize
 
 
 class ArraySubclass(array.array):
@@ -1076,8 +1068,8 @@ class UnicodeTest(StringTest, unittest.TestCase):
             # U+FFFFFFFF is an invalid code point in Unicode 6.0
             invalid_str = b'\xff\xff\xff\xff'
         else:
-            # invalid UTF-16 surrogate pair
-            invalid_str = b'\xff\xdf\x61\x00'
+            # PyUnicode_FromUnicode() cannot fail with 16-bit wchar_t
+            self.skipTest("specific to 32-bit wchar_t")
         a = array.array('u', invalid_str)
         self.assertRaises(ValueError, a.tounicode)
         self.assertRaises(ValueError, str, a)