chore: default to pytest asyncio-mode=auto

previously, developers who ran `./scripts/unit-tests.sh` would get `asyncio-mode=auto`, which meant `@pytest.mark.asyncio` and `@pytest_asyncio.fixture` were redundent. developers who ran `pytest` directly would get pytest's default (strict mode), would run into errors leading them to add `@pytest.mark.asyncio` / `@pytest_asyncio.fixture` to their code.

with this change -
 - `asyncio_mode=auto` is included in `pyproject.toml` making behavior consistent for all invocations of pytest
 - removes all redundant `@pytest_asyncio.fixture` and `@pytest.mark.asyncio`
 - for good measure, requires `pytest>=8.4` and `pytest-asyncio>=1.0`
This commit is contained in:
Matthew Farrellee 2025-07-11 11:48:58 -04:00
parent 2ebc172f33
commit e3a3f86cf7
35 changed files with 29 additions and 239 deletions

View file

@ -58,9 +58,9 @@ ui = [
[dependency-groups]
dev = [
"pytest",
"pytest>=8.4",
"pytest-timeout",
"pytest-asyncio",
"pytest-asyncio>=1.0",
"pytest-cov",
"pytest-html",
"pytest-json-report",
@ -339,3 +339,6 @@ warn_required_dynamic_aliases = true
[tool.ruff.lint.pep8-naming]
classmethod-decorators = ["classmethod", "pydantic.field_validator"]
[tool.pytest.ini_options]
asyncio_mode = "auto"