summary refs log tree commit diff
diff options
context:
space:
mode:
authorGanesh Sittampalam <ganesh@earth.li>2017-01-14 10:48:38 +0000
committerGanesh Sittampalam <ganesh@earth.li>2017-01-14 10:48:38 +0000
commitf0c230c2c7cc5c88b0d80b95ca61d86d1dfb700f (patch)
tree35f0284fccfa9e7c6ad9eaf26bb22833586f4575
parentb8b18925460d0697bcd6623b2029309786180b34 (diff)
downloadnixpkgs-f0c230c2c7cc5c88b0d80b95ca61d86d1dfb700f.tar
nixpkgs-f0c230c2c7cc5c88b0d80b95ca61d86d1dfb700f.tar.gz
nixpkgs-f0c230c2c7cc5c88b0d80b95ca61d86d1dfb700f.tar.bz2
nixpkgs-f0c230c2c7cc5c88b0d80b95ca61d86d1dfb700f.tar.lz
nixpkgs-f0c230c2c7cc5c88b0d80b95ca61d86d1dfb700f.tar.xz
nixpkgs-f0c230c2c7cc5c88b0d80b95ca61d86d1dfb700f.tar.zst
nixpkgs-f0c230c2c7cc5c88b0d80b95ca61d86d1dfb700f.zip
selenium-server-standalone: restore htmlunit-driver support
It was moved to a separate project between versions 2.45 and 2.53:
https://github.com/SeleniumHQ/selenium/commit/2d3150b
-rw-r--r--pkgs/development/tools/selenium/htmlunit-driver/default.nix25
-rw-r--r--pkgs/development/tools/selenium/server/default.nix7
-rw-r--r--pkgs/top-level/all-packages.nix2
3 files changed, 31 insertions, 3 deletions
diff --git a/pkgs/development/tools/selenium/htmlunit-driver/default.nix b/pkgs/development/tools/selenium/htmlunit-driver/default.nix
new file mode 100644
index 00000000000..2fc38db1bb0
--- /dev/null
+++ b/pkgs/development/tools/selenium/htmlunit-driver/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl }:
+
+with stdenv.lib;
+
+stdenv.mkDerivation rec {
+  name = "htmlunit-driver-standalone-${version}";
+  version = "2.21";
+
+  src = fetchurl {
+    url = "https://github.com/SeleniumHQ/htmlunit-driver/releases/download/${version}/htmlunit-driver-standalone-${version}.jar";
+    sha256 = "1wrbam0hb036717z3y73lsw4pwp5sdiw2i1818kg9pvc7i3fb3yn";
+  };
+
+  unpackPhase = "true";
+
+  installPhase = "install -D $src $out/share/lib/${name}/${name}.jar";
+
+  meta = {
+    homepage = https://github.com/SeleniumHQ/htmlunit-driver;
+    description = "A WebDriver server for running Selenium tests on the HtmlUnit headless browser";
+    maintainers = with maintainers; [ coconnor offline ];
+    platforms = platforms.all;
+    license = licenses.asl20;
+  };
+}
diff --git a/pkgs/development/tools/selenium/server/default.nix b/pkgs/development/tools/selenium/server/default.nix
index fe8bf2b13b5..ca225adab6d 100644
--- a/pkgs/development/tools/selenium/server/default.nix
+++ b/pkgs/development/tools/selenium/server/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, makeWrapper, jre, jdk, gcc, xorg
-, chromedriver, chromeSupport ? true }:
+, htmlunit-driver, chromedriver, chromeSupport ? true }:
 
 with stdenv.lib;
 
@@ -25,8 +25,9 @@ in stdenv.mkDerivation rec {
     mkdir -p $out/share/lib/${name}
     cp $src $out/share/lib/${name}/${name}.jar
     makeWrapper ${jre}/bin/java $out/bin/selenium-server \
-      --add-flags "-jar $out/share/lib/${name}/${name}.jar" \
-      --add-flags ${optionalString chromeSupport "-Dwebdriver.chrome.driver=${chromedriver}/bin/chromedriver"}
+      --add-flags "-cp ${htmlunit-driver}/share/lib/${htmlunit-driver.name}/${htmlunit-driver.name}.jar:$out/share/lib/${name}/${name}.jar" \
+      --add-flags ${optionalString chromeSupport "-Dwebdriver.chrome.driver=${chromedriver}/bin/chromedriver"} \
+      --add-flags "org.openqa.grid.selenium.GridLauncher"
   '';
 
   meta = {
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 0f0085c2bca..ab9d1d692b0 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -6356,6 +6356,8 @@ in
 
   heroku = callPackage ../development/tools/heroku { };
 
+  htmlunit-driver = callPackage ../development/tools/selenium/htmlunit-driver { };
+
   hyenae = callPackage ../tools/networking/hyenae { };
 
   icestorm = callPackage ../development/tools/icestorm { };