50 std::vector<std::pair<wxString, int>> tests =
55 for(
const std::pair<wxString, int>&
test : tests )
72 "Expected " <<
test.second <<
" errors in " <<
test.first.ToStdString()
73 <<
" but got " << errors.
GetCount() <<
"\n"
86 std::unique_ptr<SCHEMATIC> schematic;
91 std::vector<SCH_ITEM*> markers;
95 auto* marker =
static_cast<SCH_MARKER*
>( item );
101 markers.push_back( item );
104 BOOST_REQUIRE_EQUAL( markers.size(), 6 );
105 schematic->RecordERCExclusions();
111 schematic->RebuildConnectivity();
113 schematic->ResolveERCExclusionsPostUpdate();
118 const auto* marker =
static_cast<SCH_MARKER*
>( item );
123 BOOST_CHECK( marker->IsExcluded() );
static const ADVANCED_CFG & GetCfg()
Get the singleton instance's config, which is shared by all consumers.
EE_TYPE OfType(KICAD_T aType) const
wxString GetTextReport()
Returns the ERC report in "text" (human readable) format in the C-locale.
Container for ERC settings.
std::map< int, SEVERITY > m_ERCSeverities
Runs the electrical rules checks and adds a SCH_MARKER for each violation.
int TestFourWayJunction()
Test to see if there are potentially confusing 4-way junctions in the schematic.
Instantiate the current locale within a scope in which you are expecting exceptions to be thrown.
void SetExcluded(bool aExcluded, const wxString &aComment=wxEmptyString)
Base class for any item which can be embedded within the SCHEMATIC container class,...
EE_RTREE & Items()
Get the full RTree, usually for iterating.
void DeleteItem(SCH_ITEM *aItem)
Remove aItem from the linked list and deletes the object.
RAII class that sets an value at construction and resets it to the original value at destruction.
An implementation of the RC_ITEM_LIST interface which uses the global SHEETLIST to fulfill the contra...
int GetCount(int aSeverity=-1) const override
void SetSeverities(int aSeverities) override
@ ERCE_FOUR_WAY_JUNCTION
A four-way junction was found.
void LoadSchematic(SETTINGS_MANAGER &aSettingsManager, const wxString &aRelPath, std::unique_ptr< SCHEMATIC > &aSchematic)
std::vector< FAB_LAYER_COLOR > dummy
std::unique_ptr< SCHEMATIC > m_schematic
SETTINGS_MANAGER m_settingsManager
ERC_REGRESSION_TEST_FIXTURE()
BOOST_FIXTURE_TEST_CASE(ERCFourWayJunctions, ERC_REGRESSION_TEST_FIXTURE)
BOOST_AUTO_TEST_CASE(ERCFourWayExclusionsSurviveCanonicalWitnesses)
BOOST_CHECK_EQUAL(result, "25.4")