mirror of
https://github.com/rowboatlabs/rowboat.git
synced 2026-07-12 21:02:17 +02:00
ci(x): parent test harness + GitHub Actions workflow
apps/x gains npm test — builds @x/shared first (the core and renderer suites import its dist), then runs the shared, core, and renderer vitest suites in dependency order; per-suite test:shared/test:core/ test:renderer scripts for targeted runs. .github/workflows/x-tests.yml runs that harness on every pull request touching apps/x (plus pushes to main and manual dispatch): pnpm 10 / Node 22, frozen lockfile, pnpm store cached against apps/x's lockfile. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
627451cd94
commit
eaa55df161
2 changed files with 46 additions and 2 deletions
40
.github/workflows/x-tests.yml
vendored
Normal file
40
.github/workflows/x-tests.yml
vendored
Normal file
|
|
@ -0,0 +1,40 @@
|
||||||
|
name: apps/x tests
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
paths:
|
||||||
|
- "apps/x/**"
|
||||||
|
- ".github/workflows/x-tests.yml"
|
||||||
|
push:
|
||||||
|
branches: [main]
|
||||||
|
paths:
|
||||||
|
- "apps/x/**"
|
||||||
|
- ".github/workflows/x-tests.yml"
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
test:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
defaults:
|
||||||
|
run:
|
||||||
|
working-directory: apps/x
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- uses: pnpm/action-setup@v4
|
||||||
|
with:
|
||||||
|
version: 10
|
||||||
|
|
||||||
|
- uses: actions/setup-node@v4
|
||||||
|
with:
|
||||||
|
node-version: 22
|
||||||
|
cache: pnpm
|
||||||
|
cache-dependency-path: apps/x/pnpm-lock.yaml
|
||||||
|
|
||||||
|
- name: Install dependencies
|
||||||
|
run: pnpm install --frozen-lockfile
|
||||||
|
|
||||||
|
# Builds @x/shared (core/renderer tests import its dist), then runs
|
||||||
|
# the shared, core, and renderer vitest suites in order.
|
||||||
|
- name: Run tests
|
||||||
|
run: npm test
|
||||||
|
|
@ -12,7 +12,11 @@
|
||||||
"deps": "npm run shared && npm run core && npm run preload",
|
"deps": "npm run shared && npm run core && npm run preload",
|
||||||
"main": "wait-on http://localhost:5173 && cd apps/main && npm run build && npm run start",
|
"main": "wait-on http://localhost:5173 && cd apps/main && npm run build && npm run start",
|
||||||
"lint": "eslint .",
|
"lint": "eslint .",
|
||||||
"lint:fix": "eslint . --fix"
|
"lint:fix": "eslint . --fix",
|
||||||
|
"test": "npm run shared && npm run test:shared && npm run test:core && npm run test:renderer",
|
||||||
|
"test:shared": "cd packages/shared && npm test",
|
||||||
|
"test:core": "cd packages/core && npm test",
|
||||||
|
"test:renderer": "cd apps/renderer && npm test"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@eslint/js": "^9.39.2",
|
"@eslint/js": "^9.39.2",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue