1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 pytestCheckHook,
6 pythonOlder,
7 requests,
8 setuptools,
9}:
10
11buildPythonPackage rec {
12 pname = "betamax";
13 version = "0.9.0";
14 pyproject = true;
15
16 disabled = pythonOlder "3.8";
17
18 src = fetchPypi {
19 inherit pname version;
20 hash = "sha256-gjFuFnm8aHnjyDMY0Ba1S3ySJf8IxEYt5IE+IgONX5Q=";
21 };
22
23 build-system = [ setuptools ];
24
25 dependencies = [ requests ];
26
27 nativeCheckInputs = [ pytestCheckHook ];
28
29 pythonImportsCheck = [ "betamax" ];
30
31 disabledTestPaths = [
32 # Tests require network access
33 "tests/integration/test_hooks.py"
34 "tests/integration/test_placeholders.py"
35 "tests/integration/test_record_modes.py"
36 "tests/integration/test_unicode.py"
37 "tests/regression/test_gzip_compression.py"
38 "tests/regression/test_requests_2_11_body_matcher.py"
39 ];
40
41 meta = with lib; {
42 description = "VCR imitation for requests";
43 homepage = "https://betamax.readthedocs.org/";
44 changelog = "https://github.com/betamaxpy/betamax/blob/${version}/HISTORY.rst";
45 license = licenses.asl20;
46 maintainers = with maintainers; [ pSub ];
47 };
48}