add capability for skipping tests to avoid solving them right now #130
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Based on https://github.com/actions/starter-workflows/blob/master/ci/node.js.yml | |
name: Build and Test | |
on: [push, pull_request] | |
jobs: | |
ci: | |
runs-on: ${{ matrix.operating-system }} | |
strategy: | |
matrix: | |
operating-system: [ubuntu-latest, windows-latest] | |
node-version: [12.x, 14.x, 16.x, 18.x, 20.x] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: 'npm' | |
- run: npm ci | |
# Ensure that we can still build in the current version of Node | |
- run: node ./bin/cake build:except-parser | |
- run: node ./bin/cake build:parser | |
# Build twice to ensure that the latest build of the compiler can still build itself | |
- run: node ./bin/cake build:except-parser | |
- run: node ./bin/cake build:parser | |
# Build the browser compiler for the headless browser test | |
- run: node ./bin/cake build:browser | |
# Build test.html, so that test:browser uses the latest tests | |
- run: node ./bin/cake doc:test | |
# Check that the git diff is clean, to ensure that the updated build output was committed | |
- run: git diff --exit-code | |
# Test | |
- run: node ./bin/cake test | |
- run: node ./bin/cake test:browser || node ./bin/cake test:browser || node ./bin/cake test:browser | |
- run: node ./bin/cake test:browser:node | |
- run: node ./bin/cake test:integrations |