1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pytest,
6 pytestCheckHook,
7 setuptools,
8}:
9
10buildPythonPackage rec {
11 pname = "pytest-retry";
12 version = "1.7.0";
13 pyproject = true;
14
15 src = fetchFromGitHub {
16 owner = "str0zzapreti";
17 repo = "pytest-retry";
18 tag = version;
19 hash = "sha256-Gf+L7zvC1FGAm0Wd6E6fV3KynassoGyHSD0CPgEJ02k=";
20 };
21
22 build-system = [ setuptools ];
23
24 dependencies = [ pytest ];
25
26 nativeCheckInputs = [ pytestCheckHook ];
27
28 pythonImportsCheck = [ "pytest_retry" ];
29
30 meta = {
31 description = "Plugin for retrying flaky tests in CI environments";
32 longDescription = ''
33 This plugin adds a decorator to mark tests as flaky: `@pytest.mark.flaky(retries=3, delay=1)`.
34 '';
35 homepage = "https://github.com/str0zzapreti/pytest-retry";
36 changelog = "https://github.com/str0zzapreti/pytest-retry/releases/tag/${src.tag}";
37 license = lib.licenses.mit;
38 maintainers = with lib.maintainers; [ fliegendewurst ];
39 };
40}