|
|
|
name: Tests
|
|
|
|
|
|
|
|
on: [push, pull_request]
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
quality:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Install Node.js 18
|
|
|
|
uses: actions/setup-node@v2
|
|
|
|
with:
|
|
|
|
node-version: 18.x
|
|
|
|
cache: 'npm'
|
|
|
|
- run: npm ci
|
|
|
|
- run: npm run lint
|
|
|
|
- run: npm run test:typings
|
|
|
|
|
|
|
|
node-tests:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
matrix:
|
|
|
|
node-version: [14.x, 16.x, 18.x]
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Install Node.js ${{ matrix.node-version }}
|
|
|
|
uses: actions/setup-node@v2
|
|
|
|
with:
|
|
|
|
node-version: ${{ matrix.node-version }}
|
|
|
|
cache: 'npm'
|
|
|
|
- run: npm ci
|
|
|
|
- run: npm run test
|
|
|
|
|
|
|
|
browser-tests:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Install Node.js 18
|
|
|
|
uses: actions/setup-node@v2
|
|
|
|
with:
|
|
|
|
node-version: 18.x
|
|
|
|
cache: 'npm'
|
|
|
|
- name: Install Chrome Stable
|
|
|
|
uses: browser-actions/setup-chrome@latest
|
|
|
|
- run: npm ci
|
|
|
|
- run: npm run test:browser
|
|
|
|
|
|
|
|
react-native-tests:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Install Node.js 18
|
|
|
|
uses: actions/setup-node@v2
|
|
|
|
with:
|
|
|
|
node-version: 18.x
|
|
|
|
cache: 'npm'
|
|
|
|
- run: npm ci
|
|
|
|
- run: npm run test:react-native
|