Пример #1
0
def test_empty_async_generator():
    " Test asynchronous generator. "
    items = []
    f = ensure_future(consume_async_generator(
        _empty_async_generator(), lambda: False, items.append))

    # Run the event loop until all items are collected.
    get_event_loop().run_until_complete(f)
    assert items == []

    # Check that `consume_async_generator` didn't fail.
    assert f.result() is None
Пример #2
0
def test_generator_to_async_generator():
    """
    Test conversion of sync to asycn generator.
    This should run the synchronous parts in a background thread.
    """
    async_gen = generator_to_async_generator(_sync_generator)

    items = []
    f = ensure_future(consume_async_generator(
        async_gen, lambda: False, items.append))

    # Run the event loop until all items are collected.
    get_event_loop().run_until_complete(f)
    assert items == [1, 10]

    # Check that `consume_async_generator` didn't fail.
    assert f.result() is None