mirror of
https://github.com/python/cpython.git
synced 2025-08-31 05:58:33 +00:00
Merged revisions 80382 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r80382 | victor.stinner | 2010-04-22 21:38:16 +0200 (jeu., 22 avril 2010) | 3 lines Issue #8092: Fix PyUnicode_EncodeUTF8() to support error handler producing unicode string (eg. backslashreplace) ........
This commit is contained in:
parent
754b98c9b4
commit
158701d886
3 changed files with 97 additions and 51 deletions
|
@ -571,6 +571,16 @@ class UTF8Test(ReadTest):
|
|||
def test_lone_surrogates(self):
|
||||
self.assertRaises(UnicodeEncodeError, "\ud800".encode, "utf-8")
|
||||
self.assertRaises(UnicodeDecodeError, b"\xed\xa0\x80".decode, "utf-8")
|
||||
self.assertEqual("[\uDC80]".encode("utf-8", "backslashreplace"),
|
||||
b'[\\udc80]')
|
||||
self.assertEqual("[\uDC80]".encode("utf-8", "xmlcharrefreplace"),
|
||||
b'[�]')
|
||||
self.assertEqual("[\uDC80]".encode("utf-8", "surrogateescape"),
|
||||
b'[\x80]')
|
||||
self.assertEqual("[\uDC80]".encode("utf-8", "ignore"),
|
||||
b'[]')
|
||||
self.assertEqual("[\uDC80]".encode("utf-8", "replace"),
|
||||
b'[?]')
|
||||
|
||||
def test_surrogatepass_handler(self):
|
||||
self.assertEquals("abc\ud800def".encode("utf-8", "surrogatepass"),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue