summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2016-03-14 16:10:36 (GMT)
committerVictor Stinner <victor.stinner@gmail.com>2016-03-14 16:10:36 (GMT)
commita1bc28a91de9bfe88fc16cab400cd50dd1a27467 (patch)
treecfd4690cb32236c8f01c40996ca37f5bb35b9f6a /Lib
parentd222653f8f39733f65ea93bfeab7748185ba4ea8 (diff)
downloadcpython-a1bc28a91de9bfe88fc16cab400cd50dd1a27467.zip
cpython-a1bc28a91de9bfe88fc16cab400cd50dd1a27467.tar.gz
cpython-a1bc28a91de9bfe88fc16cab400cd50dd1a27467.tar.bz2
Issue #26516: Fix test_capi on Windows
Pointers are formatted differently.
Diffstat (limited to 'Lib')
-rw-r--r--Lib/test/test_capi.py12
1 files changed, 8 insertions, 4 deletions
diff --git a/Lib/test/test_capi.py b/Lib/test/test_capi.py
index d56d702..6a066f1 100644
--- a/Lib/test/test_capi.py
+++ b/Lib/test/test_capi.py
@@ -559,6 +559,8 @@ class Test_testcapi(unittest.TestCase):
class MallocTests(unittest.TestCase):
ENV = 'debug'
+ # '0x04c06e0' or '04C06E0'
+ PTR_REGEX = r'(?:0x[0-9a-f]+|[0-9A-F]+)'
def check(self, code):
with support.SuppressCrashReport():
@@ -568,10 +570,10 @@ class MallocTests(unittest.TestCase):
def test_buffer_overflow(self):
out = self.check('import _testcapi; _testcapi.pymem_buffer_overflow()')
- regex = (r"Debug memory block at address p=0x[0-9a-f]+: API 'm'\n"
+ regex = (r"Debug memory block at address p={ptr}: API 'm'\n"
r" 16 bytes originally requested\n"
r" The 7 pad bytes at p-7 are FORBIDDENBYTE, as expected.\n"
- r" The 8 pad bytes at tail=0x[0-9a-f]+ are not all FORBIDDENBYTE \(0x[0-9a-f]{2}\):\n"
+ r" The 8 pad bytes at tail={ptr} are not all FORBIDDENBYTE \(0x[0-9a-f]{{2}}\):\n"
r" at tail\+0: 0x78 \*\*\* OUCH\n"
r" at tail\+1: 0xfb\n"
r" at tail\+2: 0xfb\n"
@@ -583,17 +585,19 @@ class MallocTests(unittest.TestCase):
r" The block was made by call #[0-9]+ to debug malloc/realloc.\n"
r" Data at p: cb cb cb cb cb cb cb cb cb cb cb cb cb cb cb cb\n"
r"Fatal Python error: bad trailing pad byte")
+ regex = regex.format(ptr=self.PTR_REGEX)
self.assertRegex(out, regex)
def test_api_misuse(self):
out = self.check('import _testcapi; _testcapi.pymem_api_misuse()')
- regex = (r"Debug memory block at address p=0x[0-9a-f]+: API 'm'\n"
+ regex = (r"Debug memory block at address p={ptr}: API 'm'\n"
r" 16 bytes originally requested\n"
r" The 7 pad bytes at p-7 are FORBIDDENBYTE, as expected.\n"
- r" The 8 pad bytes at tail=0x[0-9a-f]+ are FORBIDDENBYTE, as expected.\n"
+ r" The 8 pad bytes at tail={ptr} are FORBIDDENBYTE, as expected.\n"
r" The block was made by call #[0-9]+ to debug malloc/realloc.\n"
r" Data at p: .*\n"
r"Fatal Python error: bad ID: Allocated using API 'm', verified using API 'r'\n")
+ regex = regex.format(ptr=self.PTR_REGEX)
self.assertRegex(out, regex)