1{ lib
2, atomicwrites
3, buildPythonPackage
4, fetchFromGitHub
5 #, hatchling
6, ruamel-yaml
7, poetry
8, pytest
9, pytest-asyncio
10, pytestCheckHook
11, pythonOlder
12, pythonRelaxDepsHook
13, testfixtures
14}:
15
16buildPythonPackage rec {
17 pname = "pytest-golden";
18 version = "0.2.2";
19 format = "pyproject";
20
21 disabled = pythonOlder "3.7";
22
23 src = fetchFromGitHub {
24 owner = "oprypin";
25 repo = pname;
26 rev = "refs/tags/v${version}";
27 hash = "sha256-l5fXWDK6gWJc3dkYFTokI9tWvawMRnF0td/lSwqkYXE=";
28 };
29
30 pythonRelaxDeps = [
31 "testfixtures"
32 ];
33
34 nativeBuildInputs = [
35 # hatchling used for > 0.2.2
36 poetry
37 pythonRelaxDepsHook
38 ];
39
40 buildInputs = [
41 pytest
42 ];
43
44 propagatedBuildInputs = [
45 atomicwrites
46 ruamel-yaml
47 testfixtures
48 ];
49
50 checkInputs = [
51 pytest-asyncio
52 pytestCheckHook
53 ];
54
55 pythonImportsCheck = [
56 "pytest_golden"
57 ];
58
59 meta = with lib; {
60 description = "Plugin for pytest that offloads expected outputs to data files";
61 homepage = "https://github.com/oprypin/pytest-golden";
62 license = licenses.mit;
63 maintainers = with maintainers; [ fab ];
64 };
65}