1{ stdenv
2, buildPythonPackage
3, fetchPypi
4, isPy27
5, nose
6, webob
7, six
8, beautifulsoup4
9, waitress
10, mock
11, pyquery
12, wsgiproxy2
13, PasteDeploy
14}:
15
16buildPythonPackage rec {
17 version = "2.0.32";
18 pname = "webtest";
19 disabled = isPy27; # paste.deploy is not longer a valid import
20
21 src = fetchPypi {
22 pname = "WebTest";
23 inherit version;
24 sha256 = "4221020d502ff414c5fba83c1213985b83219cb1cc611fe58aa4feaf96b5e062";
25 };
26
27 preConfigure = ''
28 substituteInPlace setup.py --replace "nose<1.3.0" "nose"
29 '';
30
31 propagatedBuildInputs = [ webob six beautifulsoup4 waitress ];
32
33 checkInputs = [ nose mock PasteDeploy wsgiproxy2 pyquery ];
34
35 # Some of the tests use localhost networking.
36 __darwinAllowLocalNetworking = true;
37
38 meta = with stdenv.lib; {
39 description = "Helper to test WSGI applications";
40 homepage = "https://webtest.readthedocs.org/en/latest/";
41 license = licenses.mit;
42 };
43
44}