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 | |
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.
-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): |