38 const std::array<const char*, 3> boardNames = {
"connect/connect.kicad_pcb",
39 "issue19325/issue19325.kicad_pcb",
40 "issue14130.kicad_pcb" };
42 size_t castellated = 0;
44 size_t issue14130NpthTht = 0;
45 size_t issue14130NpthHole = 0;
48 std::set<wxString> issue14130NpthNames;
50 for(
const char* boardName : boardNames )
54 for(
const FOOTPRINT* footprint : board->Footprints() )
60 std::string
location = std::string( boardName ) +
"/" + footprint->GetReference().ToStdString() +
"/"
61 + std::to_string(
index );
81 BOOST_CHECK(
pad->HasHole() );
86 if( std::string( boardName ) ==
"issue14130.kicad_pcb"
89 BOOST_CHECK_MESSAGE( issue14130NpthNames.insert( fabPin.
m_name ).second,
90 location <<
" repeats an NPTH pin name" );
102 if( std::string( boardName ) ==
"connect/connect.kicad_pcb"
104 &&
pad->IsOnCopperLayer() )
113 BOOST_CHECK_GT( fiducials, 0 );
114 BOOST_CHECK_GT( castellated, 0 );
115 BOOST_CHECK_GT( tooling, 0 );
116 BOOST_CHECK_GT( plated, 0 );
120 BOOST_CHECK_GT( padCount, 0 );
FAB_PIN MakeFabPin(const PAD &aPad, size_t aIndexInFootprint)
aIndexInFootprint is the pad's position in its footprint, used to name NPTH and unnumbered pads
BOOST_CHECK_EQUAL(result, "25.4")