1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 fetchpatch, 6 attrs, 7 funcsigs, 8 requests-mock, 9 pytestCheckHook, 10}: 11 12buildPythonPackage rec { 13 pname = "mock-services"; 14 version = "0.3.1"; 15 format = "setuptools"; 16 17 src = fetchFromGitHub { 18 owner = "peopledoc"; 19 repo = "mock-services"; 20 rev = version; 21 sha256 = "1rqyyfwngi1xsd9a81irjxacinkj1zf6nqfvfxhi55ky34x5phf9"; 22 }; 23 24 patches = [ 25 # Fix issues due to internal API breaking in latest versions of requests-mock 26 (fetchpatch { 27 url = "https://github.com/peopledoc/mock-services/commit/88d3a0c9ef4dd7d5e011068ed2fdbbecc4a1a03a.patch"; 28 sha256 = "0a4pwxr33kr525sp8q4mb4cr3n2b51mj2a3052lhg6brdbi4gnms"; 29 }) 30 ]; 31 32 propagatedBuildInputs = [ 33 attrs 34 funcsigs 35 requests-mock 36 ]; 37 38 nativeCheckInputs = [ pytestCheckHook ]; 39 40 disabledTests = [ 41 # require networking 42 "test_real_http_1" 43 "test_restart_http_mock" 44 "test_start_http_mock" 45 "test_stop_http_mock" 46 ]; 47 48 pythonImportsCheck = [ "mock_services" ]; 49 50 meta = with lib; { 51 description = "Mock an entire service API based on requests-mock"; 52 homepage = "https://github.com/peopledoc/mock-services"; 53 license = licenses.mit; 54 maintainers = with maintainers; [ dotlambda ]; 55 }; 56}