Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib 2, buildPythonPackage 3, fetchPypi 4, setuptools 5, zope_interface 6, zope_schema 7, zope-cachedescriptors 8, pytz 9, webtest 10, beautifulsoup4 11, soupsieve 12, wsgiproxy2 13, six 14, mock 15, zope_testing 16, zope_testrunner 17, python 18}: 19 20buildPythonPackage rec { 21 pname = "zope-testbrowser"; 22 version = "5.6.1"; 23 24 format = "setuptools"; 25 26 src = fetchPypi { 27 pname = "zope.testbrowser"; 28 inherit version; 29 sha256 = "035bf63d9f7244e885786c3327448a7d9fff521dba596429698b8474961b05e7"; 30 }; 31 32 postPatch = '' 33 # remove test that requires network access 34 substituteInPlace src/zope/testbrowser/tests/test_doctests.py \ 35 --replace "suite.addTests(wire)" "" 36 ''; 37 38 propagatedBuildInputs = [ 39 setuptools 40 zope_interface 41 zope_schema 42 zope-cachedescriptors 43 pytz 44 webtest 45 beautifulsoup4 46 soupsieve 47 wsgiproxy2 48 six 49 ]; 50 51 nativeCheckInputs = [ 52 mock 53 zope_testing 54 zope_testrunner 55 ]; 56 57 checkPhase = '' 58 ${python.interpreter} -m zope.testrunner --test-path=src 59 ''; 60 61 pythonImportsCheck = [ 62 "zope.testbrowser" 63 "zope.testbrowser.browser" 64 "zope.testbrowser.interfaces" 65 "zope.testbrowser.testing" 66 "zope.testbrowser.wsgi" 67 ]; 68 69 meta = { 70 description = "Programmable browser for functional black-box tests"; 71 homepage = "https://github.com/zopefoundation/zope.testbrowser"; 72 license = lib.licenses.zpl21; 73 maintainers = with lib.maintainers; [ dotlambda ]; 74 }; 75}