From a54a69989eade3589459d15def53b3c4f21b7551 Mon Sep 17 00:00:00 2001 From: Jelle Zijlstra Date: Fri, 7 Oct 2022 15:39:53 -0700 Subject: [PATCH] gh-94808: Fix regex on exotic platforms (#98036) The test failed on a buildbot because the pointer was only 7 hex characters. To be safe, I bumped it down to 3: 4 in case we have 32-bit platforms, and 3 in case the pointer is very small. --- Lib/test/test_unicode.py | 4 ++-- Makefile.pre.in | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Lib/test/test_unicode.py b/Lib/test/test_unicode.py index b9ee9d30318c46..5b816574f2c335 100644 --- a/Lib/test/test_unicode.py +++ b/Lib/test/test_unicode.py @@ -2811,7 +2811,7 @@ def check_format(expected, format, *args): # We cannot test the exact result, # because it returns a hex representation of a C pointer, # which is going to be different each time. But, we can test the format. - p_format_regex = r'^0x[a-zA-Z0-9]{8,}$' + p_format_regex = r'^0x[a-zA-Z0-9]{3,}$' p_format1 = PyUnicode_FromFormat(b'%p', 'abc') self.assertIsInstance(p_format1, str) self.assertRegex(p_format1, p_format_regex) @@ -2819,7 +2819,7 @@ def check_format(expected, format, *args): p_format2 = PyUnicode_FromFormat(b'%p %p', '123456', b'xyz') self.assertIsInstance(p_format2, str) self.assertRegex(p_format2, - r'0x[a-zA-Z0-9]{8,} 0x[a-zA-Z0-9]{8,}') + r'0x[a-zA-Z0-9]{3,} 0x[a-zA-Z0-9]{3,}') # Extra args are ignored: p_format3 = PyUnicode_FromFormat(b'%p', '123456', None, b'xyz') diff --git a/Makefile.pre.in b/Makefile.pre.in index 11118354f15def..4602db69d15af9 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -2038,6 +2038,7 @@ TESTSUBDIRS= distutils/tests \ test/test_zoneinfo test/test_zoneinfo/data \ test/test_unittest test/test_unittest/testmock \ test/tracedmodules \ + test/typinganndata \ test/xmltestdata test/xmltestdata/c14n-20 \ test/ziptestdata