Skip to content

Instantly share code, notes, and snippets.

@Alessandro-Barbieri
Created March 31, 2020 16:24
Show Gist options
  • Save Alessandro-Barbieri/bb9b5fffa660637aac9c4e3a1fd3ff60 to your computer and use it in GitHub Desktop.
Save Alessandro-Barbieri/bb9b5fffa660637aac9c4e3a1fd3ff60 to your computer and use it in GitHub Desktop.
 * Package: dev-python/pytest-trio-0.5.2
 * Repository: guru
 * Maintainer: lssndrbarbieri@gmail.com
 * USE: abi_x86_64 amd64 elibc_glibc kernel_linux python_targets_python3_6 python_targets_python3_7 test userland_GNU
 * FEATURES: network-sandbox preserve-libs sandbox test userpriv usersandbox
>>> Unpacking source...
>>> Unpacking pytest-trio-0.5.2.tar.gz to /var/tmp/portage/dev-python/pytest-trio-0.5.2/work
>>> Source unpacked in /var/tmp/portage/dev-python/pytest-trio-0.5.2/work
>>> Preparing source in /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2 ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2 ...
>>> Source configured.
>>> Compiling source in /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2 ...
* python3_6: running distutils-r1_run_phase distutils-r1_python_compile
python3.6 setup.py build -j 4
running build
running build_py
creating /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio
copying pytest_trio/_version.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio
copying pytest_trio/__init__.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio
copying pytest_trio/enable_trio_mode.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio
copying pytest_trio/plugin.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio
creating /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_hypothesis_interaction.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_fixture_mistakes.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
copying pytest_trio/_tests/helpers.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
copying pytest_trio/_tests/__init__.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_trio_asyncio.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_fixture_ordering.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_async_yield_fixture.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_contextvars.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_basic.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_clock_fixture.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_trio_mode.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_fixture_names.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_sync_fixture.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_fixture_nursery.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_async_fixture.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_6/lib/pytest_trio/_tests
warning: build_py: byte-compiling is disabled, skipping.
* python3_7: running distutils-r1_run_phase distutils-r1_python_compile
python3.7 setup.py build -j 4
running build
running build_py
creating /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio
copying pytest_trio/_version.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio
copying pytest_trio/__init__.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio
copying pytest_trio/enable_trio_mode.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio
copying pytest_trio/plugin.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio
creating /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_hypothesis_interaction.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_fixture_mistakes.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
copying pytest_trio/_tests/helpers.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
copying pytest_trio/_tests/__init__.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_trio_asyncio.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_fixture_ordering.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_async_yield_fixture.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_contextvars.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_basic.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_clock_fixture.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_trio_mode.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_fixture_names.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_sync_fixture.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_fixture_nursery.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
copying pytest_trio/_tests/test_async_fixture.py -> /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2-python3_7/lib/pytest_trio/_tests
warning: build_py: byte-compiling is disabled, skipping.
* Using python3.7 in global scope
* python3_7: running distutils-r1_run_phase python_compile_all
>>> Source compiled.
>>> Test phase: dev-python/pytest-trio-0.5.2
* python3_6: running distutils-r1_run_phase python_test
========================================== test session starts ==========================================
platform linux -- Python 3.6.10, pytest-4.6.9, py-1.8.0, pluggy-0.13.1 -- /usr/bin/python3.6
cachedir: .pytest_cache
benchmark: 3.2.3 (defaults: timer=time.perf_counter disable_gc=False min_rounds=5 min_time=0.000005 max_time=1.0 calibration_precision=10 warmup=False warmup_iterations=100000)
hypothesis profile 'default' -> database=DirectoryBasedExampleDatabase('/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/.hypothesis/examples')
rootdir: /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2
plugins: trio-0.5.2, benchmark-3.2.3, cov-2.8.1, aspectlib-1.4.2, forked-1.1.3, xdist-1.31.0, instafail-0.4.1, subtests-0.3.0, timeout-1.3.3, hypothesis-5.7.2, asyncio-0.10.0, sugar-0.9.2
collecting ... collected 53 items
pytest_trio/_tests/test_async_fixture.py::test_single_async_fixture ERROR [ 1%]
pytest_trio/_tests/test_async_fixture.py::test_async_fixture_recomputed_for_each_test ERROR [ 3%]
pytest_trio/_tests/test_async_fixture.py::test_nested_async_fixture ERROR [ 5%]
pytest_trio/_tests/test_async_fixture.py::test_async_within_sync_fixture ERROR [ 7%]
pytest_trio/_tests/test_async_fixture.py::test_raise_in_async_fixture_cause_pytest_error XFAIL [ 9%]
pytest_trio/_tests/test_async_yield_fixture.py::test_single_async_yield_fixture[Python>=36] ERROR [ 11%]
pytest_trio/_tests/test_async_yield_fixture.py::test_single_async_yield_fixture[async_generator] ERROR [ 13%]
pytest_trio/_tests/test_async_yield_fixture.py::test_nested_async_yield_fixture[Python>=36] ERROR [ 15%]
pytest_trio/_tests/test_async_yield_fixture.py::test_nested_async_yield_fixture[async_generator] ERROR [ 16%]
pytest_trio/_tests/test_async_yield_fixture.py::test_async_yield_fixture_within_sync_fixture[Python>=36] ERROR [ 18%]
pytest_trio/_tests/test_async_yield_fixture.py::test_async_yield_fixture_within_sync_fixture[async_generator] ERROR [ 20%]
pytest_trio/_tests/test_async_yield_fixture.py::test_async_yield_fixture_within_sync_yield_fixture[Python>=36] ERROR [ 22%]
pytest_trio/_tests/test_async_yield_fixture.py::test_async_yield_fixture_within_sync_yield_fixture[async_generator] ERROR [ 24%]
pytest_trio/_tests/test_async_yield_fixture.py::test_async_yield_fixture_with_multiple_yields[Python>=36] ERROR [ 26%]
pytest_trio/_tests/test_async_yield_fixture.py::test_async_yield_fixture_with_multiple_yields[async_generator] ERROR [ 28%]
pytest_trio/_tests/test_async_yield_fixture.py::test_async_yield_fixture_with_nursery[Python>=36] ERROR [ 30%]
pytest_trio/_tests/test_async_yield_fixture.py::test_async_yield_fixture_with_nursery[async_generator] ERROR [ 32%]
pytest_trio/_tests/test_async_yield_fixture.py::test_async_yield_fixture_crashed_teardown_allow_other_teardowns[Python>=36] ERROR [ 33%]
pytest_trio/_tests/test_async_yield_fixture.py::test_async_yield_fixture_crashed_teardown_allow_other_teardowns[async_generator] ERROR [ 35%]
pytest_trio/_tests/test_basic.py::test_async_test_is_executed ERROR [ 37%]
pytest_trio/_tests/test_basic.py::test_async_test_as_class_method ERROR [ 39%]
pytest_trio/_tests/test_basic.py::test_sync_function_with_trio_mark XFAIL [ 41%]
pytest_trio/_tests/test_clock_fixture.py::test_sleep_with_autojump_clock PASSED [ 43%]
pytest_trio/_tests/test_contextvars.py::test_contextvars PASSED [ 45%]
pytest_trio/_tests/test_fixture_mistakes.py::test_trio_fixture_with_non_trio_test ERROR [ 47%]
pytest_trio/_tests/test_fixture_mistakes.py::test_trio_fixture_with_wrong_scope_without_trio_mode ERROR [ 49%]
pytest_trio/_tests/test_fixture_mistakes.py::test_trio_fixture_with_wrong_scope_in_trio_mode[enable_trio_mode_via_pytest_ini] ERROR [ 50%]
pytest_trio/_tests/test_fixture_mistakes.py::test_trio_fixture_with_wrong_scope_in_trio_mode[enable_trio_mode_via_conftest_py] ERROR [ 52%]
pytest_trio/_tests/test_fixture_mistakes.py::test_async_fixture_with_sync_test_in_trio_mode[enable_trio_mode_via_pytest_ini] ERROR [ 54%]
pytest_trio/_tests/test_fixture_mistakes.py::test_async_fixture_with_sync_test_in_trio_mode[enable_trio_mode_via_conftest_py] ERROR [ 56%]
pytest_trio/_tests/test_fixture_names.py::test_fixture_names PASSED [ 58%]
pytest_trio/_tests/test_fixture_nursery.py::test_try FAILED [ 60%]
pytest_trio/_tests/test_fixture_ordering.py::test_fixture_basic_ordering ERROR [ 62%]
pytest_trio/_tests/test_fixture_ordering.py::test_nursery_fixture_teardown_ordering ERROR [ 64%]
pytest_trio/_tests/test_fixture_ordering.py::test_error_collection ERROR [ 66%]
pytest_trio/_tests/test_fixture_ordering.py::test_background_crash_cancellation_propagation[nursery fixture] ERROR [ 67%]
pytest_trio/_tests/test_fixture_ordering.py::test_background_crash_cancellation_propagation[manual nursery] ERROR [ 69%]
pytest_trio/_tests/test_hypothesis_interaction.py::test_the_trio_scheduler_is_not_deterministic <- ../../../../../../../usr/lib64/python3.6/site-packages/trio/tests/test_scheduler_determinism.py PASSED [ 71%]
pytest_trio/_tests/test_hypothesis_interaction.py::test_the_trio_scheduler_is_deterministic_if_seeded <- ../../../../../../../usr/lib64/python3.6/site-packages/trio/tests/test_scheduler_determinism.py PASSED [ 73%]
pytest_trio/_tests/test_hypothesis_interaction.py::test_mark_inner PASSED [ 75%]
pytest_trio/_tests/test_hypothesis_interaction.py::test_mark_outer PASSED [ 77%]
pytest_trio/_tests/test_hypothesis_interaction.py::test_mark_and_parametrize[1] PASSED [ 79%]
pytest_trio/_tests/test_hypothesis_interaction.py::test_mark_and_parametrize[2] PASSED [ 81%]
pytest_trio/_tests/test_hypothesis_interaction.py::test_the_trio_scheduler_is_deterministic_under_hypothesis PASSED [ 83%]
pytest_trio/_tests/test_sync_fixture.py::test_single_sync_fixture PASSED [ 84%]
pytest_trio/_tests/test_sync_fixture.py::test_single_yield_fixture ERROR [ 86%]
pytest_trio/_tests/test_sync_fixture.py::test_single_yield_fixture_with_async_deps ERROR [ 88%]
pytest_trio/_tests/test_sync_fixture.py::test_sync_yield_fixture_crashed_teardown_allow_other_teardowns ERROR [ 90%]
pytest_trio/_tests/test_trio_asyncio.py::test_no_fixture PASSED [ 92%]
pytest_trio/_tests/test_trio_asyncio.py::test_half_fixtured_asyncpg_conn ERROR [ 94%]
pytest_trio/_tests/test_trio_asyncio.py::test_fixtured_asyncpg_conn ERROR [ 96%]
pytest_trio/_tests/test_trio_mode.py::test_trio_mode[enable_trio_mode_via_pytest_ini] ERROR [ 98%]
pytest_trio/_tests/test_trio_mode.py::test_trio_mode[enable_trio_mode_via_conftest_py] ERROR [100%]
================================================ ERRORS =================================================
______________________________ ERROR at setup of test_single_async_fixture ______________________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_fixture.py, line 4
def test_single_async_fixture(testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_fixture.py:4
_____________________ ERROR at setup of test_async_fixture_recomputed_for_each_test _____________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_fixture.py, line 27
def test_async_fixture_recomputed_for_each_test(testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_fixture.py:27
______________________________ ERROR at setup of test_nested_async_fixture ______________________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_fixture.py, line 58
def test_nested_async_fixture(testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_fixture.py:58
___________________________ ERROR at setup of test_async_within_sync_fixture ____________________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_fixture.py, line 91
def test_async_within_sync_fixture(testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_fixture.py:91
_____________________ ERROR at setup of test_single_async_yield_fixture[Python>=36] _____________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py, line 24
def test_single_async_yield_fixture(testdir, async_yield_implementation):
E fixture 'testdir' not found
> available fixtures: async_yield_implementation, autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py:24
__________________ ERROR at setup of test_single_async_yield_fixture[async_generator] ___________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py, line 24
def test_single_async_yield_fixture(testdir, async_yield_implementation):
E fixture 'testdir' not found
> available fixtures: async_yield_implementation, autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py:24
_____________________ ERROR at setup of test_nested_async_yield_fixture[Python>=36] _____________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py, line 67
def test_nested_async_yield_fixture(testdir, async_yield_implementation):
E fixture 'testdir' not found
> available fixtures: async_yield_implementation, autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py:67
__________________ ERROR at setup of test_nested_async_yield_fixture[async_generator] ___________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py, line 67
def test_nested_async_yield_fixture(testdir, async_yield_implementation):
E fixture 'testdir' not found
> available fixtures: async_yield_implementation, autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py:67
______________ ERROR at setup of test_async_yield_fixture_within_sync_fixture[Python>=36] _______________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py, line 127
def test_async_yield_fixture_within_sync_fixture(
E fixture 'testdir' not found
> available fixtures: async_yield_implementation, autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py:127
____________ ERROR at setup of test_async_yield_fixture_within_sync_fixture[async_generator] ____________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py, line 127
def test_async_yield_fixture_within_sync_fixture(
E fixture 'testdir' not found
> available fixtures: async_yield_implementation, autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py:127
___________ ERROR at setup of test_async_yield_fixture_within_sync_yield_fixture[Python>=36] ____________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py, line 179
def test_async_yield_fixture_within_sync_yield_fixture(
E fixture 'testdir' not found
> available fixtures: async_yield_implementation, autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py:179
_________ ERROR at setup of test_async_yield_fixture_within_sync_yield_fixture[async_generator] _________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py, line 179
def test_async_yield_fixture_within_sync_yield_fixture(
E fixture 'testdir' not found
> available fixtures: async_yield_implementation, autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py:179
______________ ERROR at setup of test_async_yield_fixture_with_multiple_yields[Python>=36] ______________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py, line 236
def test_async_yield_fixture_with_multiple_yields(
E fixture 'testdir' not found
> available fixtures: async_yield_implementation, autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py:236
___________ ERROR at setup of test_async_yield_fixture_with_multiple_yields[async_generator] ____________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py, line 236
def test_async_yield_fixture_with_multiple_yields(
E fixture 'testdir' not found
> available fixtures: async_yield_implementation, autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py:236
__________________ ERROR at setup of test_async_yield_fixture_with_nursery[Python>=36] __________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py, line 269
def test_async_yield_fixture_with_nursery(testdir, async_yield_implementation):
E fixture 'testdir' not found
> available fixtures: async_yield_implementation, autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py:269
_______________ ERROR at setup of test_async_yield_fixture_with_nursery[async_generator] ________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py, line 269
def test_async_yield_fixture_with_nursery(testdir, async_yield_implementation):
E fixture 'testdir' not found
> available fixtures: async_yield_implementation, autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py:269
_____ ERROR at setup of test_async_yield_fixture_crashed_teardown_allow_other_teardowns[Python>=36] _____
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py, line 309
def test_async_yield_fixture_crashed_teardown_allow_other_teardowns(
E fixture 'testdir' not found
> available fixtures: async_yield_implementation, autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py:309
__ ERROR at setup of test_async_yield_fixture_crashed_teardown_allow_other_teardowns[async_generator] ___
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py, line 309
def test_async_yield_fixture_crashed_teardown_allow_other_teardowns(
E fixture 'testdir' not found
> available fixtures: async_yield_implementation, autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_async_yield_fixture.py:309
_____________________________ ERROR at setup of test_async_test_is_executed _____________________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_basic.py, line 4
def test_async_test_is_executed(testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_basic.py:4
___________________________ ERROR at setup of test_async_test_as_class_method ___________________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_basic.py, line 29
def test_async_test_as_class_method(testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_basic.py:29
________________________ ERROR at setup of test_trio_fixture_with_non_trio_test _________________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_mistakes.py, line 7
def test_trio_fixture_with_non_trio_test(testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_mistakes.py:7
________________ ERROR at setup of test_trio_fixture_with_wrong_scope_without_trio_mode _________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_mistakes.py, line 43
def test_trio_fixture_with_wrong_scope_without_trio_mode(testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_mistakes.py:43
__ ERROR at setup of test_trio_fixture_with_wrong_scope_in_trio_mode[enable_trio_mode_via_pytest_ini] ___
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_mistakes.py, line 72
@enable_trio_mode
def test_trio_fixture_with_wrong_scope_in_trio_mode(testdir, enable_trio_mode):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_mistakes.py:72
__ ERROR at setup of test_trio_fixture_with_wrong_scope_in_trio_mode[enable_trio_mode_via_conftest_py] __
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_mistakes.py, line 72
@enable_trio_mode
def test_trio_fixture_with_wrong_scope_in_trio_mode(testdir, enable_trio_mode):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_mistakes.py:72
___ ERROR at setup of test_async_fixture_with_sync_test_in_trio_mode[enable_trio_mode_via_pytest_ini] ___
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_mistakes.py, line 96
@enable_trio_mode
def test_async_fixture_with_sync_test_in_trio_mode(testdir, enable_trio_mode):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_mistakes.py:96
__ ERROR at setup of test_async_fixture_with_sync_test_in_trio_mode[enable_trio_mode_via_conftest_py] ___
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_mistakes.py, line 96
@enable_trio_mode
def test_async_fixture_with_sync_test_in_trio_mode(testdir, enable_trio_mode):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_mistakes.py:96
_____________________________ ERROR at setup of test_fixture_basic_ordering _____________________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_ordering.py, line 8
def test_fixture_basic_ordering(testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_ordering.py:8
_______________________ ERROR at setup of test_nursery_fixture_teardown_ordering ________________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_ordering.py, line 82
def test_nursery_fixture_teardown_ordering(testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_ordering.py:82
________________________________ ERROR at setup of test_error_collection ________________________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_ordering.py, line 134
def test_error_collection(testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_ordering.py:134
___________ ERROR at setup of test_background_crash_cancellation_propagation[nursery fixture] ___________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_ordering.py, line 210
@pytest.mark.parametrize("bgmode", ["nursery fixture", "manual nursery"])
def test_background_crash_cancellation_propagation(bgmode, testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_ordering.py:210
___________ ERROR at setup of test_background_crash_cancellation_propagation[manual nursery] ____________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_ordering.py, line 210
@pytest.mark.parametrize("bgmode", ["nursery fixture", "manual nursery"])
def test_background_crash_cancellation_propagation(bgmode, testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_fixture_ordering.py:210
______________________________ ERROR at setup of test_single_yield_fixture ______________________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_sync_fixture.py, line 14
def test_single_yield_fixture(testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, sync_fix, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_sync_fixture.py:14
______________________ ERROR at setup of test_single_yield_fixture_with_async_deps ______________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_sync_fixture.py, line 49
def test_single_yield_fixture_with_async_deps(testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, sync_fix, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_sync_fixture.py:49
___________ ERROR at setup of test_sync_yield_fixture_crashed_teardown_allow_other_teardowns ____________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_sync_fixture.py, line 92
def test_sync_yield_fixture_crashed_teardown_allow_other_teardowns(testdir):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, sync_fix, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_sync_fixture.py:92
___________________________ ERROR at setup of test_half_fixtured_asyncpg_conn ___________________________
@pytest.fixture()
@async_generator
async def asyncio_fixture_own_loop():
> async with trio_asyncio.open_loop():
pytest_trio/_tests/test_trio_asyncio.py:33:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib64/python3.6/site-packages/async_generator/_util.py:34: in __aenter__
return await self._agen.asend(None)
/usr/lib64/python3.6/site-packages/async_generator/_impl.py:366: in step
return await ANextIter(self._it, start_fn, *args)
/usr/lib64/python3.6/site-packages/async_generator/_impl.py:197: in __next__
return self._invoke(first_fn, *first_args)
/usr/lib64/python3.6/site-packages/async_generator/_impl.py:209: in _invoke
result = fn(*args)
/usr/lib64/python3.6/site-packages/trio_asyncio/_loop.py:397: in open_loop
async with trio.open_nursery() as nursery:
/usr/lib64/python3.6/site-packages/trio/_core/_run.py:711: in __aenter__
self._scope.__enter__()
/usr/lib64/python3.6/site-packages/trio/_core/_ki.py:167: in wrapper
return fn(*args, **kwargs)
/usr/lib64/python3.6/site-packages/trio/_core/_run.py:363: in __enter__
task = _core.current_task()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
def current_task():
"""Return the :class:`Task` object representing the current task.
Returns:
Task: the :class:`Task` that called :func:`current_task`.
"""
try:
return GLOBAL_RUN_CONTEXT.task
except AttributeError:
> raise RuntimeError("must be called from async context") from None
E RuntimeError: must be called from async context
/usr/lib64/python3.6/site-packages/trio/_core/_run.py:2002: RuntimeError
_____________________________ ERROR at setup of test_fixtured_asyncpg_conn ______________________________
@pytest.fixture()
@async_generator
async def asyncio_loop():
> async with trio_asyncio.open_loop() as loop:
pytest_trio/_tests/test_trio_asyncio.py:19:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
/usr/lib64/python3.6/site-packages/async_generator/_util.py:34: in __aenter__
return await self._agen.asend(None)
/usr/lib64/python3.6/site-packages/async_generator/_impl.py:366: in step
return await ANextIter(self._it, start_fn, *args)
/usr/lib64/python3.6/site-packages/async_generator/_impl.py:197: in __next__
return self._invoke(first_fn, *first_args)
/usr/lib64/python3.6/site-packages/async_generator/_impl.py:209: in _invoke
result = fn(*args)
/usr/lib64/python3.6/site-packages/trio_asyncio/_loop.py:397: in open_loop
async with trio.open_nursery() as nursery:
/usr/lib64/python3.6/site-packages/trio/_core/_run.py:711: in __aenter__
self._scope.__enter__()
/usr/lib64/python3.6/site-packages/trio/_core/_ki.py:167: in wrapper
return fn(*args, **kwargs)
/usr/lib64/python3.6/site-packages/trio/_core/_run.py:363: in __enter__
task = _core.current_task()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
def current_task():
"""Return the :class:`Task` object representing the current task.
Returns:
Task: the :class:`Task` that called :func:`current_task`.
"""
try:
return GLOBAL_RUN_CONTEXT.task
except AttributeError:
> raise RuntimeError("must be called from async context") from None
E RuntimeError: must be called from async context
/usr/lib64/python3.6/site-packages/trio/_core/_run.py:2002: RuntimeError
___________________ ERROR at setup of test_trio_mode[enable_trio_mode_via_pytest_ini] ___________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_trio_mode.py, line 31
@enable_trio_mode
def test_trio_mode(testdir, enable_trio_mode):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_trio_mode.py:31
__________________ ERROR at setup of test_trio_mode[enable_trio_mode_via_conftest_py] ___________________
file /var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_trio_mode.py, line 31
@enable_trio_mode
def test_trio_mode(testdir, enable_trio_mode):
E fixture 'testdir' not found
> available fixtures: autojump_clock, benchmark, benchmark_weave, cache, capfd, capfdbinary, caplog, capsys, capsysbinary, cov, doctest_namespace, event_loop, mock_clock, monkeypatch, no_cover, nursery, pytestconfig, record_property, record_testsuite_property, record_xml_attribute, recwarn, subtests, tmp_path, tmp_path_factory, tmpdir, tmpdir_factory, unused_tcp_port, unused_tcp_port_factory, weave, worker_id
> use 'pytest --fixtures [testpath]' for help on them.
/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2/pytest_trio/_tests/test_trio_mode.py:31
=============================================== FAILURES ================================================
_______________________________________________ test_try ________________________________________________
async_fn = functools.partial(<function _trio_test_runner_factory.<locals>._bootstrap_fixtures_and_run_test at 0x7f0c119d2048>, server=<pytest_trio.plugin.TrioFixture object at 0x7f0c119c5630>)
clock = SystemClock(offset=190681.96913612066), instruments = []
restrict_keyboard_interrupt_to_checkpoints = False, args = ()
def run(
async_fn,
*args,
clock=None,
instruments=(),
restrict_keyboard_interrupt_to_checkpoints=False
):
"""Run a Trio-flavored async function, and return the result.
Calling::
run(async_fn, *args)
is the equivalent of::
await async_fn(*args)
except that :func:`run` can (and must) be called from a synchronous
context.
This is Trio's main entry point. Almost every other function in Trio
requires that you be inside a call to :func:`run`.
Args:
async_fn: An async function.
args: Positional arguments to be passed to *async_fn*. If you need to
pass keyword arguments, then use :func:`functools.partial`.
clock: ``None`` to use the default system-specific monotonic clock;
otherwise, an object implementing the :class:`trio.abc.Clock`
interface, like (for example) a :class:`trio.testing.MockClock`
instance.
instruments (list of :class:`trio.abc.Instrument` objects): Any
instrumentation you want to apply to this run. This can also be
modified during the run; see :ref:`instrumentation`.
restrict_keyboard_interrupt_to_checkpoints (bool): What happens if the
user hits control-C while :func:`run` is running? If this argument
is False (the default), then you get the standard Python behavior: a
:exc:`KeyboardInterrupt` exception will immediately interrupt
whatever task is running (or if no task is running, then Trio will
wake up a task to be interrupted). Alternatively, if you set this
argument to True, then :exc:`KeyboardInterrupt` delivery will be
delayed: it will be *only* be raised at :ref:`checkpoints
<checkpoints>`, like a :exc:`Cancelled` exception.
The default behavior is nice because it means that even if you
accidentally write an infinite loop that never executes any
checkpoints, then you can still break out of it using control-C.
The alternative behavior is nice if you're paranoid about a
:exc:`KeyboardInterrupt` at just the wrong place leaving your
program in an inconsistent state, because it means that you only
have to worry about :exc:`KeyboardInterrupt` at the exact same
places where you already have to worry about :exc:`Cancelled`.
This setting has no effect if your program has registered a custom
SIGINT handler, or if :func:`run` is called from anywhere but the
main thread (this is a Python limitation), or if you use
:func:`open_signal_receiver` to catch SIGINT.
Returns:
Whatever ``async_fn`` returns.
Raises:
TrioInternalError: if an unexpected error is encountered inside Trio's
internal machinery. This is a bug and you should `let us know
<https://github.com/python-trio/trio/issues>`__.
Anything else: if ``async_fn`` raises an exception, then :func:`run`
propagates it.
"""
__tracebackhide__ = True
# Do error-checking up front, before we enter the TrioInternalError
# try/catch
#
# It wouldn't be *hard* to support nested calls to run(), but I can't
# think of a single good reason for it, so let's be conservative for
# now:
if hasattr(GLOBAL_RUN_CONTEXT, "runner"):
raise RuntimeError("Attempted to call run() from inside a run()")
if clock is None:
clock = SystemClock()
instruments = list(instruments)
io_manager = TheIOManager()
system_context = copy_context()
system_context.run(current_async_library_cvar.set, "trio")
runner = Runner(
clock=clock,
instruments=instruments,
io_manager=io_manager,
system_context=system_context,
)
GLOBAL_RUN_CONTEXT.runner = runner
locals()[LOCALS_KEY_KI_PROTECTION_ENABLED] = True
# KI handling goes outside the core try/except/finally to avoid a window
# where KeyboardInterrupt would be allowed and converted into an
# TrioInternalError:
try:
with ki_manager(
runner.deliver_ki, restrict_keyboard_interrupt_to_checkpoints
):
try:
with closing(runner):
with runner.entry_queue.wakeup.wakeup_on_signals():
# The main reason this is split off into its own
# function is just to get rid of this extra
# indentation.
> run_impl(runner, async_fn, args)
/usr/lib64/python3.6/site-packages/trio/_core/_run.py:1790:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
runner = Runner(clock=SystemClock(offset=190681.96913612066), instruments=[], io_manager=EpollIOManager(_epoll=<select.epoll ob...d.RLock object owner=0 count=0 at 0x7f0c11a29ab0>), trio_token=None, ki_pending=False, waiting_for_idle=SortedDict({}))
async_fn = functools.partial(<function _trio_test_runner_factory.<locals>._bootstrap_fixtures_and_run_test at 0x7f0c119d2048>, server=<pytest_trio.plugin.TrioFixture object at 0x7f0c119c5630>)
args = ()
def run_impl(runner, async_fn, args):
__tracebackhide__ = True
if runner.instruments:
runner.instrument("before_run")
runner.clock.start_clock()
runner.init_task = runner.spawn_impl(
runner.init,
(async_fn, args),
None,
"<init>",
system_task=True,
)
# You know how people talk about "event loops"? This 'while' loop right
# here is our event loop:
while runner.tasks:
if runner.runq:
timeout = 0
elif runner.deadlines:
deadline, _ = runner.deadlines.keys()[0]
timeout = runner.clock.deadline_to_sleep_time(deadline)
else:
timeout = _MAX_TIMEOUT
timeout = min(max(0, timeout), _MAX_TIMEOUT)
idle_primed = False
if runner.waiting_for_idle:
cushion, tiebreaker, _ = runner.waiting_for_idle.keys()[0]
if cushion < timeout:
timeout = cushion
idle_primed = True
if runner.instruments:
runner.instrument("before_io_wait", timeout)
runner.io_manager.handle_io(timeout)
if runner.instruments:
runner.instrument("after_io_wait", timeout)
# Process cancellations due to deadline expiry
now = runner.clock.current_time()
while runner.deadlines:
(deadline, _), cancel_scope = runner.deadlines.peekitem(0)
if deadline <= now:
# This removes the given scope from runner.deadlines:
cancel_scope.cancel()
idle_primed = False
else:
break
if not runner.runq and idle_primed:
while runner.waiting_for_idle:
key, task = runner.waiting_for_idle.peekitem(0)
if key[:2] == (cushion, tiebreaker):
del runner.waiting_for_idle[key]
runner.reschedule(task)
else:
break
# Process all runnable tasks, but only the ones that are already
# runnable now. Anything that becomes runnable during this cycle needs
# to wait until the next pass. This avoids various starvation issues
# by ensuring that there's never an unbounded delay between successive
# checks for I/O.
#
# Also, we randomize the order of each batch to avoid assumptions
# about scheduling order sneaking in. In the long run, I suspect we'll
# either (a) use strict FIFO ordering and document that for
# predictability/determinism, or (b) implement a more sophisticated
# scheduler (e.g. some variant of fair queueing), for better behavior
# under load. For now, this is the worst of both worlds - but it keeps
# our options open. (If we do decide to go all in on deterministic
# scheduling, then there are other things that will probably need to
# change too, like the deadlines tie-breaker and the non-deterministic
# ordering of task._notify_queues.)
batch = list(runner.runq)
if _ALLOW_DETERMINISTIC_SCHEDULING:
# We're running under Hypothesis, and pytest-trio has patched this
# in to make the scheduler deterministic and avoid flaky tests.
# It's not worth the (small) performance cost in normal operation,
# since we'll shuffle the list and _r is only seeded for tests.
batch.sort(key=lambda t: t._counter)
runner.runq.clear()
_r.shuffle(batch)
while batch:
task = batch.pop()
GLOBAL_RUN_CONTEXT.task = task
if runner.instruments:
runner.instrument("before_task_step", task)
next_send_fn = task._next_send_fn
next_send = task._next_send
task._next_send_fn = task._next_send = None
final_outcome = None
try:
# We used to unwrap the Outcome object here and send/throw its
# contents in directly, but it turns out that .throw() is
# buggy, at least on CPython 3.6 and earlier:
# https://bugs.python.org/issue29587
# https://bugs.python.org/issue29590
# So now we send in the Outcome object and unwrap it on the
# other side.
msg = task.context.run(next_send_fn, next_send)
except StopIteration as stop_iteration:
final_outcome = Value(stop_iteration.value)
except BaseException as task_exc:
# Store for later, removing uninteresting top frames: 1 frame
# we always remove, because it's this function catching it,
# and then in addition we remove however many more Context.run
# adds.
tb = task_exc.__traceback__.tb_next
for _ in range(CONTEXT_RUN_TB_FRAMES):
tb = tb.tb_next
final_outcome = Error(task_exc.with_traceback(tb))
if final_outcome is not None:
# We can't call this directly inside the except: blocks above,
# because then the exceptions end up attaching themselves to
# other exceptions as __context__ in unwanted ways.
> runner.task_exited(task, final_outcome)
/usr/lib64/python3.6/site-packages/trio/_core/_run.py:1940:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = Runner(clock=SystemClock(offset=190681.96913612066), instruments=[], io_manager=EpollIOManager(_epoll=<select.epoll ob...d.RLock object owner=0 count=0 at 0x7f0c11a29ab0>), trio_token=None, ki_pending=False, waiting_for_idle=SortedDict({}))
task = <Task "<fixture 'server'>" at 0x7f0c119d44e0>
outcome = Error(RuntimeError('cannot reuse already awaited coroutine',))
def task_exited(self, task, outcome):
if (
task._cancel_status is not None
and task._cancel_status.abandoned_by_misnesting
and task._cancel_status.parent is None
):
# The cancel scope surrounding this task's nursery was closed
# before the task exited. Force the task to exit with an error,
# since the error might not have been caught elsewhere. See the
# comments in CancelStatus.close().
try:
# Raise this, rather than just constructing it, to get a
# traceback frame included
raise RuntimeError(
"Cancel scope stack corrupted: cancel scope surrounding "
"{!r} was closed before the task exited\n{}".format(
task, MISNESTING_ADVICE
)
)
except RuntimeError as new_exc:
if isinstance(outcome, Error):
new_exc.__context__ = outcome.error
outcome = Error(new_exc)
task._activate_cancel_status(None)
> self.tasks.remove(task)
E KeyError: <Task "<fixture 'server'>" at 0x7f0c119d44e0>
/usr/lib64/python3.6/site-packages/trio/_core/_run.py:1410: KeyError
The above exception was the direct cause of the following exception:
async_fn = functools.partial(<function _trio_test_runner_factory.<locals>._bootstrap_fixtures_and_run_test at 0x7f0c119d2048>, server=<pytest_trio.plugin.TrioFixture object at 0x7f0c119c5630>)
clock = SystemClock(offset=190681.96913612066), instruments = []
restrict_keyboard_interrupt_to_checkpoints = False, args = ()
def run(
async_fn,
*args,
clock=None,
instruments=(),
restrict_keyboard_interrupt_to_checkpoints=False
):
"""Run a Trio-flavored async function, and return the result.
Calling::
run(async_fn, *args)
is the equivalent of::
await async_fn(*args)
except that :func:`run` can (and must) be called from a synchronous
context.
This is Trio's main entry point. Almost every other function in Trio
requires that you be inside a call to :func:`run`.
Args:
async_fn: An async function.
args: Positional arguments to be passed to *async_fn*. If you need to
pass keyword arguments, then use :func:`functools.partial`.
clock: ``None`` to use the default system-specific monotonic clock;
otherwise, an object implementing the :class:`trio.abc.Clock`
interface, like (for example) a :class:`trio.testing.MockClock`
instance.
instruments (list of :class:`trio.abc.Instrument` objects): Any
instrumentation you want to apply to this run. This can also be
modified during the run; see :ref:`instrumentation`.
restrict_keyboard_interrupt_to_checkpoints (bool): What happens if the
user hits control-C while :func:`run` is running? If this argument
is False (the default), then you get the standard Python behavior: a
:exc:`KeyboardInterrupt` exception will immediately interrupt
whatever task is running (or if no task is running, then Trio will
wake up a task to be interrupted). Alternatively, if you set this
argument to True, then :exc:`KeyboardInterrupt` delivery will be
delayed: it will be *only* be raised at :ref:`checkpoints
<checkpoints>`, like a :exc:`Cancelled` exception.
The default behavior is nice because it means that even if you
accidentally write an infinite loop that never executes any
checkpoints, then you can still break out of it using control-C.
The alternative behavior is nice if you're paranoid about a
:exc:`KeyboardInterrupt` at just the wrong place leaving your
program in an inconsistent state, because it means that you only
have to worry about :exc:`KeyboardInterrupt` at the exact same
places where you already have to worry about :exc:`Cancelled`.
This setting has no effect if your program has registered a custom
SIGINT handler, or if :func:`run` is called from anywhere but the
main thread (this is a Python limitation), or if you use
:func:`open_signal_receiver` to catch SIGINT.
Returns:
Whatever ``async_fn`` returns.
Raises:
TrioInternalError: if an unexpected error is encountered inside Trio's
internal machinery. This is a bug and you should `let us know
<https://github.com/python-trio/trio/issues>`__.
Anything else: if ``async_fn`` raises an exception, then :func:`run`
propagates it.
"""
__tracebackhide__ = True
# Do error-checking up front, before we enter the TrioInternalError
# try/catch
#
# It wouldn't be *hard* to support nested calls to run(), but I can't
# think of a single good reason for it, so let's be conservative for
# now:
if hasattr(GLOBAL_RUN_CONTEXT, "runner"):
raise RuntimeError("Attempted to call run() from inside a run()")
if clock is None:
clock = SystemClock()
instruments = list(instruments)
io_manager = TheIOManager()
system_context = copy_context()
system_context.run(current_async_library_cvar.set, "trio")
runner = Runner(
clock=clock,
instruments=instruments,
io_manager=io_manager,
system_context=system_context,
)
GLOBAL_RUN_CONTEXT.runner = runner
locals()[LOCALS_KEY_KI_PROTECTION_ENABLED] = True
# KI handling goes outside the core try/except/finally to avoid a window
# where KeyboardInterrupt would be allowed and converted into an
# TrioInternalError:
try:
with ki_manager(
runner.deliver_ki, restrict_keyboard_interrupt_to_checkpoints
):
try:
with closing(runner):
with runner.entry_queue.wakeup.wakeup_on_signals():
# The main reason this is split off into its own
# function is just to get rid of this extra
# indentation.
run_impl(runner, async_fn, args)
except TrioInternalError:
raise
except BaseException as exc:
raise TrioInternalError(
"internal error in Trio - please file a bug!"
> ) from exc
E trio.TrioInternalError: internal error in Trio - please file a bug!
/usr/lib64/python3.6/site-packages/trio/_core/_run.py:1796: TrioInternalError
======================= 1 failed, 12 passed, 2 xfailed, 38 error in 0.98 seconds ========================
* ERROR: dev-python/pytest-trio-0.5.2::guru failed (test phase):
* Tests fail with python3.6
*
* Call stack:
* ebuild.sh, line 125: Called src_test
* environment, line 2957: Called distutils-r1_src_test
* environment, line 1265: Called _distutils-r1_run_foreach_impl 'python_test'
* environment, line 465: Called python_foreach_impl 'distutils-r1_run_phase' 'python_test'
* environment, line 2547: Called multibuild_foreach_variant '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_test'
* environment, line 2047: Called _multibuild_run '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_test'
* environment, line 2045: Called _python_multibuild_wrapper 'distutils-r1_run_phase' 'python_test'
* environment, line 853: Called distutils-r1_run_phase 'python_test'
* environment, line 1202: Called python_test
* environment, line 2899: Called die
* The specific snippet of code:
* pytest -vv || die "Tests fail with ${EPYTHON}"
*
* If you need support, post the output of `emerge --info '=dev-python/pytest-trio-0.5.2::guru'`,
* the complete build log and the output of `emerge -pqv '=dev-python/pytest-trio-0.5.2::guru'`.
* The complete build log is located at '/var/tmp/portage/dev-python/pytest-trio-0.5.2/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/dev-python/pytest-trio-0.5.2/temp/environment'.
* Working directory: '/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2'
* S: '/var/tmp/portage/dev-python/pytest-trio-0.5.2/work/pytest-trio-0.5.2'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment