diff options
Diffstat (limited to 'tests/extmod/uasyncio_new_event_loop.py')
-rw-r--r-- | tests/extmod/uasyncio_new_event_loop.py | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/extmod/uasyncio_new_event_loop.py b/tests/extmod/uasyncio_new_event_loop.py new file mode 100644 index 0000000000..b711befba9 --- /dev/null +++ b/tests/extmod/uasyncio_new_event_loop.py @@ -0,0 +1,36 @@ +# Test Loop.new_event_loop() + +try: + import uasyncio as asyncio +except ImportError: + try: + import asyncio + except ImportError: + print("SKIP") + raise SystemExit + + +async def task(): + for i in range(4): + print("task", i) + await asyncio.sleep(0) + await asyncio.sleep(0) + + +async def main(): + print("start") + loop.create_task(task()) + await asyncio.sleep(0) + print("stop") + loop.stop() + + +# Use default event loop to run some tasks +loop = asyncio.get_event_loop() +loop.create_task(main()) +loop.run_forever() + +# Create new event loop, old one should not keep running +loop = asyncio.new_event_loop() +loop.create_task(main()) +loop.run_forever() |