name: CI on: pull_request: paths-ignore: - 'build/**' - 'docs/**' - 'files/**' permissions: contents: read jobs: test: name: Lint, Unit, Unit addons, Circular dependencies & Examples testing runs-on: ubuntu-latest steps: - name: Git checkout uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 - name: Install Node uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5 with: node-version: 22 cache: 'npm' - name: Install dependencies run: npm ci - name: === Lint testing === run: npm run lint - name: === Unit testing === run: npm run test-unit - name: === Unit addons testing === run: npm run test-unit-addons - name: === Examples ready for release === run: npm run test-e2e-cov e2e: name: E2E testing runs-on: ${{ matrix.os }} timeout-minutes: 20 strategy: fail-fast: false matrix: os: [ windows-latest ] CI: [ 0, 1, 2, 3 ] env: CI: ${{ matrix.CI }} steps: - name: Git checkout uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5 - name: Install Node uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5 with: node-version: 22 cache: 'npm' - name: Install dependencies run: npm ci - name: Build run: npm run build-module - name: === E2E testing === run: npm run test-e2e - name: Upload output screenshots uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4 if: always() with: name: Output screenshots-${{ matrix.os }}-${{ matrix.CI }} path: test/e2e/output-screenshots if-no-files-found: ignore