diff --git a/src/footprinter.ts b/src/footprinter.ts index fa51a3b4..a7ff4d12 100644 --- a/src/footprinter.ts +++ b/src/footprinter.ts @@ -271,6 +271,7 @@ const normalizeDefinition = (def: string): string => { return def .trim() .replace(/^pinheader(?=[\d_]|$)/i, "pinrow") + .replace(/^pdip-?(\d+)(?=_|$)/i, "dip_$1") .replace(/^sot23-(\d+)(?=_|$)/i, "sot23_$1") .replace(/^sot-223-(\d+)(?=_|$)/i, "sot223_$1") .replace(/^to-220f-(\d+)(?=_|$)/i, "to220f_$1") diff --git a/tests/pdip.test.ts b/tests/pdip.test.ts new file mode 100644 index 00000000..1fde94c3 --- /dev/null +++ b/tests/pdip.test.ts @@ -0,0 +1,17 @@ +import { test, expect } from "bun:test" +import { convertCircuitJsonToPcbSvg } from "circuit-to-svg" +import { fp } from "../src/footprinter" + +test("PDIP-8 aliases to DIP-8", () => { + const pdipSvg = convertCircuitJsonToPcbSvg(fp.string("PDIP-8").circuitJson()) + const dipSvg = convertCircuitJsonToPcbSvg(fp.string("dip_8").circuitJson()) + + expect(pdipSvg).toEqual(dipSvg) +}) + +test("pdip8 compact form aliases to DIP-8", () => { + const pdipSvg = convertCircuitJsonToPcbSvg(fp.string("pdip8").circuitJson()) + const dipSvg = convertCircuitJsonToPcbSvg(fp.string("dip_8").circuitJson()) + + expect(pdipSvg).toEqual(dipSvg) +})