105 std::unique_ptr<BOARD> board = std::make_unique<BOARD>();
122 addEdge( { 0, 0 }, { side, 0 } );
123 addEdge( { side, 0 }, { side, side } );
124 addEdge( { side, side }, { 0, side } );
125 addEdge( { 0, side }, { 0, 0 } );
131 fp->SetReference( wxT(
"U1" ) );
144 "Test shape is not reported on F_Mask; SetHasSolderMask had no effect" );
149 const fs::path outDir =
150 fs::temp_directory_path() / (
"kicad_qa_odb_soldermask_24690_" +
KIID().
AsString().ToStdString() );
155 std::map<std::string, UTF8> props;
156 props[
"units"] =
"mm";
157 props[
"sigfig"] =
"6";
159 BOOST_REQUIRE_NO_THROW( odbExporter.
SaveBoard( outDir.string(), board.get(), &props ) );
161 BOOST_REQUIRE_MESSAGE( fs::exists( outDir ),
"ODB++ export produced no output tree" );
163 bool foundMask =
false;
166 BOOST_REQUIRE_MESSAGE( foundMask,
"ODB++ export produced no solder-mask features file" );
168 BOOST_CHECK_MESSAGE( surfaceCount > 0,
"Mask-flagged shape was dropped from the ODB++ export "
169 "(no surface features on the solder-mask layer)" );
171 fs::remove_all( outDir );
void SaveBoard(const wxString &aFileName, BOARD *aBoard, const std::map< std::string, UTF8 > *aProperties=nullptr) override
Write aBoard to a storage file in a format that this PCB_IO implementation knows about or it can be u...