1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 flask,
6 httpcore,
7 httpx,
8 pytest-asyncio,
9 pytest-cov-stub,
10 pytestCheckHook,
11 pythonOlder,
12 setuptools,
13 starlette,
14 trio,
15}:
16
17buildPythonPackage rec {
18 pname = "respx";
19 version = "0.22.0";
20 pyproject = true;
21
22 disabled = pythonOlder "3.7";
23
24 src = fetchFromGitHub {
25 owner = "lundberg";
26 repo = "respx";
27 tag = version;
28 hash = "sha256-T3DLNXJykSF/HXjlmQdJ2CG4d+U1eTa+XWcgtT3dhl4=";
29 };
30
31 build-system = [ setuptools ];
32
33 dependencies = [ httpx ];
34
35 nativeCheckInputs = [
36 httpcore
37 httpx
38 flask
39 pytest-asyncio
40 pytest-cov-stub
41 pytestCheckHook
42 starlette
43 trio
44 ];
45
46 disabledTests = [ "test_pass_through" ];
47
48 pythonImportsCheck = [ "respx" ];
49
50 meta = with lib; {
51 description = "Python library for mocking HTTPX";
52 homepage = "https://lundberg.github.io/respx/";
53 changelog = "https://github.com/lundberg/respx/blob/${src.tag}/CHANGELOG.md";
54 license = licenses.bsd3;
55 maintainers = with maintainers; [ fab ];
56 };
57}