import pytest
|
import inspect
|
|
# XX this should move into a global something
|
from ...testing import MockClock, trio_test
|
|
|
@pytest.fixture
|
def mock_clock():
|
return MockClock()
|
|
|
@pytest.fixture
|
def autojump_clock():
|
return MockClock(autojump_threshold=0)
|
|
|
# FIXME: split off into a package (or just make part of Trio's public
|
# interface?), with config file to enable? and I guess a mark option too; I
|
# guess it's useful with the class- and file-level marking machinery (where
|
# the raw @trio_test decorator isn't enough).
|
@pytest.hookimpl(tryfirst=True)
|
def pytest_pyfunc_call(pyfuncitem):
|
if inspect.iscoroutinefunction(pyfuncitem.obj):
|
pyfuncitem.obj = trio_test(pyfuncitem.obj)
|