1{
2 lib,
3 buildPythonPackage,
4 pythonOlder,
5 fetchPypi,
6 setuptools,
7 packaging,
8 pytest,
9 pytestCheckHook,
10}:
11
12buildPythonPackage rec {
13 pname = "pytest-rerunfailures";
14 version = "14.0";
15 format = "pyproject";
16
17 disabled = pythonOlder "3.7";
18
19 src = fetchPypi {
20 inherit pname version;
21 hash = "sha256-SkALy808ekrRUauK+sEj2Q7KOr4n+Ycl3E2XAoh9LpI=";
22 };
23
24 build-system = [ setuptools ];
25
26 buildInputs = [ pytest ];
27
28 dependencies = [ packaging ];
29
30 nativeCheckInputs = [ pytestCheckHook ];
31
32 disabledTests = [
33 # https://github.com/pytest-dev/pytest-rerunfailures/issues/267
34 "test_run_session_teardown_once_after_reruns"
35 "test_exception_matches_rerun_except_query"
36 "test_exception_not_match_rerun_except_query"
37 "test_exception_matches_only_rerun_query"
38 "test_exception_match_only_rerun_in_dual_query"
39 ];
40
41 meta = with lib; {
42 description = "Pytest plugin to re-run tests to eliminate flaky failures";
43 homepage = "https://github.com/pytest-dev/pytest-rerunfailures";
44 license = licenses.mpl20;
45 maintainers = with maintainers; [ das-g ];
46 };
47}