replace flaky with pytest-rerunfailures (#10335)

* Revert "limit pytest version to <8.1 (#10334)"

This reverts commit bc95b650a4.

* replace flaky with pytest-rerunfailures

`flaky` project seems to be unmaintained (see box/flaky#192).
`pytest-rerunfailures` seems to be maintained under `pytest-dev`
and tests 5 minor releases of pytest.

Note that this plugin is not compatible with `flaky` plugin.
You will have to uninstall it if it exists.
This commit is contained in:
skshetry
2024-03-04 11:12:45 +05:45
committed by GitHub
parent e5ee82bc99
commit 3b2e031e60
5 changed files with 6 additions and 7 deletions
@@ -1,7 +1,7 @@
import pytest
@pytest.mark.flaky(max_runs=3, min_passes=1)
@pytest.mark.flaky(reruns=3)
def test_get(bench_dvc, tmp_dir, scm, dvc, make_dataset, remote):
dataset = make_dataset(
cache=False, files=False, dvcfile=True, commit=True, remote=True
@@ -1,7 +1,7 @@
import pytest
@pytest.mark.flaky(max_runs=3, min_passes=1)
@pytest.mark.flaky(reruns=3)
def test_import(bench_dvc, tmp_dir, scm, dvc, make_dataset, remote):
dataset = make_dataset(
cache=False, files=False, dvcfile=True, commit=True, remote=True
+2 -2
View File
@@ -102,8 +102,8 @@ tests = [
"beautifulsoup4>=4.4",
"dvc-ssh",
"filelock",
"flaky",
"pytest>=7,<8.1",
"pytest>=7,<9",
"pytest-rerunfailures",
"pytest-cov>=4.1.0",
"pytest-docker>=1,<4",
"pytest-mock",
+1 -1
View File
@@ -123,7 +123,7 @@ def pytest_runtest_setup(item):
if "CI" in os.environ and item.get_closest_marker("needs_internet") is not None:
# remotes that need internet connection might be flaky,
# so we rerun them in case it fails.
item.add_marker(pytest.mark.flaky(max_runs=5, min_passes=1))
item.add_marker(pytest.mark.flaky(reruns=5))
@pytest.fixture(scope="session")
+1 -2
View File
@@ -3,7 +3,6 @@ import os
import shutil
import pytest
from flaky.flaky_decorator import flaky
import dvc_data
from dvc.cli import main
@@ -207,7 +206,7 @@ def test_verify_hashes(tmp_dir, scm, dvc, mocker, tmp_path_factory, local_remote
assert hash_spy.call_count == 10
@flaky(max_runs=3, min_passes=1)
@pytest.mark.flaky(reruns=3)
@pytest.mark.parametrize("erepo_type", ["git_dir", "erepo_dir"])
def test_pull_git_imports(request, tmp_dir, dvc, scm, erepo_type):
erepo = request.getfixturevalue(erepo_type)