|
KiCad PCB EDA Suite
|
Issue #24853, creepage ignored positional rule conditions. More...
#include <qa_utils/wx_utils/unit_test_utils.h>#include <pcbnew_utils/board_test_utils.h>#include <board.h>#include <board_design_settings.h>#include <layer_ids.h>#include <netinfo.h>#include <drc/drc_item.h>#include <drc/drc_rule.h>#include <drc/drc_engine.h>#include <settings/settings_manager.h>#include <widgets/report_severity.h>Go to the source code of this file.
Classes | |
| struct | DRC_CREEPAGE_RULE_AREA_FIXTURE |
Functions | |
| BOOST_FIXTURE_TEST_CASE (CreepageRuleAreaConditionIssue24853, DRC_CREEPAGE_RULE_AREA_FIXTURE) | |
Issue #24853, creepage ignored positional rule conditions.
Repro board: tracks 'a' and 'b' both cross rule area 'forcreepage'. Rule 'creep' matches in-area, complementary rule 'creep2' matches out-of-area, both 25mm. Placeholders at the origin made intersectsArea() false, so 'creep2' won. Discriminator is the rule name.
Definition in file test_drc_creepage_issue24853.cpp.
| BOOST_FIXTURE_TEST_CASE | ( | CreepageRuleAreaConditionIssue24853 | , |
| DRC_CREEPAGE_RULE_AREA_FIXTURE | ) |
Definition at line 65 of file test_drc_creepage_issue24853.cpp.
References BOOST_TEST_MESSAGE(), DRC_ENGINE::ClearViolationHandler(), DRCE_CREEPAGE, DRCE_FIRST, DRCE_LAST, KI_TEST::LoadBoard(), BOARD_DESIGN_SETTINGS::m_DRCEngine, BOARD_DESIGN_SETTINGS::m_DRCSeverities, MM, RPT_SEVERITY_ERROR, RPT_SEVERITY_IGNORE, DRC_ENGINE::RunTests(), and DRC_ENGINE::SetViolationHandler().