dart-sdk/.travis.yml
Vijay Menon 9732138317 Testing support for FF and Safari
Also travis support for testing FF.  See:

https://travis-ci.org/dart-lang/sdk/builds/159331789

On FF 48, 1965 out of 1979 tests are passing.  Run locally:
DDC_BROWSERS=Firefox npm test

On Safari 10 (tech preview), it fails immediately due to a static method named "caller".  We disallow it as a field, but not a method right now.  If I hack that out, 1972 out of 1979 tests appear to pass.

Run locally by installing tech preview and running:
DDC_BROWSERS=Safari SAFARI_BIN=/Applications/Safari\ Technology\ Preview.app/Contents/MacOS/Safari\ Technology\ Preview npm test
R=jmesserly@google.com, rnystrom@google.com

Review URL: https://codereview.chromium.org/2334763002 .
2016-09-14 08:41:43 -07:00

77 lines
2.4 KiB
YAML

language: dart
sudo: required
dist: trusty
dart:
- dev
cache:
directories:
- $HOME/.npm
- $HOME/.nvm
- $HOME/.pub-cache/hosted
- pkg/dev_compiler/node_modules
addons:
firefox: latest
before_install:
# g++4.8.1 setup
- if [ "$CXX" == "g++" ]; then sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test; fi
# clang 3.4 setup
- if [ "$CXX" == "clang++" ]; then sudo add-apt-repository -y ppa:h-rayflood/llvm; fi
- sudo apt-get update -qq
# g++4.8.1 install
- if [ "$CXX" = "g++" ]; then sudo apt-get install -qq g++-4.8; fi
- if [ "$CXX" = "g++" ]; then export CXX="g++-4.8"; fi
# clang 3.4 install
- if [ "$CXX" == "clang++" ]; then sudo apt-get install --allow-unauthenticated -qq clang-3.4; fi
- if [ "$CXX" == "clang++" ]; then export CXX="clang++-3.4"; fi
- if [ "$CXX" ]; then $CXX --version ; fi
# Install Depot Tools
- git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
- export PATH=`pwd`/depot_tools:"$PATH"
# Checkout everything if we're building the SDK
- 'gclient config --spec=''solutions = [ { "name": ".", "url": "git@github.com:dart-lang/sdk.git", "deps_file": "DEPS", "managed": False, "custom_vars": { "dart_root": "." } } ]'''
- if [ "$CXX" ]; then gclient sync ; fi
# If a C++ compiler is set, built the SDK - else keep the preinstalled.
- if [ "$CXX" ]; then ./tools/build.py -m release create_sdk ; fi
- if [ "$CXX" ]; then export PATH=`pwd`/out/ReleaseX64/dart-sdk/bin:"$PATH" ; fi
- dart --version
# DDC setup
- cd pkg/dev_compiler
- pub global activate dart_coveralls
- export CHROME_CANARY_BIN=`./tool/get_chrome_canary.sh`
- export DISPLAY=:99.0
- sh -e /etc/init.d/xvfb start
before_script:
# Node modules used by DDC
- nvm install 5.5.0
- npm install
script:
# Run DDC tests
- if [[ -z "$TEST" ]]; then ./tool/presubmit.sh ; fi
- if [[ "$TEST" == coverage ]]; then ./tool/build_sdk.sh && ./tool/coverage.sh ; fi
- if [[ "$TEST" == node ]]; then ./tool/node_test.sh ; fi
env:
- ANALYZER=master
- ANALYZER=master DDC_BROWSERS=Firefox
- ANALYZER=master CXX=g++
- ANALYZER=master CXX=clang++
- TEST=coverage
- TEST=node
matrix:
allow_failures:
- env: TEST=node
- env: ANALYZER=master DDC_BROWSERS=Firefox
- env: ANALYZER=master CXX=clang++
notifications:
email:
recipients:
- dev-compiler+buildbot@dartlang.org
on_failure: change