@@ -29,41 +29,51 @@ matrix:
2929
3030 - name : " WASM via emscripten, stdweb, wasm-bindgen and WASI"
3131 rust : nightly
32+ addons :
33+ firefox : 69.0
34+ chrome : stable
3235 install :
33- - echo $PATH
3436 - rustup target add wasm32-unknown-unknown
3537 - rustup target add wasm32-unknown-emscripten
3638 - rustup target add asmjs-unknown-emscripten
3739 - rustup target add wasm32-wasi
38- # Install pre-built binaries
39- - wget https://github.com/koute/cargo-web/releases/download/0.6.26/cargo-web-x86_64-unknown-linux-gnu.gz -O cargo-web.gz
40- - wget https://github.com/CraneStation/wasmtime/releases/download/v0.3.0/wasmtime-v0.3.0-x86_64-linux.tar.xz -O wasmtime.tar.xz
41- - wget https://github.com/rustwasm/wasm-pack/releases/download/v0.8.1/wasm-pack-v0.8.1-x86_64-unknown-linux-musl.tar.gz -O wasm-pack.tar.gz
40+ # Get geckodriver
41+ - wget -O geckodriver.tar.gz https://github.com/mozilla/geckodriver/releases/download/v0.25.0/geckodriver-v0.25.0-linux64.tar.gz
42+ - tar -xzf geckodriver.tar.gz
43+ # Get chromedirver (we cannot pin chrome version, so don't pin chromedriver version)
44+ - export VERSION=$(wget -q -O - https://chromedriver.storage.googleapis.com/LATEST_RELEASE)
45+ - wget -O chromedriver.zip https://chromedriver.storage.googleapis.com/$VERSION/chromedriver_linux64.zip
46+ - unzip chromedriver.zip
47+ # Get cargo-web
48+ - wget -O cargo-web.gz https://github.com/koute/cargo-web/releases/download/0.6.26/cargo-web-x86_64-unknown-linux-gnu.gz
4249 - gunzip cargo-web.gz
4350 - chmod +x cargo-web
44- - mkdir wasm-pack wasmtime
45- - tar -xzf wasm-pack.tar.gz --strip-components=1 -C wasm-pack
46- - tar -xf wasmtime.tar.xz --strip-components=1 -C wasmtime
47- - mv cargo-web wasmtime/wasmtime wasm-pack/wasm-pack $HOME/.cargo/bin
48- addons :
49- firefox : latest
50- chrome : stable
51+ # Get wasmtime
52+ - wget -O wasmtime.tar.xz https://github.com/CraneStation/wasmtime/releases/download/v0.3.0/wasmtime-v0.3.0-x86_64-linux.tar.xz
53+ - tar -xf wasmtime.tar.xz --strip-components=1
54+ # Get wasm-bindgen-test-runner
55+ - wget -O wasm-bindgen.tar.gz https://github.com/rustwasm/wasm-bindgen/releases/download/0.2.50/wasm-bindgen-0.2.50-x86_64-unknown-linux-musl.tar.gz
56+ - tar -xzf wasm-bindgen.tar.gz --strip-components=1
57+ # Place the runner binaries in our PATH
58+ - mv cargo-web wasmtime wasm-bindgen-test-runner $HOME/.cargo/bin
59+ # Download and setup emscripten
60+ - cargo web prepare-emscripten
5161 env : EMCC_CFLAGS="-s ERROR_ON_UNDEFINED_SYMBOLS=0"
5262 script :
53- # Running emscripten test binaries fails (see rust-lang/rust#63649).
63+ # We cannot run emscripten test binaries (see rust-lang/rust#63649).
5464 # However, we can still build and link all tests to make sure that works.
5565 # This is actually useful as it finds stuff such as rust-random/rand#669
5666 - cargo web test --target wasm32-unknown-emscripten --no-run
5767 - cargo web test --target asmjs-unknown-emscripten --no-run
5868 # wasi tests
5969 - cargo test --target wasm32-wasi
60- # wasm- stdweb tests
70+ # stdweb tests (Node, Chrome)
6171 - cargo web test --nodejs --target=wasm32-unknown-unknown --features=stdweb
6272 - cargo web test --target=wasm32-unknown-unknown --features=stdweb
63- # wasm-bindgen tests
64- - wasm-pack test --node -- --features=wasm-bindgen
65- - wasm-pack test --headless --firefox -- --features=test-in-browser
66- - wasm-pack test --headless --chrome -- --features=test-in-browser
73+ # wasm-bindgen tests (Node, Firefox, Chrome)
74+ - cargo test --target wasm32-unknown-unknown --features=wasm-bindgen
75+ - GECKODRIVER=$PWD/geckodriver cargo test --target wasm32-unknown-unknown --features=test-in-browser
76+ - CHROMEDRIVER=$PWD/chromedriver cargo test --target wasm32-unknown-unknown --features=test-in-browser
6777
6878 - name : " Linux, nightly, docs"
6979 rust : nightly
0 commit comments