Skip to main content

testing-and-verification

Use when adding or running tests, checking snapshots, choosing between Bun tests and Playwright, running lint/format/typecheck, or deciding the verification scope for a change.

Quellinformationen

Repository
pierrecomputer/pierre
Letzte Quellaktivität
10. September 2026 um 20:04
Erkannte Sprache von SKILL.md
Englisch
Sterne
6.364
Forks
243

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
testing-and-verification
description
Use when adding or running tests, checking snapshots, choosing between Bun tests and Playwright, running lint/format/typecheck, or deciding the verification scope for a change.
# Testing and Verification ## Baseline Commands After code changes, run the required baseline (moon tasks run from anywhere in the repo, including CI-marked agent shells): ```bash moon run root:format root:lint ``` Useful check/fix pairs on the root project: ```bash moon run root:format-check moon run root:format moon run root:lint moon run root:lint-fix moon run root:lint-css moon run root:lint-css-fix ``` For code changes, also run the relevant typecheck (moon builds workspace dependencies first automatically): ```bash moonx <project>:typecheck # or, scoped to what actually changed: moonx :typecheck --affected ``` The React Compiler lint rules (`react/*` in `.oxlintrc.json`) assume React. `packages/trees/src/render/**/*.tsx` and `packages/trees/src/components/**/*.tsx` are Preact, so an `overrides` entry there turns `react/refs` off for those globs. Put new Preact components under those directories instead of adding per-file `oxlint-disable` headers. ## Unit and Integration Tests Use Bun's built-in test runner. Tests usually live in a `test/` folder inside each package and use `describe`, `test`, and `expect` from `bun:test`. Prefer unit or integration tests by default: ```bash moonx diffs:test moonx trees:test ``` `moon run :test` runs every project's suite. Tests import workspace dependencies through their built dist, so moon builds those first; running `bun test` directly inside a package also works when dist is fresh. ## Snapshots Bun supports `toMatchSnapshot()`. Avoid new snapshot coverage unless it is shallow and narrowly scoped to the exact behavior under test. Update snapshots from the package directory: ```bash bun test -u ``` ## Browser and E2E Tests Add Playwright/browser E2E tests only when behavior cannot be validated without a real browser engine. Good candidates include computed style checks, shadow DOM boundaries, and browser-only rendering behavior. Keep E2E coverage small and high-value: ```bash moonx trees:coverage moonx trees:test-e2e moonx path-store:test-demo moonx docs:test-e2e ``` If E2E fixtures or dev servers are started in a worktree, follow the cleanup contract from the `worktrees-and-dev-servers` skill.
Auf GitHub ansehen