KiCad PCB EDA Suite
Loading...
Searching...
No Matches
test_fabmaster_import.cpp File Reference

Test suite for import of Fabmaster PCB files. More...

Go to the source code of this file.

Classes

struct  FABMASTER_IMPORT_FIXTURE
 

Functions

 BOOST_AUTO_TEST_CASE (EmptyRefdesInPins)
 Test that footprints with pads are properly imported when the REFDES column is empty in the PIN section.
 
 BOOST_AUTO_TEST_CASE (StaticShapesPreserved)
 Test that static shapes (zones with net but no matching outline) are preserved.
 

Detailed Description

Test suite for import of Fabmaster PCB files.

Definition in file test_fabmaster_import.cpp.

Function Documentation

◆ BOOST_AUTO_TEST_CASE() [1/2]

BOOST_AUTO_TEST_CASE ( EmptyRefdesInPins )

Test that footprints with pads are properly imported when the REFDES column is empty in the PIN section.

Regression test for https://gitlab.com/kicad/code/kicad/-/issues/7955

When a Fabmaster file is exported from a board with only components and no netlist, the REFDES column in the PIN section is empty. The importer should fall back to using SYM_NAME to match pins with their footprints.

Definition at line 60 of file test_fabmaster_import.cpp.

References BOOST_AUTO_TEST_CASE(), BOOST_REQUIRE(), and KI_TEST::GetPcbnewTestDataDir().

◆ BOOST_AUTO_TEST_CASE() [2/2]

BOOST_AUTO_TEST_CASE ( StaticShapesPreserved )

Test that static shapes (zones with net but no matching outline) are preserved.

This is a regression test for https://gitlab.com/kicad/code/kicad/-/issues/7753

In Allegro, static shapes are copper areas that don't void around other nets. They appear in Fabmaster as filled areas (with net) but without a corresponding outline (which would have no net). The importer must preserve these as solid filled zones.

The test file contains static shapes on nets like "DO" and "VMBATT3-" that are zero-width closed polygons with net assignments but no matching outline.

Definition at line 99 of file test_fabmaster_import.cpp.

References BOOST_REQUIRE(), and KI_TEST::GetPcbnewTestDataDir().