summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_unicode.py
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 /Lib/test/test_unicode.py
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.
Diffstat (limited to 'Lib/test/test_unicode.py')
-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):