1{ 2 lib, 3 allpairspy, 4 approval-utilities, 5 beautifulsoup4, 6 buildPythonPackage, 7 empty-files, 8 fetchFromGitHub, 9 mock, 10 mrjob, 11 numpy, 12 pyperclip, 13 pytest, 14 pytest-asyncio, 15 pytestCheckHook, 16 setuptools, 17 testfixtures, 18 typing-extensions, 19}: 20 21buildPythonPackage rec { 22 pname = "approvaltests"; 23 version = "14.5.0"; 24 pyproject = true; 25 26 src = fetchFromGitHub { 27 owner = "approvals"; 28 repo = "ApprovalTests.Python"; 29 tag = "v${version}"; 30 hash = "sha256-VWYl+8hS9XnvtqmokNntdKGHWSJVlGPomvAEwaBcjY8="; 31 }; 32 33 build-system = [ setuptools ]; 34 35 dependencies = [ 36 allpairspy 37 approval-utilities 38 beautifulsoup4 39 empty-files 40 mock 41 mrjob 42 pyperclip 43 pytest 44 testfixtures 45 typing-extensions 46 ]; 47 48 nativeCheckInputs = [ 49 numpy 50 pytest-asyncio 51 pytestCheckHook 52 ]; 53 54 disabledTests = [ 55 "test_preceding_whitespace" 56 "test_command_line_verify" 57 # Tests expect paths below ApprovalTests.Python directory 58 "test_received_filename" 59 "test_pytest_namer" 60 ]; 61 62 pythonImportsCheck = [ 63 "approvaltests.approvals" 64 "approvaltests.reporters.generic_diff_reporter_factory" 65 ]; 66 67 meta = { 68 description = "Assertion/verification library to aid testing"; 69 homepage = "https://github.com/approvals/ApprovalTests.Python"; 70 changelog = "https://github.com/approvals/ApprovalTests.Python/releases/tag/${src.tag}"; 71 license = lib.licenses.asl20; 72 maintainers = [ ]; 73 }; 74}