babel/.travis.yml
jugglinmike 0466504d7b Integrate Test262 (#654)
* Integrate Test262

Introduce a GNU Make target for retrieving TC-39's Test262 suite and
validating parsing of the files it contains. Interpret each file as a
parser test in accordance with that project's `INTERPRETING.md`
document. Allow for the specification of allowed failures via a
"whitelist" file so that the test suite may help prevent regressions in
this project in situations where this project has known bugs. Initialize
the "whitelist" file with a listing of all tests that are currently
failing. Extend the continuous integration environment's configuration
to automatically run these tests.

* use graceful-fs and latest yarn on travis
2017-08-06 21:20:25 -04:00

58 lines
1.6 KiB
YAML

sudo: false
language: node_js
node_js:
- "8"
- "6"
- "4"
env:
global:
- PATH=$HOME/.yarn/bin:$PATH
- JOB=test
before_install:
- curl -o- -L https://yarnpkg.com/install.sh | bash -s -- --version 0.28.4
- yarn global add greenkeeper-lockfile@1
before_script:
- greenkeeper-lockfile-update
- 'if [ "$JOB" = "babel-test" ]; then make bootstrap-babel ; fi'
- 'if [ "$JOB" = "flow-test" ]; then make bootstrap-flow ; fi'
- 'if [ "$JOB" = "test262-test" ]; then make bootstrap-test262 ; fi'
- 'if [ "$JOB" = "test" ]; then yarn run build; fi'
script:
- 'if [ "$JOB" = "test" ]; then yarn test-only; fi'
- 'if [ "$JOB" = "lint" ]; then yarn run lint && yarn run flow; fi'
- 'if [ "$JOB" = "flow-test" ]; then make test-flow; fi'
- 'if [ "$JOB" = "babel-test" ]; then make test-babel; fi'
- 'if [ "$JOB" = "test262-test" ]; then make test-test262; fi'
- 'if [ "$JOB" = "test-coverage" ]; then yarn run test-coverage; fi'
matrix:
fast_finish: true
include:
- node_js: "lts/*"
env: JOB=test-coverage
- node_js: "lts/*"
env: JOB=lint
- node_js: "lts/*"
env: JOB=babel-test
- node_js: "lts/*"
env: JOB=flow-test
- node_js: node
env: JOB=test262-test
allow_failures:
- node_js: "lts/*"
env: JOB=flow-test
after_script:
- greenkeeper-lockfile-upload
after_success:
- 'if [ "$JOB" = "babel-test" ]; then bash <(curl -s https://codecov.io/bash) -f coverage/coverage-final.json -F babel ; fi'
- 'if [ "$JOB" = "test-coverage" ]; then bash <(curl -s https://codecov.io/bash) -f coverage/coverage-final.json -F babylon ; fi'
notifications:
slack: babeljs:5Wy4QX13KVkGy9CnU0rmvgeK