diff --git a/frontend/src/__tests__/component-to-spice.test.ts b/frontend/src/__tests__/component-to-spice.test.ts index d0e6351a..1f0b37c1 100644 --- a/frontend/src/__tests__/component-to-spice.test.ts +++ b/frontend/src/__tests__/component-to-spice.test.ts @@ -222,9 +222,18 @@ describe('PASSIVE_PRESETS — preset variants share their base mapper', () => { }); }); +// Mappers whose output depends on live runtime state rather than the static +// component (pins + properties) a fixture can describe. `custom-chip` emits its +// SPICE sources from getChipDrivenPins(comp.id) — the chip's currently-driven +// output pins — so a static fixture always yields null. It is exercised by the +// chip-bus integration tests instead, not this catalog harness. +const RUNTIME_STATE_MAPPERS = new Set(['custom-chip']); + describe('componentToSpice — catalog completeness', () => { it('every mapped metadataId has a test fixture', () => { - const missing = mappedMetadataIds().filter((id) => !MINIMAL_FIXTURES[id]); + const missing = mappedMetadataIds().filter( + (id) => !MINIMAL_FIXTURES[id] && !RUNTIME_STATE_MAPPERS.has(id), + ); expect(missing, `Missing fixtures for: ${missing.join(', ')}`).toEqual([]); });