From 038fac67c02d85df2d34f1092a51db31f758bb63 Mon Sep 17 00:00:00 2001 From: Serhiy Storchaka Date: Mon, 15 Sep 2014 11:35:06 +0300 Subject: [PATCH] Test re pickling for all protocols. --- Lib/test/test_re.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Lib/test/test_re.py b/Lib/test/test_re.py index f285c6bed2..88eafc99a5 100644 --- a/Lib/test/test_re.py +++ b/Lib/test/test_re.py @@ -560,12 +560,15 @@ class ReTests(unittest.TestCase): # old pickles expect the _compile() reconstructor in sre module import_module("sre", deprecated=True) from sre import _compile + # current pickle expects the _compile() reconstructor in re module + from re import _compile def pickle_test(self, pickle): oldpat = re.compile('a(?:b|(c|e){1,2}?|d)+?(.)') - s = pickle.dumps(oldpat) - newpat = pickle.loads(s) - self.assertEqual(oldpat, newpat) + for proto in range(pickle.HIGHEST_PROTOCOL + 1): + pickled = pickle.dumps(oldpat, proto) + newpat = pickle.loads(pickled) + self.assertEqual(newpat, oldpat) def test_constants(self): self.assertEqual(re.I, re.IGNORECASE) -- 2.50.1