pcbjam/tests/kicad
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Viktor Vaczi 4e92baf5d0
test(ysync): repro tests for review bugs 01-07 + v2 items-wire e2e port (miss 11)
The 2026-07-02 sync review (docs/features/ysync-review, ysync-review branch)
found 7 bugs and that the two-tab e2e only exercised the DEAD legacy scalar
wire. This lands plan doc 15 in full; results + empirical findings in doc 16.

- tests/collab/browser-entry-v2.ts (+build.mjs): the PRODUCTION v2 stack
  bundled for e2e (connectKicadDoc + attachKicadCollab, kdoc_* keys), with
  in-page renderActiveDoc/singleSeedRender/driftReport helpers and yjs forced
  to ONE copy (the two web pnpm workspaces otherwise bundle two
  instanceof-incompatible instances).
- tests/kicad/ysync-two-tab.spec.ts: pl_editor green baseline (A↔B edits,
  ITEM-level drift silence) + divergent-uuid adopt; bug-01 pcb/ee fresh-room
  repros (Chromium-only: two kicad_editor tabs exceed Firefox's per-process
  wasm budget); bug-06 concurrent-seed race; bug-03 Y-half.
- tests/kicad/ysync-repros-{pcbnew,eeschema}.spec.ts: bugs 02/03/05 + the
  bug-04 matrix (anchor-centred fp rotation, pad resize, endpoint drag,
  symbol rotation, Value-field edit), each with green landed-preconditions;
  the "local move emits" controls double as headless-emit probes — GREEN on
  both tools, so every emit-dependent repro is a live test.fail.
- wasm/bindings: 7 local-edit test hooks via real commits
  (CallAfter+COROUTINE) — TestRemoveItem/TestRotateItem (both tools,
  dispatched in the merged image), TestSetPadSize/TestMoveEndpoint (pcbnew),
  TestSetFieldText (eeschema).
- web/standalone ysync-repros.test.ts: bug-01 units (C++-faithful fake gating
  emit on ensureBridge) + bug-07a/b (stale DOWN hook, real sheet-manager gap).
- web/pcbjam-shared bump: bug-03/06 unit repros.

