diff options
| author | Victor Stinner <vstinner@redhat.com> | 2019-06-03 01:51:43 (GMT) |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-06-03 01:51:43 (GMT) |
| commit | 0025350294959594e7f57aef4fc9579c77a0ed1c (patch) | |
| tree | 8fb501ae17c33b278f4a9a2aa38a96b8b5f35164 /Lib/test/test_generators.py | |
| parent | 13136e83a637a9f1cfbada7e93097005296659b4 (diff) | |
| download | cpython-0025350294959594e7f57aef4fc9579c77a0ed1c.zip cpython-0025350294959594e7f57aef4fc9579c77a0ed1c.tar.gz cpython-0025350294959594e7f57aef4fc9579c77a0ed1c.tar.bz2 | |
bpo-37069: tests use catch_unraisable_exception() (GH-13762)
Modify test_coroutines, test_cprofile, test_generators, test_raise,
test_ssl and test_yield_from to use
support.catch_unraisable_exception() rather than
support.captured_stderr().
test_thread: remove test_save_exception_state_on_error() which is now
updated. test_unraisable_exception() checks that sys.unraisablehook()
is called to handle _thread.start_new_thread() exception.
test_cprofile now rely on unittest for test discovery: replace
support.run_unittest() with unittest.main().
Diffstat (limited to 'Lib/test/test_generators.py')
| -rw-r--r-- | Lib/test/test_generators.py | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/Lib/test/test_generators.py b/Lib/test/test_generators.py index 7f1472f..a34e4ec 100644 --- a/Lib/test/test_generators.py +++ b/Lib/test/test_generators.py @@ -2051,15 +2051,17 @@ RuntimeError: generator ignored GeneratorExit Our ill-behaved code should be invoked during GC: ->>> import sys, io ->>> old, sys.stderr = sys.stderr, io.StringIO() ->>> g = f() ->>> next(g) ->>> del g ->>> "RuntimeError: generator ignored GeneratorExit" in sys.stderr.getvalue() +>>> with support.catch_unraisable_exception() as cm: +... g = f() +... next(g) +... del g +... +... cm.unraisable.exc_type == RuntimeError +... "generator ignored GeneratorExit" in str(cm.unraisable.exc_value) +... cm.unraisable.exc_traceback is not None +True +True True ->>> sys.stderr = old - And errors thrown during closing should propagate: |
