diff --git a/tests/test_procrunner_system.py b/tests/test_procrunner_system.py index 66759df..cbd126d 100644 --- a/tests/test_procrunner_system.py +++ b/tests/test_procrunner_system.py @@ -96,17 +96,22 @@ assert result.returncode -@pytest.mark.xfail(sys.version_info >= (3, 9), reason="sometimes fails on 3.9.0rc1") def test_timeout_behaviour(tmp_path): command = (sys.executable, "-c", "import time; time.sleep(5)") start = timeit.default_timer() - with pytest.raises(subprocess.TimeoutExpired) as te: - procrunner.run( - command, - timeout=0.1, - working_directory=tmp_path, - raise_timeout_exception=True, - ) + try: + with pytest.raises(subprocess.TimeoutExpired) as te: + procrunner.run( + command, + timeout=0.1, + working_directory=tmp_path, + raise_timeout_exception=True, + ) + except RuntimeError: + # This test sometimes fails with a RuntimeError. + runtime = timeit.default_timer() - start + assert runtime < 3 + return runtime = timeit.default_timer() - start assert runtime < 3 assert te.value.stdout == b""