Skip to content

test: migrate to built-in Node.js test runner #1064

test: migrate to built-in Node.js test runner

test: migrate to built-in Node.js test runner #1064

Workflow file for this run

name: test
permissions: {}
on:
push:
branches:
- master
pull_request:
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.1.3
- name: Install pnpm
uses: pnpm/action-setup@v3.0.0
with:
version: 9.0.6
- name: Install Node.js 20.x
uses: actions/setup-node@v4.0.2
with:
node-version: '20'
cache: 'pnpm'
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Run lint
run: pnpm lint
test_helpers:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.1.3
- name: Install pnpm
uses: pnpm/action-setup@v3.0.0
with:
version: 9.0.6
- name: Install Node.js 20.x
uses: actions/setup-node@v4.0.2
with:
node-version: '20'
cache: 'pnpm'
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Test helpers
run: pnpm test:helpers
test:
needs: lint
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, windows-latest, ubuntu-latest]
node-version: ['18', '20', '22']
steps:
- name: Setup Git
if: matrix.os == 'windows-latest'
run: git config --global core.autocrlf input
- uses: actions/checkout@v4.1.3
- name: Install pnpm
uses: pnpm/action-setup@v3.0.0
with:
version: 9.0.6
- name: Install Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4.0.2
with:
node-version: ${{ matrix.node-version }}
cache: 'pnpm'
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Run tests with coverage
run: pnpm test:coverage
- name: Publish code coverage report
if: matrix.os == 'ubuntu-latest' && matrix.node-version == '20'
uses: codecov/codecov-action@v3.1.4
with:
name: codecov