diff options
author | Benjamin Peterson <benjamin@python.org> | 2009-09-18 21:14:55 (GMT) |
---|---|---|
committer | Benjamin Peterson <benjamin@python.org> | 2009-09-18 21:14:55 (GMT) |
commit | 332d7217509443c01ba5c3da41053786b49015fa (patch) | |
tree | cf45b0faef4cd93224f5c13d309c1844d2ebe356 /Lib/test | |
parent | 2985dbb52613f97b982987f980c765781c00e657 (diff) | |
download | cpython-332d7217509443c01ba5c3da41053786b49015fa.zip cpython-332d7217509443c01ba5c3da41053786b49015fa.tar.gz cpython-332d7217509443c01ba5c3da41053786b49015fa.tar.bz2 |
add keyword arguments support to str/unicode encode and decode #6300
Diffstat (limited to 'Lib/test')
-rw-r--r-- | Lib/test/test_str.py | 11 | ||||
-rw-r--r-- | Lib/test/test_unicode.py | 8 |
2 files changed, 19 insertions, 0 deletions
diff --git a/Lib/test/test_str.py b/Lib/test/test_str.py index c546154..fa86db4 100644 --- a/Lib/test/test_str.py +++ b/Lib/test/test_str.py @@ -401,6 +401,17 @@ class StrTest( def test_buffer_is_readonly(self): self.assertRaises(TypeError, sys.stdin.readinto, b"") + def test_encode_and_decode_kwargs(self): + self.assertEqual('abcde'.encode('ascii', 'replace'), + 'abcde'.encode('ascii', errors='replace')) + self.assertEqual('abcde'.encode('ascii', 'ignore'), + 'abcde'.encode(encoding='ascii', errors='ignore')) + self.assertEqual('Andr\202 x'.decode('ascii', 'ignore'), + 'Andr\202 x'.decode('ascii', errors='ignore')) + self.assertEqual('Andr\202 x'.decode('ascii', 'replace'), + 'Andr\202 x'.decode(encoding='ascii', errors='replace')) + + def test_main(): test_support.run_unittest(StrTest) diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py index 43830b2..2b269cc 100644 --- a/Lib/test/test_unicode.py +++ b/Lib/test/test_unicode.py @@ -593,12 +593,20 @@ class UnicodeTest( self.assertRaises(UnicodeError, u'Andr\202 x'.encode, 'ascii','strict') self.assertEqual(u'Andr\202 x'.encode('ascii','ignore'), "Andr x") self.assertEqual(u'Andr\202 x'.encode('ascii','replace'), "Andr? x") + self.assertEqual(u'Andr\202 x'.encode('ascii', 'replace'), + u'Andr\202 x'.encode('ascii', errors='replace')) + self.assertEqual(u'Andr\202 x'.encode('ascii', 'ignore'), + u'Andr\202 x'.encode(encoding='ascii', errors='ignore')) # Error handling (decoding) self.assertRaises(UnicodeError, unicode, 'Andr\202 x', 'ascii') self.assertRaises(UnicodeError, unicode, 'Andr\202 x', 'ascii','strict') self.assertEqual(unicode('Andr\202 x','ascii','ignore'), u"Andr x") self.assertEqual(unicode('Andr\202 x','ascii','replace'), u'Andr\uFFFD x') + self.assertEqual(u'abcde'.decode('ascii', 'ignore'), + u'abcde'.decode('ascii', errors='ignore')) + self.assertEqual(u'abcde'.decode('ascii', 'replace'), + u'abcde'.decode(encoding='ascii', errors='replace')) # Error handling (unknown character names) self.assertEqual("\\N{foo}xx".decode("unicode-escape", "ignore"), u"xx") |