diff --git a/tests/features/spice-analysis/__snapshots__/spice-analysis02-boost-converter-simulation.snap.svg b/tests/features/spice-analysis/__snapshots__/spice-analysis02-boost-converter-simulation.snap.svg new file mode 100644 index 000000000..fdc566e72 --- /dev/null +++ b/tests/features/spice-analysis/__snapshots__/spice-analysis02-boost-converter-simulation.snap.svg @@ -0,0 +1,83 @@ +V1L11HD1C110uFR11kΩV2M1V1_pin1/L1_pin1V1_pin1/L1_pin1GNDGNDGNDGNDGNDL1_pin2/D1_pin1/M1_pin1D1_pin2/C1_pin1/R1_pin1D1_pin2/C1_pin1/R1_pin1D1_pin2/C1_pin1/R1_pin1V2_pin1/M1_pin3V2_pin1/M1_pin30246810-50510Time (ms)Voltage (V)N1 (spicey)N2 (spicey)N3 (spicey)N4 (spicey) \ No newline at end of file diff --git a/tests/features/spice-analysis/spice-analysis02-boost-converter.test.tsx b/tests/features/spice-analysis/spice-analysis02-boost-converter.test.tsx new file mode 100644 index 000000000..185ae6167 --- /dev/null +++ b/tests/features/spice-analysis/spice-analysis02-boost-converter.test.tsx @@ -0,0 +1,89 @@ +import { test, expect } from "bun:test" +import type { SimulationTransientVoltageGraph } from "circuit-json" +import { getTestFixture } from "tests/fixtures/get-test-fixture" + +test( + "spice-analysis02-boost-converter", + async () => { + const { circuit } = getTestFixture() + + circuit.add( + + + .pin1"} to={".L1 > .pin1"} /> + .pin2"} to={".D1 > .anode"} /> + .cathode"} to={".C1 > .pin1"} /> + .cathode"} to={".R1 > .pin1"} /> + .pin2"} to={".R1 > .pin2"} /> + .pin2"} to={".V1 > .pin2"} /> + .pin2"} to={".M1 > .drain"} /> + .source"} to={".V1 > .pin2"} /> + .source"} to={"net.GND"} /> + .gate"} to={".V2 > .pin1"} /> + .pin2"} to={".V1 > .pin2"} /> + + + + + + + + , + ) + + await circuit.renderUntilSettled() + + const circuitJson = circuit.getCircuitJson() + + expect( + circuitJson.some( + (el) => el.type === "simulation_transient_voltage_graph", + ), + ).toBe(true) + + expect(circuit).toMatchSimulationSnapshot(import.meta.path) + }, + { timeout: 20000 }, +)