]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Fix check for run_in_executor on closed loop. (#4996)
authorAndrew Svetlov <andrew.svetlov@gmail.com>
Sat, 23 Dec 2017 21:03:27 +0000 (23:03 +0200)
committerGitHub <noreply@github.com>
Sat, 23 Dec 2017 21:03:27 +0000 (23:03 +0200)
Lib/test/test_asyncio/test_events.py

index e5e41fc1a873e3dfac8bb020f406563150605cde..79e8d79e6b14b234d0e9b2984cc7e9fbb1191f81 100644 (file)
@@ -1842,14 +1842,18 @@ class EventLoopTestsMixin:
             self.loop.call_later(1.0, func)
         with self.assertRaises(RuntimeError):
             self.loop.call_at(self.loop.time() + .0, func)
-        with self.assertRaises(RuntimeError):
-            self.loop.run_until_complete(
-                self.loop.run_in_executor(None, func))
         with self.assertRaises(RuntimeError):
             self.loop.create_task(coro)
         with self.assertRaises(RuntimeError):
             self.loop.add_signal_handler(signal.SIGTERM, func)
 
+        # run_in_executor test is tricky: the method is a coroutine,
+        # but run_until_complete cannot be called on closed loop.
+        # Thus iterate once explicitly.
+        with self.assertRaises(RuntimeError):
+            it = self.loop.run_in_executor(None, func).__await__()
+            next(it)
+
 
 class SubprocessTestsMixin: