Port test_charmapcodec to PyUnit. From SF patch #662807

This commit is contained in:
Walter Dörwald 2003-02-14 11:21:53 +00:00
parent 002a5de202
commit bb2734ab65
2 changed files with 29 additions and 41 deletions

View File

@ -1,16 +0,0 @@
test_charmapcodec
abc == abc: OK
abcdef == abcdef: OK
defabc == defabc: OK
dabcf == dabcf: OK
dabcfabc == dabcfabc: OK
abc == abc: OK
abcdef == abcdef: OK
defabc == defabc: OK
dabcf == dabcf: OK
dabcfabc == dabcfabc: OK
def == def: OK
def == def: OK
df == df: OK
df == df: OK
\001 maps to undefined: OK

View File

@ -9,35 +9,39 @@ Written by Marc-Andre Lemburg (mal@lemburg.com).
"""#" """#"
def check(a, b): import test.test_support, unittest
if a != b:
print '*** check failed: %s != %s' % (repr(a), repr(b))
else:
print '%s == %s: OK' % (a, b)
# test codec's full path name (see test/testcodec.py) # test codec's full path name (see test/testcodec.py)
codecname = 'test.testcodec' codecname = 'test.testcodec'
check(unicode('abc', codecname), u'abc') class CharmapCodecTest(unittest.TestCase):
check(unicode('xdef', codecname), u'abcdef') def test_constructorx(self):
check(unicode('defx', codecname), u'defabc') self.assertEquals(unicode('abc', codecname), u'abc')
check(unicode('dxf', codecname), u'dabcf') self.assertEquals(unicode('xdef', codecname), u'abcdef')
check(unicode('dxfx', codecname), u'dabcfabc') self.assertEquals(unicode('defx', codecname), u'defabc')
self.assertEquals(unicode('dxf', codecname), u'dabcf')
self.assertEquals(unicode('dxfx', codecname), u'dabcfabc')
check(u'abc'.encode(codecname), 'abc') def test_encodex(self):
check(u'xdef'.encode(codecname), 'abcdef') self.assertEquals(u'abc'.encode(codecname), 'abc')
check(u'defx'.encode(codecname), 'defabc') self.assertEquals(u'xdef'.encode(codecname), 'abcdef')
check(u'dxf'.encode(codecname), 'dabcf') self.assertEquals(u'defx'.encode(codecname), 'defabc')
check(u'dxfx'.encode(codecname), 'dabcfabc') self.assertEquals(u'dxf'.encode(codecname), 'dabcf')
self.assertEquals(u'dxfx'.encode(codecname), 'dabcfabc')
check(unicode('ydef', codecname), u'def') def test_constructory(self):
check(unicode('defy', codecname), u'def') self.assertEquals(unicode('ydef', codecname), u'def')
check(unicode('dyf', codecname), u'df') self.assertEquals(unicode('defy', codecname), u'def')
check(unicode('dyfy', codecname), u'df') self.assertEquals(unicode('dyf', codecname), u'df')
self.assertEquals(unicode('dyfy', codecname), u'df')
try: def test_maptoundefined(self):
unicode('abc\001', codecname) self.assertRaises(UnicodeError, unicode, 'abc\001', codecname)
except UnicodeError:
print '\\001 maps to undefined: OK' def test_main():
else: suite = unittest.TestSuite()
print '*** check failed: \\001 does not map to undefined' suite.addTest(unittest.makeSuite(CharmapCodecTest))
test.test_support.run_suite(suite)
if __name__ == "__main__":
test_main()