diff --git a/Lib/test/test_asyncio/functional.py b/Lib/test/test_asyncio/functional.py index fbec462c1dbfbd..386cfcdb9814f6 100644 --- a/Lib/test/test_asyncio/functional.py +++ b/Lib/test/test_asyncio/functional.py @@ -150,9 +150,14 @@ def start_tls(self, ssl_context, *, 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): diff --git a/Lib/test/test_asyncio/test_sslproto.py b/Lib/test/test_asyncio/test_sslproto.py index 2357130b5f9702..6903fae5f311d3 100644 --- a/Lib/test/test_asyncio/test_sslproto.py +++ b/Lib/test/test_asyncio/test_sslproto.py @@ -600,6 +600,8 @@ def server(sock): server_side=True) except ssl.SSLError: pass + except OSError: + pass finally: sock.close() @@ -636,6 +638,7 @@ def server(sock): except ssl.SSLError: pass finally: + orig_sock.close() sock.close() async def client(addr): @@ -649,6 +652,8 @@ async def client(addr): writer.write(b'B') with self.assertRaises(ssl.SSLError): await reader.readline() + + writer.close() return 'OK' with self.tcp_server(server, diff --git a/Lib/test/test_asyncio/test_tasks.py b/Lib/test/test_asyncio/test_tasks.py index d95c98f0a61795..67df3c0f48fde5 100644 --- a/Lib/test/test_asyncio/test_tasks.py +++ b/Lib/test/test_asyncio/test_tasks.py @@ -2178,7 +2178,11 @@ def coro(): 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 @@ def done(self): 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):