{ "name": "kicad-wasm-tests", "version": "1.0.0", "description": "Playwright tests for wxWidgets WASM and KiCad", "scripts": { "test": "npm run test:e2e", "test:e2e": "npm run setup:kicad && playwright test --project=wx-chromium --project=kicad-firefox --project=kicad-chromium --project=jspi-firefox --project=coroutine-firefox", "test:kicad": "npm run setup:kicad && playwright test --project=kicad-firefox", "test:kicad:headed": "npm run setup:kicad && playwright test --project=kicad-chrome --headed", "test:jspi:chrome": "playwright test --project=jspi-chrome", "test:perf": "npm run setup:kicad && playwright test --project=perf --workers=1", "test:web": "npm run setup:kicad && playwright test --config=playwright-web.config.ts --project=web-firefox", "test:web:ci": "npm run setup:kicad && playwright test --config=playwright-web.config.ts --project=web-firefox --project=web-chromium --project=web-mobile", "build:collab": "node collab/build.mjs", "serve": "npx serve apps -p 8080 -c ../serve.json", "setup:kicad": "./scripts/setup-kicad-wasm.sh", "corpus:lint": "tsx tools/corpus-lint.ts", "lint:determinism": "tsx tools/lint-determinism.ts", "lint:ci-coverage": "tsx tools/lint-ci-coverage.ts", "screenshots:check": "tsx tools/screenshots/compare.ts", "screenshots:promote": "tsx tools/screenshots/promote.ts", "screenshots:noise": "tsx tools/screenshots/noise.ts", "screenshots:report": "tsx tools/screenshots/post-discord.ts", "screenshots:changelog": "tsx tools/screenshots/changelog.ts", "screenshots:manifest": "tsx tools/screenshots/gen-manifest.ts", "3d:compare": "tsx tools/screenshots/compare-dirs.ts", "3d:check": "tsx tools/screenshots/compare-dirs.ts --old 3d-regression/baseline --new 3d-regression/output/native --out 3d-regression/output/diff/native-self --floors 3d-regression/floors.json --level native-self --label 3d-native --fail-on-change", "3d:check:webgl": "tsx tools/screenshots/compare-dirs.ts --old 3d-regression/baseline-webgl --new 3d-regression/output/webgl --out 3d-regression/output/diff/webgl-self --floors 3d-regression/floors.json --level webgl-self --label 3d-webgl --fail-on-change", "3d:check:parity": "tsx tools/screenshots/compare-dirs.ts --old 3d-regression/baseline --new 3d-regression/output/webgl --out 3d-regression/output/diff/parity --floors 3d-regression/floors.json --level webgl-vs-native --label 3d-parity", "3d:review": "tsx tools/screenshots/compare-dirs.ts --old 3d-regression/baseline --new 3d-regression/output/webgl --out 3d-regression/output/diff/parity-review --floors 3d-regression/floors.json --level webgl-vs-native --label 3d-parity --artifacts always", "3d:test:webgl": "playwright test --project=wx-chromium e2e/3d-webgl.spec.ts", "tools:contract": "tsx tools/cli-contract.ts" }, "devDependencies": { "@playwright/test": "^1.62.1", "@types/node": "^24.10.1", "@types/pixelmatch": "^5.2.6", "@types/pngjs": "^6.0.5", "esbuild": "^0.28.0", "pixelmatch": "^5.3.0", "playwright": "^1.62.1", "pngjs": "^7.0.0", "serve": "^14.2.0", "tsx": "^4.22.4", "typescript": "^5.9.3", "yjs": "^13.6.31" } }