|
|
|
@ -1,6 +1,7 @@ |
|
|
|
"""Tests for events.py.""" |
|
|
|
|
|
|
|
import collections.abc |
|
|
|
import concurrent.futures |
|
|
|
import functools |
|
|
|
import gc |
|
|
|
import io |
|
|
|
@ -57,6 +58,15 @@ def osx_tiger(): |
|
|
|
return version < (10, 5) |
|
|
|
|
|
|
|
|
|
|
|
def _test_get_event_loop_new_process__sub_proc(): |
|
|
|
async def doit(): |
|
|
|
return 'hello' |
|
|
|
|
|
|
|
loop = asyncio.new_event_loop() |
|
|
|
asyncio.set_event_loop(loop) |
|
|
|
return loop.run_until_complete(doit()) |
|
|
|
|
|
|
|
|
|
|
|
ONLYCERT = data_file('ssl_cert.pem') |
|
|
|
ONLYKEY = data_file('ssl_key.pem') |
|
|
|
SIGNED_CERTFILE = data_file('keycert3.pem') |
|
|
|
@ -2181,6 +2191,18 @@ else: |
|
|
|
asyncio.set_child_watcher(None) |
|
|
|
super().tearDown() |
|
|
|
|
|
|
|
def test_get_event_loop_new_process(self): |
|
|
|
async def main(): |
|
|
|
pool = concurrent.futures.ProcessPoolExecutor() |
|
|
|
return await self.loop.run_in_executor( |
|
|
|
pool, _test_get_event_loop_new_process__sub_proc) |
|
|
|
|
|
|
|
self.unpatch_get_running_loop() |
|
|
|
|
|
|
|
self.assertEqual( |
|
|
|
self.loop.run_until_complete(main()), |
|
|
|
'hello') |
|
|
|
|
|
|
|
if hasattr(selectors, 'KqueueSelector'): |
|
|
|
class KqueueEventLoopTests(UnixEventLoopTestsMixin, |
|
|
|
SubprocessTestsMixin, |
|
|
|
|