summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_traceback.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/test/test_traceback.py')
-rw-r--r--Lib/test/test_traceback.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/Lib/test/test_traceback.py b/Lib/test/test_traceback.py
index 4742eb1..c87ce72 100644
--- a/Lib/test/test_traceback.py
+++ b/Lib/test/test_traceback.py
@@ -121,6 +121,31 @@ class TracebackCases(unittest.TestCase):
finally:
unlink(TESTFN)
+ def test_recursion_error_during_traceback(self):
+ code = textwrap.dedent("""
+ import sys
+ from weakref import ref
+
+ sys.setrecursionlimit(15)
+
+ def f():
+ ref(lambda: 0, [])
+ f()
+
+ try:
+ f()
+ except RecursionError:
+ pass
+ """)
+ try:
+ with open(TESTFN, 'w') as f:
+ f.write(code)
+
+ rc, _, _ = assert_python_ok(TESTFN)
+ self.assertEqual(rc, 0)
+ finally:
+ unlink(TESTFN)
+
def test_bad_indentation(self):
err = self.get_exception_format(self.syntax_error_bad_indentation,
IndentationError)