1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, pythonOlder
5
6# propagates
7, allpairspy
8, beautifulsoup4
9, empty-files
10, pyperclip
11, pytest
12
13# tests
14, numpy
15, pytestCheckHook
16}:
17
18buildPythonPackage rec {
19 version = "5.4.2";
20 pname = "approvaltests";
21 format = "setuptools";
22
23 disabled = pythonOlder "3.6.1";
24
25 # no tests included in PyPI tarball
26 src = fetchFromGitHub {
27 owner = "approvals";
28 repo = "ApprovalTests.Python";
29 rev = "refs/tags/v${version}";
30 sha256 = "sha256-ZXtIM3McpfDFCaedlbJ6SU+Er5NyfI8kGnrn7sb1V5M=";
31 };
32
33 propagatedBuildInputs = [
34 allpairspy
35 beautifulsoup4
36 empty-files
37 pyperclip
38 pytest
39 ];
40
41 checkInputs = [
42 numpy
43 pytestCheckHook
44 ];
45
46 disabledTests = [
47 # tests expects paths below ApprovalTests.Python directory
48 "test_received_filename"
49 "test_pytest_namer"
50 ];
51
52 pythonImportsCheck = [
53 "approvaltests.approvals"
54 "approvaltests.reporters.generic_diff_reporter_factory"
55 ];
56
57 meta = with lib; {
58 description = "Assertion/verification library to aid testing";
59 homepage = "https://github.com/approvals/ApprovalTests.Python";
60 license = licenses.asl20;
61 maintainers = [ maintainers.marsam ];
62 };
63}