From 5d4c135c31a79cbe399ca05e4006ecf35d36ea1a Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Thu, 2 Aug 2018 22:37:35 -0700 Subject: [PATCH] Run Chrome headless tests on CI Closes #622 --- .travis.yml | 19 ++++++++++++++++--- .../bin/wasm-bindgen-test-runner/headless.rs | 10 ++++++++++ 2 files changed, 26 insertions(+), 3 deletions(-) diff --git a/.travis.yml b/.travis.yml index 91eced91..113e6a0e 100644 --- a/.travis.yml +++ b/.travis.yml @@ -12,7 +12,12 @@ INSTALL_GECKODRIVER: &INSTALL_GECKODRIVER | curl --retry 5 -LO https://github.com/mozilla/geckodriver/releases/download/v0.21.0/geckodriver-v0.21.0-linux64.tar.gz tar xf geckodriver-v0.21.0-linux64.tar.gz - export GECKODRIVER=`pwd`/geckodriver + +INSTALL_CHROMEDRIVER: &INSTALL_CHROMEDRIVER + | + curl --retry 5 -LO https://chromedriver.storage.googleapis.com/2.41/chromedriver_linux64.zip + unzip chromedriver_linux64.zip + export CHROMEDRIVER_ARGS=--verbose DEPLOY_TO_GITHUB: &DEPLOY_TO_GITHUB before_deploy: @@ -78,10 +83,14 @@ matrix: install: - *INSTALL_NODE_VIA_NVM - *INSTALL_GECKODRIVER + - *INSTALL_CHROMEDRIVER script: - - cargo test -p web-sys --target wasm32-unknown-unknown + - export RUST_LOG=wasm_bindgen_test_runner + - CHROMEDRIVER=`pwd`/chromedriver cargo test -p web-sys --target wasm32-unknown-unknown + - GECKODRIVER=`pwd`/geckodriver cargo test -p web-sys --target wasm32-unknown-unknown addons: firefox: latest + chrome: stable if: branch = master # The `js-sys` crate's tests pass on nightly. @@ -90,10 +99,14 @@ matrix: install: - *INSTALL_NODE_VIA_NVM - *INSTALL_GECKODRIVER + - *INSTALL_CHROMEDRIVER script: - - cargo test -p js-sys --target wasm32-unknown-unknown + - export RUST_LOG=wasm_bindgen_test_runner + - CHROMEDRIVER=`pwd`/chromedriver cargo test -p js-sys --target wasm32-unknown-unknown + - GECKODRIVER=`pwd`/geckodriver cargo test -p js-sys --target wasm32-unknown-unknown addons: firefox: latest + chrome: stable if: branch = master # Tests pass on nightly using yarn diff --git a/crates/cli/src/bin/wasm-bindgen-test-runner/headless.rs b/crates/cli/src/bin/wasm-bindgen-test-runner/headless.rs index 1b2178ea..ea826c36 100644 --- a/crates/cli/src/bin/wasm-bindgen-test-runner/headless.rs +++ b/crates/cli/src/bin/wasm-bindgen-test-runner/headless.rs @@ -300,6 +300,16 @@ impl Client { } let request = json!({ "desiredCapabilities": { + "goog:chromeOptions": { + "args": [ + "headless", + // See https://stackoverflow.com/questions/50642308/ + // for what this funky `disable-dev-shm-usage` + // option is + "disable-dev-shm-usage", + "no-sandbox", + ], + }, } }); let x: Response = self.post("/session", &request)?;