From: Benjamin Peterson Date: Sat, 13 Aug 2011 04:35:34 +0000 (-0500) Subject: normalization is different between unicode builds, so use a new non-BMP char and... X-Git-Tag: v3.2.2rc1~5 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=be66287e2055cbf7bf507b0fdc76c1cd738d880d;p=thirdparty%2FPython%2Fcpython.git normalization is different between unicode builds, so use a new non-BMP char and add normalization test --- diff --git a/Lib/test/test_pep3131.py b/Lib/test/test_pep3131.py index ed7558a7eec7..df0f64d86aca 100644 --- a/Lib/test/test_pep3131.py +++ b/Lib/test/test_pep3131.py @@ -1,4 +1,5 @@ import unittest +import sys from test import support class PEP3131Test(unittest.TestCase): @@ -8,12 +9,20 @@ class PEP3131Test(unittest.TestCase): ä = 1 µ = 2 # this is a compatibility character 蟒 = 3 - 𝔘𝔫𝔦𝔠𝔬𝔡𝔢 = 4 + x󠄀 = 4 self.assertEqual(getattr(T, "\xe4"), 1) self.assertEqual(getattr(T, "\u03bc"), 2) self.assertEqual(getattr(T, '\u87d2'), 3) - v = getattr(T, "\U0001d518\U0001d52b\U0001d526\U0001d520\U0001d52c\U0001d521\U0001d522") - self.assertEqual(v, 4) + self.assertEqual(getattr(T, 'x\U000E0100'), 4) + + def test_non_bmp_normalized(self): + 𝔘𝔫𝔦𝔠𝔬𝔡𝔢 = 1 + # On wide builds, this is normalized, but on narrow ones it is not. See + # #12746. + try: + self.assertIn("𝔘𝔫𝔦𝔠𝔬𝔡𝔢", dir()) + except AssertionError: + raise unittest.case._ExpectedFailure(sys.exc_info()) def test_invalid(self): try: