aboutsummaryrefslogtreecommitdiff
path: root/tests/extmod/uasyncio_await_return.py
blob: d375c9ea97ab3712d15151f85167378f2dea2a5a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# Test that tasks return their value correctly to the caller

try:
    import uasyncio as asyncio
except ImportError:
    try:
        import asyncio
    except ImportError:
        print("SKIP")
        raise SystemExit


async def foo():
    return 42


async def main():
    # Call function directly via an await
    print(await foo())

    # Create a task and await on it
    task = asyncio.create_task(foo())
    print(await task)


asyncio.run(main())