From 8534d53333e4e918be82b041754ecd89af519e5b Mon Sep 17 00:00:00 2001 From: Ned Deily Date: Tue, 27 Mar 2018 17:16:49 -0400 Subject: bpo-32517: fix test_read_pty_output() hangs on macOS 10.13.2+ (GH-6037) (GH-6113) test_asyncio hangs indefinitely on macOS 10.13.2+ on `read_pty_output()` using the KqueueSelector. Closing `proto.transport` (as is done in `write_pty_output()`) seems to fix it. (cherry picked from commit 12f74d8608c15cacd9d5786524e2be9ca36f007e) Co-authored-by: Nathan Henrie Also, re-enable test_read_pty_output on macOS. --- Lib/test/test_asyncio/test_events.py | 2 +- Misc/ACKS | 1 + Misc/NEWS.d/next/Tests/2018-03-09-07-05-12.bpo-32517.ugc1iW.rst | 2 ++ 3 files changed, 4 insertions(+), 1 deletion(-) create mode 100644 Misc/NEWS.d/next/Tests/2018-03-09-07-05-12.bpo-32517.ugc1iW.rst diff --git a/Lib/test/test_asyncio/test_events.py b/Lib/test/test_asyncio/test_events.py index 6accbda..66c77b9 100644 --- a/Lib/test/test_asyncio/test_events.py +++ b/Lib/test/test_asyncio/test_events.py @@ -1475,7 +1475,6 @@ class EventLoopTestsMixin: @unittest.skipUnless(sys.platform != 'win32', "Don't support pipes for Windows") - @unittest.skipIf(sys.platform == 'darwin', 'test hangs on MacOS') def test_read_pty_output(self): proto = MyReadPipeProto(loop=self.loop) @@ -1502,6 +1501,7 @@ class EventLoopTestsMixin: self.assertEqual(5, proto.nbytes) os.close(slave) + proto.transport.close() self.loop.run_until_complete(proto.done) self.assertEqual( ['INITIAL', 'CONNECTED', 'EOF', 'CLOSED'], proto.state) diff --git a/Misc/ACKS b/Misc/ACKS index 05932a8..c7bdbd4 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -631,6 +631,7 @@ Thomas Heller Malte Helmert Lance Finn Helsten Jonathan Hendry +Nathan Henrie Michael Henry James Henstridge Kasun Herath diff --git a/Misc/NEWS.d/next/Tests/2018-03-09-07-05-12.bpo-32517.ugc1iW.rst b/Misc/NEWS.d/next/Tests/2018-03-09-07-05-12.bpo-32517.ugc1iW.rst new file mode 100644 index 0000000..43f148f --- /dev/null +++ b/Misc/NEWS.d/next/Tests/2018-03-09-07-05-12.bpo-32517.ugc1iW.rst @@ -0,0 +1,2 @@ +Fix failing ``test_asyncio`` on macOS 10.12.2+ due to transport of +``KqueueSelector`` loop was not being closed. -- cgit v0.12