diff -r 89b106d298a9 Lib/test/test_unicode.py --- a/Lib/test/test_unicode.py Mon Jun 10 09:19:46 2013 -0700 +++ b/Lib/test/test_unicode.py Mon Jun 10 23:23:42 2013 +0300 @@ -566,9 +566,6 @@ self.assertEqual('\U0008fffe'.lower(), '\U0008fffe') self.assertEqual('\u2177'.lower(), '\u2177') - # See issue #18183 for this one. - '\U00010000\U00100000'.lower() - def test_casefold(self): self.assertEqual('hello'.casefold(), 'hello') self.assertEqual('hELlo'.casefold(), 'hello') @@ -686,6 +683,17 @@ self.assertRaises(TypeError, "abc".__contains__) + def test_issue18183(self): + '\U00010000\U00100000'.lower() + '\U00010000\U00100000'.casefold() + '\U00010000\U00100000'.upper() + '\U00010000\U00100000'.capitalize() + '\U00010000\U00100000'.title() + '\U00010000\U00100000'.swapcase() + '\U00100000'.center(3, '\U00010000') + '\U00100000'.ljust(3, '\U00010000') + '\U00100000'.rjust(3, '\U00010000') + def test_format(self): self.assertEqual(''.format(), '') self.assertEqual('a'.format(), 'a') @@ -2016,6 +2024,10 @@ # test "%c" self.assertEqual(PyUnicode_FromFormat(b'%c', c_int(0xabcd)), '\uabcd') self.assertEqual(PyUnicode_FromFormat(b'%c', c_int(0x10ffff)), '\U0010ffff') + # Issue #18183 + self.assertEqual(PyUnicode_FromFormat(b'%c%c', + c_int(0x10000), c_int(0x100000)), + '\U00010000\U00100000') # test "%" self.assertEqual(PyUnicode_FromFormat(b'%'), '%')