diff options
Diffstat (limited to 'Lib/test/test_atexit.py')
| -rw-r--r-- | Lib/test/test_atexit.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/Lib/test/test_atexit.py b/Lib/test/test_atexit.py index 8a71036..5200af7 100644 --- a/Lib/test/test_atexit.py +++ b/Lib/test/test_atexit.py @@ -25,8 +25,9 @@ def raise2(): class TestCase(unittest.TestCase): def setUp(self): + self.save_stdout = sys.stdout + self.save_stderr = sys.stderr self.stream = io.StringIO() - self.save_stdout, self.save_stderr = sys.stderr, sys.stdout sys.stdout = sys.stderr = self.stream atexit._clear() @@ -65,6 +66,14 @@ class TestCase(unittest.TestCase): self.assertRaises(TypeError, atexit._run_exitfuncs) + def test_raise_unnormalized(self): + # Issue #10756: Make sure that an unnormalized exception is + # handled properly + atexit.register(lambda: 1 / 0) + + self.assertRaises(ZeroDivisionError, atexit._run_exitfuncs) + self.assertIn("ZeroDivisionError", self.stream.getvalue()) + def test_stress(self): a = [0] def inc(): |
