docs
This commit is contained in:
@@ -7,6 +7,8 @@ Ensures proper sys.path setup so that:
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import asyncio
|
||||
import inspect
|
||||
import sys
|
||||
from pathlib import Path
|
||||
|
||||
@@ -21,3 +23,26 @@ for p in (REPO_ROOT, VENDORED_ONTOCAST):
|
||||
# Remove stdlib 'platform' to avoid conflict with our platform package
|
||||
if "platform" in sys.modules:
|
||||
del sys.modules["platform"]
|
||||
|
||||
|
||||
def pytest_configure(config):
|
||||
config.addinivalue_line("markers", "asyncio: run async test functions")
|
||||
|
||||
|
||||
def pytest_addoption(parser):
|
||||
parser.addini("asyncio_mode", "asyncio compatibility mode", default="auto")
|
||||
|
||||
|
||||
def pytest_pyfunc_call(pyfuncitem):
|
||||
"""Minimal asyncio runner for environments without pytest-asyncio."""
|
||||
|
||||
if not inspect.iscoroutinefunction(pyfuncitem.obj):
|
||||
return None
|
||||
|
||||
kwargs = {
|
||||
name: pyfuncitem.funcargs[name]
|
||||
for name in pyfuncitem._fixtureinfo.argnames
|
||||
if name in pyfuncitem.funcargs
|
||||
}
|
||||
asyncio.run(pyfuncitem.obj(**kwargs))
|
||||
return True
|
||||
|
||||
Reference in New Issue
Block a user