Fix unit test ci (#2441) #3590
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: CI | |
on: | |
push: | |
branches: | |
- main | |
- dev/* | |
pull_request: | |
branches: | |
- main | |
- dev/* | |
jobs: | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: pnpm/action-setup@v2 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 22.x | |
cache: pnpm | |
- name: Install | |
run: pnpm install | |
- name: Lint | |
run: pnpm run lint | |
build: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
node-version: [22.x] | |
os: [ubuntu-latest, macos-latest, windows-latest] | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install pnpm | |
uses: pnpm/action-setup@v2 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v3 | |
with: | |
node-version: ${{ matrix.node-version }} | |
cache: pnpm | |
- name: Install | |
run: pnpm install | |
- run: npm run build | |
codecov: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: pnpm/action-setup@v2 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version: 22.x | |
cache: pnpm | |
- name: Install | |
run: pnpm install | |
- name: Install Playwright Browsers | |
run: npx playwright install --with-deps | |
- name: Build | |
run: npm run build | |
- name: Test | |
run: npm run coverage | |
- name: Upload coverage to Codecov | |
uses: codecov/codecov-action@v4 | |
with: | |
token: ${{secrets.CODECOV_TOKEN}} | |
fail_ci_if_error: true | |
flags: unittests | |
e2e: | |
runs-on: macos-latest | |
strategy: | |
matrix: | |
node-version: [22.x] | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
lfs: true | |
- name: Install pnpm | |
uses: pnpm/action-setup@v2 | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v3 | |
with: | |
node-version: ${{ matrix.node-version }} | |
- name: Run Cypress Tests | |
uses: cypress-io/github-action@v5 | |
with: | |
build: npm run build | |
start: npm run e2e:case | |
wait-on: "http://localhost:5175" | |
wait-on-timeout: 120 | |
browser: chrome | |
- name: Upload Diff | |
if: failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: cypress-diff | |
path: e2e/diff/ | |
- name: Upload Origin | |
if: failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: cypress-origin | |
path: e2e/fixtures/originImage | |
- name: Upload Screenshots | |
if: failure() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: cypress-screenshots | |
path: e2e/downloads/ |