diff options
author | Guido van Rossum <guido@python.org> | 2000-11-29 12:13:59 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 2000-11-29 12:13:59 (GMT) |
commit | 15ffc71c0f811d4c3053efb0480d70502ec35c99 (patch) | |
tree | 5c74d85317e8bad79c942775c182f909154cbd43 /Lib/test | |
parent | b5ec5e4b41554250ec3381f7193ee4d1bbd0eab2 (diff) | |
download | cpython-15ffc71c0f811d4c3053efb0480d70502ec35c99.zip cpython-15ffc71c0f811d4c3053efb0480d70502ec35c99.tar.gz cpython-15ffc71c0f811d4c3053efb0480d70502ec35c99.tar.bz2 |
Slight improvement to Unicode test suite, inspired by patch #102563:
also test join method of 8-bit strings.
Also changed the test() function to (1) compare the types of the
expected and actual result, and (2) in verbose mode, print the repr()
of the output.
Diffstat (limited to 'Lib/test')
-rw-r--r-- | Lib/test/test_unicode.py | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py index 74e0cf3..5f79101 100644 --- a/Lib/test/test_unicode.py +++ b/Lib/test/test_unicode.py @@ -10,7 +10,7 @@ import sys def test(method, input, output, *args): if verbose: - print '%s.%s%s =? %s... ' % (repr(input), method, args, output), + print '%s.%s%s =? %s... ' % (repr(input), method, args, repr(output)), try: f = getattr(input, method) value = apply(f, args) @@ -19,7 +19,7 @@ def test(method, input, output, *args): exc = sys.exc_info()[:2] else: exc = None - if value != output: + if value != output or type(value) is not type(output): if verbose: print 'no' print '*',f, `input`, `output`, `value` @@ -70,19 +70,21 @@ test('split', u'a b c d ', [u'a', u'b', u'c', u'd']) # join now works with any sequence type class Sequence: - def __init__(self): self.seq = 'wxyz' + def __init__(self, seq): self.seq = seq def __len__(self): return len(self.seq) def __getitem__(self, i): return self.seq[i] test('join', u' ', u'a b c d', [u'a', u'b', u'c', u'd']) +test('join', u' ', u'a b c d', ['a', 'b', u'c', u'd']) test('join', u'', u'abcd', (u'a', u'b', u'c', u'd')) -test('join', u' ', u'w x y z', Sequence()) +test('join', u' ', u'w x y z', Sequence('wxyz')) test('join', u' ', TypeError, 7) - -class BadSeq(Sequence): - def __init__(self): self.seq = [7, u'hello', 123L] - -test('join', u' ', TypeError, BadSeq()) +test('join', u' ', TypeError, Sequence([7, u'hello', 123L])) +test('join', ' ', u'a b c d', [u'a', u'b', u'c', u'd']) +test('join', ' ', u'a b c d', ['a', 'b', u'c', u'd']) +test('join', '', u'abcd', (u'a', u'b', u'c', u'd')) +test('join', ' ', u'w x y z', Sequence(u'wxyz')) +test('join', ' ', TypeError, 7) result = u'' for i in range(10): |