1{ lib 2, buildPythonPackage 3, isPy27 4, fetchFromGitHub 5, selenium 6, cssselect 7, django 8, flask 9, lxml 10, pytestCheckHook 11, zope-testbrowser 12}: 13 14buildPythonPackage rec { 15 pname = "splinter"; 16 version = "0.18.1"; 17 18 disabled = isPy27; 19 20 format = "setuptools"; 21 22 src = fetchFromGitHub { 23 owner = "cobrateam"; 24 repo = "splinter"; 25 rev = "refs/tags/${version}"; 26 hash = "sha256-5d39e9omc223ugBfVMIsMZh8+NPVxc6q7p2gwZ0fF0o="; 27 }; 28 29 propagatedBuildInputs = [ 30 selenium 31 ]; 32 33 checkInputs = [ 34 cssselect 35 django 36 flask 37 lxml 38 pytestCheckHook 39 zope-testbrowser 40 ]; 41 42 disabledTests = [ 43 # driver is present and fails with a different error during loading 44 "test_browser_local_driver_not_present" 45 "test_local_driver_not_present" 46 ]; 47 48 disabledTestPaths = [ 49 "samples" 50 # We run neither Chromium nor Firefox nor ... 51 "tests/test_async_finder.py" 52 "tests/test_html_snapshot.py" 53 "tests/test_iframes.py" 54 "tests/test_mouse_interaction.py" 55 "tests/test_popups.py" 56 "tests/test_screenshot.py" 57 "tests/test_shadow_root.py" 58 "tests/test_webdriver.py" 59 "tests/test_webdriver_chrome.py" 60 "tests/test_webdriver_edge_chromium.py" 61 "tests/test_webdriver_firefox.py" 62 "tests/test_webdriver_remote.py" 63 ]; 64 65 pythonImportsCheck = [ "splinter" ]; 66 67 meta = with lib; { 68 description = "Browser abstraction for web acceptance testing"; 69 homepage = "https://github.com/cobrateam/splinter"; 70 license = licenses.bsd3; 71 maintainers = with maintainers; [ dotlambda ]; 72 }; 73}