diff options
author | Victor Stinner <vstinner@redhat.com> | 2019-06-03 03:51:43 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-06-03 03:51:43 +0200 |
commit | 0025350294959594e7f57aef4fc9579c77a0ed1c (patch) | |
tree | 8fb501ae17c33b278f4a9a2aa38a96b8b5f35164 /Lib/test/test_ssl.py | |
parent | 13136e83a637a9f1cfbada7e93097005296659b4 (diff) | |
download | cpython-git-0025350294959594e7f57aef4fc9579c77a0ed1c.tar.gz |
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_ssl.py')
-rw-r--r-- | Lib/test/test_ssl.py | 32 |
1 files changed, 18 insertions, 14 deletions
diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py index f368906c8a..a72d791321 100644 --- a/Lib/test/test_ssl.py +++ b/Lib/test/test_ssl.py @@ -4051,13 +4051,15 @@ class ThreadedTests(unittest.TestCase): 1/0 server_context.set_servername_callback(cb_raising) - with self.assertRaises(ssl.SSLError) as cm, \ - support.captured_stderr() as stderr: - stats = server_params_test(client_context, server_context, - chatty=False, - sni_name='supermessage') - self.assertEqual(cm.exception.reason, 'SSLV3_ALERT_HANDSHAKE_FAILURE') - self.assertIn("ZeroDivisionError", stderr.getvalue()) + with support.catch_unraisable_exception() as catch: + with self.assertRaises(ssl.SSLError) as cm: + stats = server_params_test(client_context, server_context, + chatty=False, + sni_name='supermessage') + + self.assertEqual(cm.exception.reason, + 'SSLV3_ALERT_HANDSHAKE_FAILURE') + self.assertEqual(catch.unraisable.exc_type, ZeroDivisionError) @needs_sni def test_sni_callback_wrong_return_type(self): @@ -4069,13 +4071,15 @@ class ThreadedTests(unittest.TestCase): return "foo" server_context.set_servername_callback(cb_wrong_return_type) - with self.assertRaises(ssl.SSLError) as cm, \ - support.captured_stderr() as stderr: - stats = server_params_test(client_context, server_context, - chatty=False, - sni_name='supermessage') - self.assertEqual(cm.exception.reason, 'TLSV1_ALERT_INTERNAL_ERROR') - self.assertIn("TypeError", stderr.getvalue()) + with support.catch_unraisable_exception() as catch: + with self.assertRaises(ssl.SSLError) as cm: + stats = server_params_test(client_context, server_context, + chatty=False, + sni_name='supermessage') + + + self.assertEqual(cm.exception.reason, 'TLSV1_ALERT_INTERNAL_ERROR') + self.assertEqual(catch.unraisable.exc_type, TypeError) def test_shared_ciphers(self): client_context, server_context, hostname = testing_context() |