From ac363101fc0f3d1cc600197fe3909827d0a7dc02 Mon Sep 17 00:00:00 2001 From: Aurimas Vinckevicius Date: Mon, 30 Mar 2015 23:09:14 -0500 Subject: [PATCH 1/2] Always use latest Firefox version and echo it for tests Don't echo version on Windows, because it hangs Firefox Also add testing with Firefox Beta (and prior ESR, but commented out for now, since we don't support it and we know it breaks) --- .travis.yml | 19 +++++++++++++------ test/runtests.sh | 5 +++++ 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/.travis.yml b/.travis.yml index 4e0365777..84c005e71 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,15 +2,22 @@ language: cpp compiler: - gcc env: - matrix: - - FIREFOXVERSION="36.0.1" - - FIREFOXVERSION="31.5.0esr" + - FX_PATH_SUFFIX="" + - FX_PATH_SUFFIX="-esr" + - FX_PATH_SUFFIX="-beta" +# - FX_PATH_SUFFIX="-prior-esr" +matrix: + fast_finish: true + allow_failures: + - env: FX_PATH_SUFFIX="-beta" + - env: FX_PATH_SUFFIX="-prior-esr" notifications: email: false -before_install: +install: + - wget -r -l1 -np -nd -R "index.html*" "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/latest${FX_PATH_SUFFIX}/linux-x86_64/en-US/?F=0&P=*.tar.*" + - tar -xf firefox-*.tar.* +before_script: - export DISPLAY=:99.0 - sh -e /etc/init.d/xvfb start - - wget http://ftp.mozilla.org/pub/firefox/releases/${FIREFOXVERSION}/linux-x86_64/en-US/firefox-${FIREFOXVERSION}.tar.bz2 - - tar -xjf firefox-${FIREFOXVERSION}.tar.bz2 script: - test/runtests.sh -x firefox/firefox diff --git a/test/runtests.sh b/test/runtests.sh index 90f831001..27cf5b633 100755 --- a/test/runtests.sh +++ b/test/runtests.sh @@ -77,6 +77,11 @@ user_pref("extensions.zotero.firstRunGuidance", false); user_pref("extensions.zotero.firstRun2", false); EOF + +if [ -z $IS_CYGWIN ]; then + echo "`MOZ_NO_REMOTE=1 NO_EM_RESTART=1 \"$FX_EXECUTABLE\" -v`" +fi + makePath FX_PROFILE "$PROFILE" MOZ_NO_REMOTE=1 NO_EM_RESTART=1 "$FX_EXECUTABLE" -profile "$FX_PROFILE" \ -chrome chrome://zotero-unit/content/runtests.html -test "$TESTS" $FX_ARGS From f6510419cbe32832a76a556564deb0457199d53c Mon Sep 17 00:00:00 2001 From: Aurimas Vinckevicius Date: Mon, 30 Mar 2015 23:52:38 -0500 Subject: [PATCH 2/2] Skip test for "recognizePDF without DOI" on Travis-CI Breaks due to CAPTCHA when tests are run frequently --- chrome/content/zotero/xpcom/zotero.js | 1 + components/zotero-service.js | 4 ++++ test/runtests.sh | 6 +++++- test/tests/recognizePDF.js | 2 ++ 4 files changed, 12 insertions(+), 1 deletion(-) diff --git a/chrome/content/zotero/xpcom/zotero.js b/chrome/content/zotero/xpcom/zotero.js index 799156335..221765c0a 100644 --- a/chrome/content/zotero/xpcom/zotero.js +++ b/chrome/content/zotero/xpcom/zotero.js @@ -210,6 +210,7 @@ Components.utils.import("resource://gre/modules/Services.jsm"); if (options) { if (options.openPane) this.openPane = true; + if (options.noUserInput) this.noUserInput = true; } this.mainThread = Components.classes["@mozilla.org/thread-manager;1"].getService().mainThread; diff --git a/components/zotero-service.js b/components/zotero-service.js index 389185bc5..111005c64 100644 --- a/components/zotero-service.js +++ b/components/zotero-service.js @@ -447,6 +447,10 @@ ZoteroCommandLineHandler.prototype = { } } } + + if (cmdLine.handleFlag("ZoteroNoUserInput", false)) { + zInitOptions.noUserInput = true; + } }, contractID: "@mozilla.org/commandlinehandler/general-startup;1?type=zotero", diff --git a/test/runtests.sh b/test/runtests.sh index 27cf5b633..6da6f8796 100755 --- a/test/runtests.sh +++ b/test/runtests.sh @@ -77,11 +77,15 @@ user_pref("extensions.zotero.firstRunGuidance", false); user_pref("extensions.zotero.firstRun2", false); EOF - +# -v flag on Windows makes Firefox process hang if [ -z $IS_CYGWIN ]; then echo "`MOZ_NO_REMOTE=1 NO_EM_RESTART=1 \"$FX_EXECUTABLE\" -v`" fi +if [ "$TRAVIS" = true ]; then + FX_ARGS="$FX_ARGS --ZoteroNoUserInput" +fi + makePath FX_PROFILE "$PROFILE" MOZ_NO_REMOTE=1 NO_EM_RESTART=1 "$FX_EXECUTABLE" -profile "$FX_PROFILE" \ -chrome chrome://zotero-unit/content/runtests.html -test "$TESTS" $FX_ARGS diff --git a/test/tests/recognizePDF.js b/test/tests/recognizePDF.js index 670422748..2bbb07368 100644 --- a/test/tests/recognizePDF.js +++ b/test/tests/recognizePDF.js @@ -38,6 +38,8 @@ describe("PDF Recognition", function() { }); it("should recognize a PDF without a DOI", function() { + if (Zotero.noUserInput) this.skip(); // CAPTCHAs make this fail + this.timeout(30000); // Import the PDF var testdir = getTestDataDirectory();