❦ 21 décembre 2013 09:29 CET, Vincent Bernat <ber...@debian.org> :

>> WebDriver is an open source tool for automated testing of webapps
>> across many browsers. It provides capabilities for navigating to web
>> pages, user input, JavaScript execution, and more. ChromeDriver is a
>> standalone server which implements WebDriver's wire protocol for
>> Chromium. It is being developed by members of the Chromium and
>> WebDriver teams.
>
> In Ubuntu, the chromium-chromedriver is built directly in the Chromium
> package. It doesn't seem to need any external tarball for that as all
> the code is included in third_party/webdriver. Therefore, it seems legit
> to turn this RFP into a wishlist bug against Chromium.

Please, find attached a patch to add Chromium WebDriver in a dedicated
package. The driver will be in /usr/lib/chromium/chromedriver2_server.

From 9fc0e58597a71e9824efa34bc4ed4f1bfc2405e8 Mon Sep 17 00:00:00 2001
From: Vincent Bernat <ber...@debian.org>
Date: Sat, 21 Dec 2013 17:03:51 +0100
Subject: [PATCH] Compile Chrome WebDriver to be used with Selenium. Closes:
 #725130.

---
 debian/changelog                           |  6 ++++++
 debian/chromium-chromedriver.install       |  1 +
 debian/chromium.install                    |  3 ++-
 debian/control                             | 17 +++++++++++++++++
 debian/patches/chromedriver-revision.patch | 11 +++++++++++
 debian/patches/series                      |  1 +
 debian/rules                               |  1 +
 7 files changed, 39 insertions(+), 1 deletion(-)
 create mode 100644 debian/chromium-chromedriver.install
 create mode 100644 debian/patches/chromedriver-revision.patch

diff --git a/debian/changelog b/debian/changelog
index 7eaadf475e56..f69c765df095 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+chromium-browser (31.0.1650.63-2) UNRELEASED; urgency=low
+
+  * Compile Chrome WebDriver to be used with Selenium. Closes: #725130.
+
+ -- Vincent Bernat <ber...@debian.org>  Sat, 21 Dec 2013 16:59:55 +0100
+
 chromium-browser (31.0.1650.63-1) unstable; urgency=medium
 
   * New upstream stable release:
diff --git a/debian/chromium-chromedriver.install b/debian/chromium-chromedriver.install
new file mode 100644
index 000000000000..5358615ff7ad
--- /dev/null
+++ b/debian/chromium-chromedriver.install
@@ -0,0 +1 @@
+usr/lib/chromium/chromedriver2_server
diff --git a/debian/chromium.install b/debian/chromium.install
index bee8972c8e87..3c40da8b18d1 100644
--- a/debian/chromium.install
+++ b/debian/chromium.install
@@ -1,6 +1,7 @@
 debian/tmp/etc
 debian/tmp/usr/bin
-debian/tmp/usr/lib/chromium/chrom*
+debian/tmp/usr/lib/chromium/chromium
+debian/tmp/usr/lib/chromium/chrome-sandbox
 debian/tmp/usr/lib/chromium/*.pak
 debian/tmp/usr/lib/chromium/resources/extension/demo/library.js
 debian/tmp/usr/lib/chromium/content_resources.pak
diff --git a/debian/control b/debian/control
index 4f5fb90f6647..38bef74ad2c0 100644
--- a/debian/control
+++ b/debian/control
@@ -161,3 +161,20 @@ Description: page inspector for the chromium browser
  .
  This package contains 'inspector', allowing web developers to inspect any
  element of a web page at runtime (HTML, JavaScript, CSS, ..).
+
+Package: chromium-chromedriver
+Architecture: i386 amd64
+Depends: ${shlibs:Depends}, ${misc:Depends}, chromium (= ${binary:Version})
+Description: WebDriver driver for the Chromium Browser
+ Chromedriver serves as a bridge between Chromium Browser and Selenium
+ WebDriver.
+ .
+ See http://code.google.com/p/selenium/wiki/ChromeDriver for details.
+
+Package: chromium-chromedriver-dbg
+Architecture: i386 amd64
+Section: debug
+Priority: extra
+Depends: ${shlibs:Depends}, ${misc:Depends}, chromium-chromedriver (= ${binary:Version})
+Description: chromium-chromedriver debug symbols
+ Debug symbols for the chromium-chromedriver package.
diff --git a/debian/patches/chromedriver-revision.patch b/debian/patches/chromedriver-revision.patch
new file mode 100644
index 000000000000..c502c1fea908
--- /dev/null
+++ b/debian/patches/chromedriver-revision.patch
@@ -0,0 +1,11 @@
+--- a/src/chrome/test/chromedriver/embed_version_in_cpp.py
++++ b/src/chrome/test/chromedriver/embed_version_in_cpp.py
+@@ -25,7 +25,7 @@
+   options, args = parser.parse_args()
+ 
+   version = open(options.version_file, 'r').read().strip()
+-  revision = lastchange.FetchVersionInfo(None).revision.strip()
++  revision = "undef"
+   global_string_map = {
+       'kChromeDriverVersion': version + '.' + revision
+   }
diff --git a/debian/patches/series b/debian/patches/series
index ac5b58bacb94..6162e4002111 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -19,3 +19,4 @@ third-party-cookies-off-by-default.patch
 ps-print.patch
 window-placement.patch
 no-promo.patch
+chromedriver-revision.patch
diff --git a/debian/rules b/debian/rules
index 20d6799199c8..b0baaeed84a4 100755
--- a/debian/rules
+++ b/debian/rules
@@ -310,6 +310,7 @@ GYP_DEFINES += use_pulseaudio=1
 BUILD_TARGETS := \
 	chrome \
 	chrome_sandbox \
+	chromedriver2_server \
 	$(NULL)
 
 TESTS_TARGETS := \
-- 
1.8.5.2

-- 
Avoid multiple exits from loops.
            - The Elements of Programming Style (Kernighan & Plauger)

Attachment: signature.asc
Description: PGP signature

Reply via email to