Skip to main content

Pytest plugin for testing async python code

Project description

pytest-aio

pytest-aio – Is a simple pytest plugin for testing async python code

The plugin supports all popular python async libraries: (Asyncio, Trio, Curio)

pytest-aio has been strongly influenced by AnyIO. Since 2021-02-09 AnyIO has dropped support for Curio, so the plugin has been created.

Tests Status PYPI Version Python Versions

Requirements

  • python >= 3.7

Installation

pytest-aio should be installed using pip:

pip install pytest-aio

optionally extras are available:

pip install pytest-aio[curio,trio]

Usage

When installed the plugin run all your async test functions/fixtures.

async def test_async():
    assert True

By default each test function will be run with asyncio, trio, curio libraries consistently. But you can customise the libraries for all your tests creating the fixture:

# Run all tests with Asyncio/Trio only
@pytest.fixture(params=['asyncio', 'trio'])
def aiolib(request):
    assert request.param

Or customize an async backend for a test only:

@pytest.mark.parametrize('aiolib', ['asyncio'])
async def only_with_asyncio():
    await asyncio.sleep(1)
    assert True

Bug tracker

If you have any suggestions, bug reports or annoyances please report them to the issue tracker at https://github.com/klen/asgi-tools/issues

Contributing

Development of the project happens at: https://github.com/klen/pytest-aio

License

Licensed under a MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pytest_aio-0.3.0-py3-none-any.whl (5.1 kB view details)

Uploaded Python 3

File details

Details for the file pytest_aio-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: pytest_aio-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 5.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.8.6

File hashes

Hashes for pytest_aio-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 71d05b931fdbb205434932f6a5696f94ed4fb78124cf446d17c499cb1bfb9647
MD5 a7ad55f0da38584b8433158c536310c2
BLAKE2b-256 40b589c1b286ecd69326fd8ac8898dcda17582c3dae679b739edeae596a60bb6

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page