chore: Switch to vitest for testing #387
Workflow file for this run
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
name: Test PR | |
env: | |
VCPKG_BINARY_SOURCES: "clear;x-gha,readwrite" | |
on: | |
pull_request: | |
push: | |
jobs: | |
build: | |
runs-on: ubuntu-24.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
node: [18, 20, 22] | |
name: Node ${{ matrix.node }} sample | |
steps: | |
- name: Checkout Sources | |
uses: actions/checkout@v4 | |
- name: Install NodeJS | |
uses: actions/setup-node@v4 | |
with: | |
node-version: ${{ matrix.node }} | |
registry-url: "https://registry.npmjs.org" | |
scope: "@hpcc-js" | |
- name: Install OS Dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y build-essential | |
sudo apt-get install -y git cmake ninja-build wget zip | |
sudo apt-get install -y gcc-multilib g++-multilib pkg-config autoconf bison libtool flex | |
sudo apt-get install -y python3 python3-pip | |
- name: Export GitHub Actions cache environment variables | |
uses: actions/github-script@v7 | |
with: | |
script: | | |
core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || ''); | |
core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || ''); | |
- name: Install Dependencies | |
run: | | |
npm ci | |
npx playwright install chromium --with-deps | |
npm run install-build-deps | |
- name: Lint | |
run: | | |
npm run lint | |
- name: Build | |
run: | | |
npm run build | |
- name: Test | |
run: | | |
npm run test | |
- name: Calculate Coverage | |
if: ${{ matrix.node == 20 }} | |
run: | | |
npm run coverage | |
- name: Upload error logs | |
if: ${{ failure() || cancelled() }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ matrix.node }}-logs | |
path: | | |
./vcpkg/buildtrees/**/*.log | |
./build/**/*.log |