summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuido van Rossum <guido@python.org>2000-11-29 12:13:59 (GMT)
committerGuido van Rossum <guido@python.org>2000-11-29 12:13:59 (GMT)
commit15ffc71c0f811d4c3053efb0480d70502ec35c99 (patch)
tree5c74d85317e8bad79c942775c182f909154cbd43
parentb5ec5e4b41554250ec3381f7193ee4d1bbd0eab2 (diff)
downloadcpython-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.py20
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):