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