diff options
-rw-r--r-- | tests/run/asyncio_generators.srctree | 56 | ||||
-rw-r--r-- | tests/run/py35_asyncio_async_def.srctree | 2 |
2 files changed, 36 insertions, 22 deletions
diff --git a/tests/run/asyncio_generators.srctree b/tests/run/asyncio_generators.srctree index d49b777f4..2a01a065b 100644 --- a/tests/run/asyncio_generators.srctree +++ b/tests/run/asyncio_generators.srctree @@ -24,13 +24,15 @@ setup( import from_asyncio_import import asyncio +import sys +from contextlib import closing +new_event_loop = asyncio.new_event_loop if sys.version_info >= (3, 5) else asyncio.get_event_loop def runloop(task): - loop = asyncio.get_event_loop() - result = loop.run_until_complete(task()) - assert 3 == result, result + with closing(new_event_loop()) as loop: + result = loop.run_until_complete(task()) + assert 3 == result, result -import sys if sys.version_info < (3, 7): runloop(from_asyncio_import.wait3) @@ -39,13 +41,15 @@ if sys.version_info < (3, 7): import import_asyncio import asyncio +import sys +from contextlib import closing +new_event_loop = asyncio.new_event_loop if sys.version_info >= (3, 5) else asyncio.get_event_loop def runloop(task): - loop = asyncio.get_event_loop() - result = loop.run_until_complete(task()) - assert 3 == result, result + with closing(new_event_loop()) as loop: + result = loop.run_until_complete(task()) + assert 3 == result, result -import sys if sys.version_info < (3, 7): runloop(import_asyncio.wait3) @@ -59,11 +63,12 @@ ASYNCIO_SUPPORTS_COROUTINE = sys.version_info[:2] >= (3, 5) if ASYNCIO_SUPPORTS_COROUTINE: import async_def import asyncio + from contextlib import closing def runloop(task): - loop = asyncio.get_event_loop() - result = loop.run_until_complete(task()) - assert 3 == result, result + with closing(asyncio.new_event_loop()) as loop: + result = loop.run_until_complete(task()) + assert 3 == result, result runloop(async_def.wait3) @@ -77,12 +82,13 @@ ASYNCIO_SUPPORTS_COROUTINE = sys.version_info[:2] >= (3, 5) if ASYNCIO_SUPPORTS_COROUTINE: from async_def_future import await_future import asyncio + from contextlib import closing def runloop(): - loop = asyncio.get_event_loop() - task, events, expected = await_future(loop) - result = loop.run_until_complete(task()) - assert events == expected, 'expected %s, got %s' % (expected, events) + with closing(asyncio.new_event_loop()) as loop: + task, events, expected = await_future(loop) + result = loop.run_until_complete(task()) + assert events == expected, 'expected %s, got %s' % (expected, events) runloop() @@ -91,14 +97,22 @@ if ASYNCIO_SUPPORTS_COROUTINE: import sys import asyncio +from contextlib import closing, contextmanager +new_event_loop = asyncio.new_event_loop if sys.version_info >= (3, 5) else asyncio.get_event_loop +if sys.version_info < (3, 5): + # don't close loop on Py 3.4 + @contextmanager + def closing(o): + yield o + ASYNCIO_SUPPORTS_COROUTINE = sys.version_info[:2] >= (3, 5) ASYNCIO_SUPPORTS_YIELD_FROM = sys.version_info[:2] < (3, 7) def runloop(task): - loop = asyncio.get_event_loop() - result = loop.run_until_complete(task()) - assert 3 == result, result + with closing(new_event_loop()) as loop: + result = loop.run_until_complete(task()) + assert 3 == result, result import import_asyncio if ASYNCIO_SUPPORTS_YIELD_FROM: @@ -130,7 +144,7 @@ except ImportError: try: from collections import Generator except ImportError: - assert sys.version_info < (3,5), "Python 3.5+ should have collections.abc.Generator" + assert sys.version_info < (3, 5), "Python 3.5+ should have collections.abc.Generator" Generator = object # easy win :) assert isinstance(from_asyncio_import.wait3(), Generator) @@ -143,7 +157,7 @@ except ImportError: try: from collections import Awaitable except ImportError: - assert sys.version_info < (3,5), "Python 3.5+ should have collections.abc.Awaitable" + assert sys.version_info < (3, 5), "Python 3.5+ should have collections.abc.Awaitable" Awaitable = object # easy win :) assert isinstance(async_def.wait3(), Awaitable) @@ -154,7 +168,7 @@ except ImportError: try: from collections import Coroutine except ImportError: - assert sys.version_info < (3,5), "Python 3.5+ should have collections.abc.Coroutine" + assert sys.version_info < (3, 5), "Python 3.5+ should have collections.abc.Coroutine" Coroutine = object # easy win :) assert isinstance(async_def.wait3(), Coroutine) diff --git a/tests/run/py35_asyncio_async_def.srctree b/tests/run/py35_asyncio_async_def.srctree index 9da5560b3..457ef9dae 100644 --- a/tests/run/py35_asyncio_async_def.srctree +++ b/tests/run/py35_asyncio_async_def.srctree @@ -24,7 +24,7 @@ from contextlib import closing async def main(): await cy_test.say() -with closing(asyncio.get_event_loop()) as loop: +with closing(asyncio.new_event_loop()) as loop: print("Running Python coroutine ...") loop.run_until_complete(main()) |