From 4e41a4b64cb9e69d15ebe0cdf752c5e105318a94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Walter=20D=C3=B6rwald?= Date: Wed, 3 Aug 2005 17:09:04 +0000 Subject: Disable a few other tests, that can't work if Python is compiled without Unicode support. --- Lib/test/test_builtin.py | 19 ++++++++++++++----- Lib/test/test_isinstance.py | 3 ++- Lib/test/test_sys.py | 3 ++- Lib/test/test_textwrap.py | 23 ++++++++++++----------- 4 files changed, 30 insertions(+), 18 deletions(-) diff --git a/Lib/test/test_builtin.py b/Lib/test/test_builtin.py index 103d1a3..52c1fe0 100644 --- a/Lib/test/test_builtin.py +++ b/Lib/test/test_builtin.py @@ -582,14 +582,16 @@ class BuiltinTest(unittest.TestCase): self.assertRaises(TypeError, getattr, sys, 1) self.assertRaises(TypeError, getattr, sys, 1, "foo") self.assertRaises(TypeError, getattr) - self.assertRaises(UnicodeError, getattr, sys, unichr(sys.maxunicode)) + if have_unicode: + self.assertRaises(UnicodeError, getattr, sys, unichr(sys.maxunicode)) def test_hasattr(self): import sys self.assert_(hasattr(sys, 'stdout')) self.assertRaises(TypeError, hasattr, sys, 1) self.assertRaises(TypeError, hasattr) - self.assertRaises(UnicodeError, hasattr, sys, unichr(sys.maxunicode)) + if have_unicode: + self.assertRaises(UnicodeError, hasattr, sys, unichr(sys.maxunicode)) def test_hash(self): hash(None) @@ -1101,7 +1103,8 @@ class BuiltinTest(unittest.TestCase): if have_unicode: self.assertEqual(ord(unichr(sys.maxunicode)), sys.maxunicode) self.assertRaises(TypeError, ord, 42) - self.assertRaises(TypeError, ord, unicode("12")) + if have_unicode: + self.assertRaises(TypeError, ord, unicode("12")) def test_pow(self): self.assertEqual(pow(0,0), 1) @@ -1494,11 +1497,17 @@ class TestSorted(unittest.TestCase): def test_inputtypes(self): s = 'abracadabra' - for T in [unicode, list, tuple]: + types = [list, tuple] + if have_unicode: + types.insert(0, unicode) + for T in types: self.assertEqual(sorted(s), sorted(T(s))) s = ''.join(dict.fromkeys(s).keys()) # unique letters only - for T in [unicode, set, frozenset, list, tuple, dict.fromkeys]: + types = [set, frozenset, list, tuple, dict.fromkeys] + if have_unicode: + types.insert(0, unicode) + for T in types: self.assertEqual(sorted(s), sorted(T(s))) def test_baddecorator(self): diff --git a/Lib/test/test_isinstance.py b/Lib/test/test_isinstance.py index 89ef200..25b0816 100644 --- a/Lib/test/test_isinstance.py +++ b/Lib/test/test_isinstance.py @@ -243,7 +243,8 @@ class TestIsInstanceIsSubclass(unittest.TestCase): self.assertEqual(True, issubclass(NewSuper, (NewChild, (NewSuper,)))) self.assertEqual(True, issubclass(int, (long, (float, int)))) - self.assertEqual(True, issubclass(str, (unicode, (Child, NewChild, basestring)))) + if test_support.have_unicode: + self.assertEqual(True, issubclass(str, (unicode, (Child, NewChild, basestring)))) def test_subclass_recursion_limit(self): # make sure that issubclass raises RuntimeError before the C stack is diff --git a/Lib/test/test_sys.py b/Lib/test/test_sys.py index e1bb8bf..b98c648 100644 --- a/Lib/test/test_sys.py +++ b/Lib/test/test_sys.py @@ -247,7 +247,8 @@ class SysModuleTest(unittest.TestCase): self.assert_(isinstance(sys.executable, basestring)) self.assert_(isinstance(sys.hexversion, int)) self.assert_(isinstance(sys.maxint, int)) - self.assert_(isinstance(sys.maxunicode, int)) + if test.test_support.have_unicode: + self.assert_(isinstance(sys.maxunicode, int)) self.assert_(isinstance(sys.platform, basestring)) self.assert_(isinstance(sys.prefix, basestring)) self.assert_(isinstance(sys.version, basestring)) diff --git a/Lib/test/test_textwrap.py b/Lib/test/test_textwrap.py index a21b7ce..68e4d6d 100644 --- a/Lib/test/test_textwrap.py +++ b/Lib/test/test_textwrap.py @@ -328,17 +328,18 @@ What a mess! self.check_wrap(text, 30, [" This is a sentence with", "leading whitespace."]) - def test_unicode(self): - # *Very* simple test of wrapping Unicode strings. I'm sure - # there's more to it than this, but let's at least make - # sure textwrap doesn't crash on Unicode input! - text = u"Hello there, how are you today?" - self.check_wrap(text, 50, [u"Hello there, how are you today?"]) - self.check_wrap(text, 20, [u"Hello there, how are", "you today?"]) - olines = self.wrapper.wrap(text) - assert isinstance(olines, list) and isinstance(olines[0], unicode) - otext = self.wrapper.fill(text) - assert isinstance(otext, unicode) + if test_support.have_unicode: + def test_unicode(self): + # *Very* simple test of wrapping Unicode strings. I'm sure + # there's more to it than this, but let's at least make + # sure textwrap doesn't crash on Unicode input! + text = u"Hello there, how are you today?" + self.check_wrap(text, 50, [u"Hello there, how are you today?"]) + self.check_wrap(text, 20, [u"Hello there, how are", "you today?"]) + olines = self.wrapper.wrap(text) + assert isinstance(olines, list) and isinstance(olines[0], unicode) + otext = self.wrapper.fill(text) + assert isinstance(otext, unicode) def test_split(self): # Ensure that the standard _split() method works as advertised -- cgit v0.12