Convention: every repro asserts the CORRECT behavior and is expected-fail
(test.fail/it.fails) naming its bug doc; a fix flips it to "unexpected pass",
forcing marker removal — the repro becomes the regression test. Every
expected failure verified (JSON reporter) to fail at its documented assert.
Suite state: 39 passed / 0 failed / 0 flaky / 5 skipped (2 firefox guards,
2 pre-existing legacy two-tab skips, 1 pre-existing roundtrip fixme).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DPfrVhfYgPPgtawjSssZfn
2026-07-06 08:57:01 +02:00
..
utils fix(e2e): rescope the 3D fixes for the webgl-era viewer (rebased onto main) 2026-07-04 12:21:04 +02:00
3d-viewer-deadlock.spec.ts fix(e2e): rescope the 3D fixes for the webgl-era viewer (rebased onto main) 2026-07-04 12:21:04 +02:00
3d-viewer-models.spec.ts fix(e2e): rescope the 3D fixes for the webgl-era viewer (rebased onto main) 2026-07-04 12:21:04 +02:00
3d-viewer.spec.ts fix(e2e): rescope the 3D fixes for the webgl-era viewer (rebased onto main) 2026-07-04 12:21:04 +02:00
appearance.spec.ts fix: 🐛 pcb layers tab 2026-06-16 09:33:41 +02:00
calculator.spec.ts feat(tests): screenshot regression + Discord review, perf-tracked 2026-07-01 18:17:20 +02:00
contextmenu-scrollbar-pcbnew.spec.ts feat(wasm-dom): tests for context menus + scrollbars; fix clean wx build 2026-06-13 23:15:49 +02:00
contextmenu-scrollbar.spec.ts feat(wasm-dom): tests for context menus + scrollbars; fix clean wx build 2026-06-13 23:15:49 +02:00
dark-mode.spec.ts fix: 🐛 dark color theme 2026-06-12 12:54:26 +02:00
eeschema-collab.spec.ts feat: adopt shared wasm wire schemas; resurrect collab e2e bundle (ysync 0008 A) 2026-06-12 14:05:40 +02:00
eeschema-crosshair.spec.ts feat(tests): screenshot regression + Discord review, perf-tracked 2026-07-01 18:17:20 +02:00
eeschema-load.spec.ts feat(tests): screenshot regression + Discord review, perf-tracked 2026-07-01 18:17:20 +02:00
eeschema-perf.spec.ts test(perf): track-only runtime-perf E2E for eeschema + pcbnew 2026-07-01 14:43:54 +02:00
eeschema-subschema.spec.ts feat(eeschema): hierarchical subschema collaboration — per-sheet rooms, lazy seed, save flow, embind + e2e 2026-06-17 17:55:30 +02:00
eeschema-ui.spec.ts fix(eeschema-wasm): quasi-modal dialogs no longer freeze; Backspace deletes selection 2026-06-05 13:56:42 +02:00
eeschema-url-regex.spec.ts feat(tests): screenshot regression + Discord review, perf-tracked 2026-07-01 18:17:20 +02:00
eeschema.spec.ts feat(tests): screenshot regression + Discord review, perf-tracked 2026-07-01 18:17:20 +02:00
fixtures.ts feat(wasm): occ-split — lazy occ_service worker; kicad_editor drops OCC (−31%) 2026-07-03 12:39:58 +02:00
frame-runtime.spec.ts feat(wasm): kicad_editor — merge the pcbnew+eeschema kifaces into ONE bundle (Part 2) 2026-07-02 17:56:02 +02:00
gerbview-print.spec.ts feat(tests): screenshot regression + Discord review, perf-tracked 2026-07-01 18:17:20 +02:00
gerbview.spec.ts feat(tests): screenshot regression + Discord review, perf-tracked 2026-07-01 18:17:20 +02:00
items-bridge.spec.ts feat: v2 per-item s-expr collab bridge in all three tools (ysync 0008 Stage C) 2026-06-12 14:05:40 +02:00
load-pcb-probe.spec.ts feat(tests): screenshot regression + Discord review, perf-tracked 2026-07-01 18:17:20 +02:00
load-pcb.spec.ts feat(tests): screenshot regression + Discord review, perf-tracked 2026-07-01 18:17:20 +02:00
occ-export.spec.ts feat(wasm): occ-split — lazy occ_service worker; kicad_editor drops OCC (−31%) 2026-07-03 12:39:58 +02:00
occ-probe.spec.ts feat(wasm): occ-split — lazy occ_service worker; kicad_editor drops OCC (−31%) 2026-07-03 12:39:58 +02:00
pcbnew-collab.spec.ts feat(wasm-eh): migrate the WASM build to native wasm exceptions (+ 3D viewer default-on) 2026-06-30 09:40:26 +02:00
pcbnew-move.spec.ts feat(tests): screenshot regression + Discord review, perf-tracked 2026-07-01 18:17:20 +02:00
pcbnew-perf.spec.ts test(perf): track-only runtime-perf E2E for eeschema + pcbnew 2026-07-01 14:43:54 +02:00
pcbnew.spec.ts feat(tests): screenshot regression + Discord review, perf-tracked 2026-07-01 18:17:20 +02:00
pl_editor-collab.spec.ts feat: adopt shared wasm wire schemas; resurrect collab e2e bundle (ysync 0008 A) 2026-06-12 14:05:40 +02:00
pl_editor-load.spec.ts feat(tests): screenshot regression + Discord review, perf-tracked 2026-07-01 18:17:20 +02:00
pl_editor-uuid.spec.ts feat(pl_editor): add KIID m_Uuid + (uuid) to .kicad_wks format (yjs-bridge commit 1) 2026-06-05 13:56:38 +02:00
pl_editor.spec.ts feat(tests): screenshot regression + Discord review, perf-tracked 2026-07-01 18:17:20 +02:00
roundtrip.spec.ts feat: ysync 0008 Stage D — wire the v2 items collab into the app + verify 2026-06-12 14:05:40 +02:00
save-hook.spec.ts feat: standalone save/load routing + VITE_DOC_SOURCE ydoc mode 2026-06-12 14:05:40 +02:00
symbol_editor.spec.ts feat(tests): screenshot regression + Discord review, perf-tracked 2026-07-01 18:17:20 +02:00
xface-probe.spec.ts docs+test(wasm): Part 2 as-built record; cross-face probe spec 2026-07-02 17:56:02 +02:00
ysync-repros-eeschema.spec.ts test(ysync): repro tests for review bugs 01-07 + v2 items-wire e2e port (miss 11) 2026-07-06 08:57:01 +02:00
ysync-repros-pcbnew.spec.ts test(ysync): repro tests for review bugs 01-07 + v2 items-wire e2e port (miss 11) 2026-07-06 08:57:01 +02:00
ysync-two-tab.spec.ts test(ysync): repro tests for review bugs 01-07 + v2 items-wire e2e port (miss 11) 2026-07-06 08:57:01 +02:00
zoom-cursor.spec.ts fix(e2e): make the firefox kicad suite pass on GPU-less CI runners 2026-06-11 13:25:02 +02:00