[3.7] bpo-33789: Backport test_asyncio fixes from master (GH-7478)
* bpo-33789: test_asyncio: Fix ResourceWarning (GH-7460) * Close sockets and streams to fix ResourceWarning warnings * Catch also OSError to hide a traceback on an expected handshake error (cherry picked from commit0eba7c3913
) * bpo-33789, test_asyncio: Hide PendingDeprecationWarning (GH-7461) Hide PendingDeprecationWarning in test__register_task_3(). (cherry picked from commit7ed61e9431
) * bpo-32676, test_asyncio: Fix warning in test_error_in_call_soon() (GH-7462) Fix "<CoroWrapper ...> was never yielded from" warning in PyTask_PyFuture_Tests.test_error_in_call_soon() of test_asyncio.test_tasks. Close manually the coroutine on error. (cherry picked from commit9f04f0df6f
)
This commit is contained in:
parent
f38ace61a3
commit
3c417610ad
|
@ -150,9 +150,14 @@ class TestSocketWrapper:
|
|||
server_hostname=server_hostname,
|
||||
do_handshake_on_connect=False)
|
||||
|
||||
ssl_sock.do_handshake()
|
||||
try:
|
||||
ssl_sock.do_handshake()
|
||||
except:
|
||||
ssl_sock.close()
|
||||
raise
|
||||
finally:
|
||||
self.__sock.close()
|
||||
|
||||
self.__sock.close()
|
||||
self.__sock = ssl_sock
|
||||
|
||||
def __getattr__(self, name):
|
||||
|
|
|
@ -600,6 +600,8 @@ class BaseStartTLS(func_tests.FunctionalTestCaseMixin):
|
|||
server_side=True)
|
||||
except ssl.SSLError:
|
||||
pass
|
||||
except OSError:
|
||||
pass
|
||||
finally:
|
||||
sock.close()
|
||||
|
||||
|
@ -636,6 +638,7 @@ class BaseStartTLS(func_tests.FunctionalTestCaseMixin):
|
|||
except ssl.SSLError:
|
||||
pass
|
||||
finally:
|
||||
orig_sock.close()
|
||||
sock.close()
|
||||
|
||||
async def client(addr):
|
||||
|
@ -649,6 +652,8 @@ class BaseStartTLS(func_tests.FunctionalTestCaseMixin):
|
|||
writer.write(b'B')
|
||||
with self.assertRaises(ssl.SSLError):
|
||||
await reader.readline()
|
||||
|
||||
writer.close()
|
||||
return 'OK'
|
||||
|
||||
with self.tcp_server(server,
|
||||
|
|
|
@ -2178,7 +2178,11 @@ class BaseTaskTests:
|
|||
self.assertFalse(m_log.error.called)
|
||||
|
||||
with self.assertRaises(ValueError):
|
||||
self.new_task(self.loop, coro())
|
||||
gen = coro()
|
||||
try:
|
||||
self.new_task(self.loop, gen)
|
||||
finally:
|
||||
gen.close()
|
||||
|
||||
self.assertTrue(m_log.error.called)
|
||||
message = m_log.error.call_args[0][0]
|
||||
|
@ -2609,7 +2613,8 @@ class BaseTaskIntrospectionTests:
|
|||
self.assertEqual(asyncio.all_tasks(loop), set())
|
||||
self._register_task(task)
|
||||
self.assertEqual(asyncio.all_tasks(loop), set())
|
||||
self.assertEqual(asyncio.Task.all_tasks(loop), {task})
|
||||
with self.assertWarns(PendingDeprecationWarning):
|
||||
self.assertEqual(asyncio.Task.all_tasks(loop), {task})
|
||||
self._unregister_task(task)
|
||||
|
||||
def test__enter_task(self):
|
||||
|
|
Loading…
Reference in New Issue