Skip to content

Releases: pytest-dev/pytest-asyncio

pytest-asyncio 0.23.2

04 Dec 07:20
v0.23.2
Compare
Choose a tag to compare

0.23.2 (2023-12-04)

  • Fixes a bug that caused an internal pytest error when collecting .txt files #703

pytest-asyncio 0.23.1

03 Dec 19:26
v0.23.1
Compare
Choose a tag to compare

0.23.1 (2023-12-03)

  • Fixes a bug that caused an internal pytest error when using module-level skips #701

pytest-asyncio 0.23.0

03 Dec 09:45
v0.23.0
Compare
Choose a tag to compare

This release is backwards-compatible with v0.21. Changes are
non-breaking, unless you upgrade from v0.22.

  • BREAKING: The asyncio_event_loop mark has been removed. Event
    loops with class, module, package, and session scopes can be
    requested via the scope keyword argument to the asyncio
    mark.
  • Introduces the event_loop_policy fixture which allows testing with
    non-default or multiple event loops #662
  • Introduces pytest_asyncio.is_async_test which returns whether a
    test item is managed by pytest-asyncio #376
  • Removes and pytest-trio, mypy, and flaky from the test
    dependencies #620, #674, #678

pytest-asyncio 0.23.0b0

27 Nov 06:49
v0.23.0b0
Compare
Choose a tag to compare
Pre-release

0.23.0 (UNRELEASED)

This release is backwards-compatible with v0.21.
Changes are non-breaking, unless you upgrade from v0.22.

  • BREAKING: The asyncio_event_loop mark has been removed. Event loops with class, module, package, and session scopes can be requested via the scope keyword argument to the asyncio mark.
  • Introduces the event_loop_policy fixture which allows testing with non-default or multiple event loops #662
  • Removes pytest-trio from the test dependencies #620

pytest-asyncio 0.23.0a1

16 Nov 12:52
v0.23.0a1
Compare
Choose a tag to compare
Pre-release

0.23.0 (UNRELEASED)

This release is backwards-compatible with v0.21.
Changes are non-breaking, unless you upgrade from v0.22.

  • BREAKING: The asyncio_event_loop mark has been removed. Event loops with class, module, package, and session scopes can be requested via the scope keyword argument to the asyncio mark.
  • Introduces the event_loop_policy fixture which allows testing with non-default or multiple event loops #662
  • Removes pytest-trio from the test dependencies #620

pytest-asyncio 0.23.0a0

12 Nov 10:11
v0.23.0a0
Compare
Choose a tag to compare
Pre-release

0.23.0 (UNRELEASED)

This release is backwards-compatible with v0.21.
Changes are non-breaking, unless you upgrade from v0.22.

  • BREAKING: The asyncio_event_loop mark has been removed. Event loops with class, module, package, and session scopes can be requested via the scope keyword argument to the asyncio mark.
  • Introduces the event_loop_policy fixture which allows testing with non-default or multiple event loops #662
  • Removes pytest-trio from the test dependencies #620

pytest-asyncio 0.22.0 (yanked)

31 Oct 07:26
v0.22.0
Compare
Choose a tag to compare

This release deprecated event loop overrides, but didn't provide adequate replacement functionality for all relevant use cases. As such, the release was yanked from PyPI.

0.22.0 (2023-10-31)

  • Class-scoped and module-scoped event loops can be requested
    via the asyncio_event_loop mark. #620
  • Deprecate redefinition of the event_loop fixture. #587
    Users requiring a class-scoped or module-scoped asyncio event loop for their tests
    should mark the corresponding class or module with asyncio_event_loop.
  • Test items based on asynchronous generators always exit with xfail status and emit a warning during the collection phase. This behavior is consistent with synchronous yield tests. #642
  • Remove support for Python 3.7
  • Declare support for Python 3.12

pytest-asyncio 0.21.1

12 Jul 10:20
v0.21.1
Compare
Choose a tag to compare

0.21.1 (2023-07-12)

  • Output a proper error message when an invalid asyncio_mode is selected.
  • Extend warning message about unclosed event loops with additional possible cause.
    #531
  • Previously, some tests reported "skipped" or "xfailed" as a result. Now all tests report a "success" result.

pytest-asyncio 0.21.0

19 Mar 10:27
v0.21.0
Compare
Choose a tag to compare

0.21.0 (23-03-19)

  • Drop compatibility with pytest 6.1. Pytest-asyncio now depends on pytest 7.0 or newer.
  • pytest-asyncio cleans up any stale event loops when setting up and tearing down the
    event_loop fixture. This behavior has been deprecated and pytest-asyncio emits a
    DeprecationWarning when tearing down the event_loop fixture and current event loop
    has not been closed.

pytest-asyncio 0.20.3

08 Dec 12:28
v0.20.3
007e8ec
Compare
Choose a tag to compare

title: 'pytest-asyncio'

image

image

image

Supported Python versions

image

pytest-asyncio is a
pytest plugin. It
facilitates testing of code that uses the
asyncio library.

Specifically, pytest-asyncio provides support for coroutines as test
functions. This allows users to await code inside their tests. For
example, the following code is executed as a test item by pytest:

@pytest.mark.asyncio
async def test_some_asyncio_code():
    res = await library.do_something()
    assert b"expected result" == res

Note that test classes subclassing the standard
unittest library are
not supported. Users are advised to use
unittest.IsolatedAsyncioTestCase
or an async framework such as
asynctest.

pytest-asyncio is available under the Apache License
2.0
.

Installation

To install pytest-asyncio, simply:

$ pip install pytest-asyncio

This is enough for pytest to pick up pytest-asyncio.

Contributing

Contributions are very welcome. Tests can be run with tox, please
ensure the coverage at least stays the same before you submit a pull
request.