pytest-random-order icon indicating copy to clipboard operation
pytest-random-order copied to clipboard

Regression in `--failed-first`?

Open eykd opened this issue 7 months ago • 0 comments

#28 appears to have fixed a problem with the --failed-first option in 0.8.0, but --failed-first breaks for me in the latest version with the following traceback:

$ pytest --failed-first
=============================================================================== test session starts ================================================================================
platform darwin -- Python 3.10.13, pytest-7.4.3, pluggy-1.3.0
Test order randomisation NOT enabled. Enable with --random-order or --random-order-bucket=<bucket_type>
rootdir: [...]
configfile: pytest.ini
plugins: random-order-1.1.0, anyio-4.0.0, cov-4.1.0, vcr-1.0.2, asyncio-0.21.1, hypothesis-6.88.3, Faker-19.13.0, profiling-1.7.0, xdist-3.3.1
asyncio: mode=auto
collected 355 items
run-last-failure: rerun previous 21 failures first
INTERNALERROR> Traceback (most recent call last):
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/_pytest/main.py", line 271, in wrap_session
INTERNALERROR>     session.exitstatus = doit(config, session) or 0
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/_pytest/main.py", line 324, in _main
INTERNALERROR>     config.hook.pytest_collection(session=session)
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/pluggy/_hooks.py", line 493, in __call__
INTERNALERROR>     return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/pluggy/_manager.py", line 115, in _hookexec
INTERNALERROR>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/pluggy/_callers.py", line 152, in _multicall
INTERNALERROR>     return outcome.get_result()
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/pluggy/_result.py", line 114, in get_result
INTERNALERROR>     raise exc.with_traceback(exc.__traceback__)
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/pluggy/_callers.py", line 77, in _multicall
INTERNALERROR>     res = hook_impl.function(*args)
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/_pytest/main.py", line 335, in pytest_collection
INTERNALERROR>     session.perform_collect()
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/_pytest/main.py", line 678, in perform_collect
INTERNALERROR>     hook.pytest_collection_modifyitems(
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/pluggy/_hooks.py", line 493, in __call__
INTERNALERROR>     return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/pluggy/_manager.py", line 115, in _hookexec
INTERNALERROR>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/pluggy/_callers.py", line 152, in _multicall
INTERNALERROR>     return outcome.get_result()
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/pluggy/_result.py", line 114, in get_result
INTERNALERROR>     raise exc.with_traceback(exc.__traceback__)
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/pluggy/_callers.py", line 77, in _multicall
INTERNALERROR>     res = hook_impl.function(*args)
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/random_order/plugin.py", line 72, in pytest_collection_modifyitems
INTERNALERROR>     process_failed_first_last_failed(session, config, items)
INTERNALERROR>   File "[...]/.pyenv/versions/3.10.13/envs/[...]/lib/python3.10/site-packages/random_order/cache.py", line 28, in process_failed_first_last_failed
INTERNALERROR>     raise NotImplementedError()
INTERNALERROR> NotImplementedError

============================================================================== no tests ran in 1.18s ===============================================================================

eykd avatar Nov 22 '23 19:11 eykd