[Python-checkins] Make asyncio stream sendfile fail on error (was hang) (GH-14025)

Miss Islington (bot) webhook-mailer at python.org
Wed Jun 12 15:10:52 EDT 2019


https://github.com/python/cpython/commit/3955dfff600dc8568e71ca19a48c72555043081f
commit: 3955dfff600dc8568e71ca19a48c72555043081f
branch: 3.8
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: GitHub <noreply at github.com>
date: 2019-06-12T12:10:44-07:00
summary:

Make asyncio stream sendfile fail on error (was hang) (GH-14025)

(cherry picked from commit 0d1942774a70d561dbaaa980742dd0927e8aa51a)

Co-authored-by: Andrew Svetlov <andrew.svetlov at gmail.com>

files:
M Lib/test/test_asyncio/test_streams.py

diff --git a/Lib/test/test_asyncio/test_streams.py b/Lib/test/test_asyncio/test_streams.py
index 74e385524dd5..a1c62ecee662 100644
--- a/Lib/test/test_asyncio/test_streams.py
+++ b/Lib/test/test_asyncio/test_streams.py
@@ -1656,22 +1656,25 @@ def test_sendfile(self):
 
         async def serve_callback(stream):
             data = await stream.readline()
-            self.assertEqual(data, b'begin\n')
+            await stream.write(b'ack-' + data)
             data = await stream.readline()
-            self.assertEqual(data, b'data\n')
+            await stream.write(b'ack-' + data)
             data = await stream.readline()
-            self.assertEqual(data, b'end\n')
-            await stream.write(b'done\n')
+            await stream.write(b'ack-' + data)
             await stream.close()
 
         async def do_connect(host, port):
             stream = await asyncio.connect(host, port)
             await stream.write(b'begin\n')
+            data = await stream.readline()
+            self.assertEqual(b'ack-begin\n', data)
             with open(support.TESTFN, 'rb') as fp:
                 await stream.sendfile(fp)
+            data = await stream.readline()
+            self.assertEqual(b'ack-data\n', data)
             await stream.write(b'end\n')
             data = await stream.readline()
-            self.assertEqual(data, b'done\n')
+            self.assertEqual(data, b'ack-end\n')
             await stream.close()
 
         async def test():



More information about the Python-checkins mailing list