From 1f1888ec1e7c7d4e69084cda9425cf0a456e30c3 Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Mon, 3 Dec 2012 20:53:12 +0100 Subject: [PATCH] Split the bigmem re test in two separate tests with different memory requirements. --- Lib/test/test_re.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/Lib/test/test_re.py b/Lib/test/test_re.py index 438ef26fdb0..96a6bcedc8e 100644 --- a/Lib/test/test_re.py +++ b/Lib/test/test_re.py @@ -7,6 +7,9 @@ import string import traceback from weakref import proxy +from test.test_bigmem import character_size + + # Misc tests from Tim Peters' re.doc # WARNING: Don't change details in these tests if you don't know @@ -854,10 +857,17 @@ class ReTests(unittest.TestCase): # Test behaviour when not given a string or pattern as parameter self.assertRaises(TypeError, re.compile, 0) + @bigmemtest(size=_2G, memuse=character_size) + def test_large_search(self, size): + # Issue #10182: indices were 32-bit-truncated. + s = 'a' * size + m = re.search('$', s) + self.assertIsNotNone(m) + # The huge memuse is because of re.sub() using a list and a join() # to create the replacement result. - @bigmemtest(size=_2G, memuse=20) - def test_large(self, size): + @bigmemtest(size=_2G, memuse=16 + 2 * character_size) + def test_large_subn(self, size): # Issue #10182: indices were 32-bit-truncated. s = 'a' * size m = re.search('$', s)