From: Victor Stinner Date: Tue, 6 Jan 2015 00:22:45 +0000 (+0100) Subject: Issue #23140, asyncio: Simplify the unit test X-Git-Tag: v3.4.3rc1~172 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=212994e4e2ed023267ebfceeae541c8aa4257806;p=python Issue #23140, asyncio: Simplify the unit test --- diff --git a/Lib/test/test_asyncio/test_subprocess.py b/Lib/test/test_asyncio/test_subprocess.py index dfe23be24a..1fe9095d16 100644 --- a/Lib/test/test_asyncio/test_subprocess.py +++ b/Lib/test/test_asyncio/test_subprocess.py @@ -226,11 +226,6 @@ class SubprocessMixin: def test_cancel_process_wait(self): # Issue #23140: cancel Process.wait() - @asyncio.coroutine - def wait_proc(proc, event): - event.set() - yield from proc.wait() - @asyncio.coroutine def cancel_wait(): proc = yield from asyncio.create_subprocess_exec( @@ -238,9 +233,12 @@ class SubprocessMixin: loop=self.loop) # Create an internal future waiting on the process exit - event = asyncio.Event(loop=self.loop) - task = self.loop.create_task(wait_proc(proc, event)) - yield from event.wait() + task = self.loop.create_task(proc.wait()) + self.loop.call_soon(task.cancel) + try: + yield from task + except asyncio.CancelledError: + pass # Cancel the future task.cancel()