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