e45acce928
* chore: run unit tests on node 10.15 We saw in https://github.com/puppeteer/puppeteer/issues/6548 that the `fs.promises` module was experimental in Node <10.17 and as such we introduced issues for users on 10.15. Until we can drop Node v10 (it's EOL is 30-04-20201 https://github.com/nodejs/Release#release-schedule) we should run our tests on an old Node 10 to avoid regressing in this area. * chore: helper for importing fs safely
114 lines
3.0 KiB
YAML
114 lines
3.0 KiB
YAML
language: node_js
|
|
services: xvfb
|
|
|
|
jobs:
|
|
include:
|
|
- os: 'osx'
|
|
name: 'Unit tests: macOS/Chromium'
|
|
node_js: '10.19.0'
|
|
osx_image: xcode11.4
|
|
env:
|
|
- CHROMIUM=true
|
|
before_install:
|
|
- PUPPETEER_PRODUCT=firefox npm install
|
|
script:
|
|
- ls .local-chromium .local-firefox
|
|
- npm run tsc
|
|
- npm run unit
|
|
|
|
- os: 'windows'
|
|
name: 'Unit tests: Windows/Chromium'
|
|
node_js: '10.19.0'
|
|
env:
|
|
- CHROMIUM=true
|
|
before_install:
|
|
- PUPPETEER_PRODUCT=firefox npm install
|
|
script:
|
|
- ls .local-chromium .local-firefox
|
|
- npm run tsc
|
|
- travis_retry npm run unit
|
|
|
|
# Node <10.17's fs.promises module was experimental and doesn't behave as
|
|
# expected. This problem was fixed in Node 10.19, but we run the unit tests
|
|
# through on 10.15 to make sure we don't cause any regressions when using
|
|
# fs.promises. See https://github.com/puppeteer/puppeteer/issues/6548 for an
|
|
# example.
|
|
- node_js: '10.15.0'
|
|
name: 'Node 10.15 Unit tests: Linux/Chromium'
|
|
env:
|
|
- CHROMIUM=true
|
|
before_install:
|
|
- PUPPETEER_PRODUCT=firefox npm install
|
|
script:
|
|
- npm run unit
|
|
|
|
- node_js: '10.19.0'
|
|
name: 'Unit tests [with coverage]: Linux/Chromium'
|
|
env:
|
|
- CHROMIUM=true
|
|
before_install:
|
|
- PUPPETEER_PRODUCT=firefox npm install
|
|
script:
|
|
- travis_retry npm run unit-with-coverage
|
|
- npm run assert-unit-coverage
|
|
|
|
- node_js: '12.16.3'
|
|
name: 'Unit tests [Node 12]: Linux/Chromium'
|
|
env:
|
|
- CHROMIUM=true
|
|
before_install:
|
|
- PUPPETEER_PRODUCT=firefox npm install
|
|
script:
|
|
- npm run unit
|
|
|
|
- node_js: '14.2.0'
|
|
name: 'Unit tests [Node 14]: Linux/Chromium'
|
|
env:
|
|
- CHROMIUM=true
|
|
before_install:
|
|
- PUPPETEER_PRODUCT=firefox npm install
|
|
script:
|
|
- npm run unit
|
|
|
|
- node_js: '12.16.3'
|
|
name: 'Browser tests: Linux/Chromium'
|
|
addons:
|
|
chrome: stable
|
|
env:
|
|
- CHROMIUM=true
|
|
script:
|
|
- npm run test-browser
|
|
|
|
# This bot runs all the extra checks that aren't the main Puppeteer unit tests
|
|
- node_js: '10.19.0'
|
|
name: 'Extra tests: Linux/Chromium'
|
|
env:
|
|
- CHROMIUM=true
|
|
script:
|
|
- npm run lint
|
|
# Ensure that we can generate the new docs without erroring
|
|
- npm run generate-docs
|
|
- npm run ensure-correct-devtools-protocol-revision
|
|
|
|
# This bot runs separately as it changes package.json to test puppeteer-core
|
|
# and we don't want that leaking into other bots and causing issues.
|
|
- node_js: '10.19.0'
|
|
name: 'Test bundling and install of packages'
|
|
env:
|
|
- CHROMIUM=true
|
|
script:
|
|
- npm run test-install
|
|
|
|
# Runs unit tests on Linux + Firefox
|
|
- node_js: '10.19.0'
|
|
name: 'Unit tests: Linux/Firefox'
|
|
env:
|
|
- FIREFOX=true
|
|
before_install:
|
|
- PUPPETEER_PRODUCT=firefox npm install
|
|
script:
|
|
- npm run funit
|
|
|
|
notifications:
|
|
email: false
|