]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-93357: Port test cases to IsolatedAsyncioTestCase, part 2 (#97896)
authorOleg Iarygin <oleg@arhadthedev.net>
Wed, 5 Oct 2022 14:31:43 +0000 (18:31 +0400)
committerGitHub <noreply@github.com>
Wed, 5 Oct 2022 14:31:43 +0000 (07:31 -0700)
This fixes the buildbots.

Lib/test/test_asyncio/test_streams.py

index d1f8aef4bb9cbdadabe2d7c8ae3dcc12691e3c58..61d5e984dfbfbbb57fecbbb39170eb9e29c28cd1 100644 (file)
@@ -941,34 +941,32 @@ os.close(fd)
                 self.assertEqual(str(e), str(e2))
                 self.assertEqual(e.consumed, e2.consumed)
 
+class NewStreamTests2(unittest.IsolatedAsyncioTestCase):
     async def test_wait_closed_on_close(self):
-        async with test_utils.run_test_server() as httpd:
-            rd, wr = self.loop.run_until_complete(
-                asyncio.open_connection(*httpd.address))
+        with test_utils.run_test_server() as httpd:
+            rd, wr = await asyncio.open_connection(*httpd.address)
 
             wr.write(b'GET / HTTP/1.0\r\n\r\n')
             data = await rd.readline()
             self.assertEqual(data, b'HTTP/1.0 200 OK\r\n')
-            await rd.read()
+            data = await rd.read()
             self.assertTrue(data.endswith(b'\r\n\r\nTest message'))
             self.assertFalse(wr.is_closing())
             wr.close()
             self.assertTrue(wr.is_closing())
             await wr.wait_closed()
 
-    def test_wait_closed_on_close_with_unread_data(self):
+    async def test_wait_closed_on_close_with_unread_data(self):
         with test_utils.run_test_server() as httpd:
-            rd, wr = self.loop.run_until_complete(
-                asyncio.open_connection(*httpd.address))
+            rd, wr = await asyncio.open_connection(*httpd.address)
 
             wr.write(b'GET / HTTP/1.0\r\n\r\n')
-            f = rd.readline()
-            data = self.loop.run_until_complete(f)
+            data = await rd.readline()
             self.assertEqual(data, b'HTTP/1.0 200 OK\r\n')
             wr.close()
-            self.loop.run_until_complete(wr.wait_closed())
+            await wr.wait_closed()
 
-    def test_async_writer_api(self):
+    async def test_async_writer_api(self):
         async def inner(httpd):
             rd, wr = await asyncio.open_connection(*httpd.address)
 
@@ -980,15 +978,10 @@ os.close(fd)
             wr.close()
             await wr.wait_closed()
 
-        messages = []
-        self.loop.set_exception_handler(lambda loop, ctx: messages.append(ctx))
-
         with test_utils.run_test_server() as httpd:
-            self.loop.run_until_complete(inner(httpd))
-
-        self.assertEqual(messages, [])
+            await inner(httpd)
 
-    def test_async_writer_api_exception_after_close(self):
+    async def test_async_writer_api_exception_after_close(self):
         async def inner(httpd):
             rd, wr = await asyncio.open_connection(*httpd.address)
 
@@ -1002,24 +995,17 @@ os.close(fd)
                 wr.write(b'data')
                 await wr.drain()
 
-        messages = []
-        self.loop.set_exception_handler(lambda loop, ctx: messages.append(ctx))
-
         with test_utils.run_test_server() as httpd:
-            self.loop.run_until_complete(inner(httpd))
-
-        self.assertEqual(messages, [])
+            await inner(httpd)
 
     async def test_eof_feed_when_closing_writer(self):
         # See http://bugs.python.org/issue35065
-        async with test_utils.run_test_server() as httpd:
+        with test_utils.run_test_server() as httpd:
             rd, wr = await asyncio.open_connection(*httpd.address)
             wr.close()
-            f = wr.wait_closed()
-            self.loop.run_until_complete(f)
+            await wr.wait_closed()
             self.assertTrue(rd.at_eof())
-            f = rd.read()
-            data = self.loop.run_until_complete(f)
+            data = await rd.read()
             self.assertEqual(data, b'')