summaryrefslogtreecommitdiff
path: root/Lib/test/test_difflib.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/test/test_difflib.py')
-rw-r--r--Lib/test/test_difflib.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/Lib/test/test_difflib.py b/Lib/test/test_difflib.py
index c0bf66ef46..52feef0768 100644
--- a/Lib/test/test_difflib.py
+++ b/Lib/test/test_difflib.py
@@ -2,6 +2,7 @@ import difflib
from test.test_support import run_unittest, findfile
import unittest
import doctest
+import sys
class TestSFbugs(unittest.TestCase):
@@ -143,6 +144,14 @@ class TestSFpatches(unittest.TestCase):
self.assertEqual(actual,expect)
+ def test_recursion_limit(self):
+ # Check if the problem described in patch #1413711 exists.
+ limit = sys.getrecursionlimit()
+ old = [(i%2 and "K:%d" or "V:A:%d") % i for i in range(limit*2)]
+ new = [(i%2 and "K:%d" or "V:B:%d") % i for i in range(limit*2)]
+ difflib.SequenceMatcher(None, old, new).get_opcodes()
+
+
Doctests = doctest.DocTestSuite(difflib)
run_unittest(TestSFpatches, TestSFbugs, Doctests)