|
KiCad PCB EDA Suite
|
Regression test for issue #24597: creepage path cut across a rounded Edge.Cuts slot. More...
#include <regex>#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 <drc/drc_item.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_ISSUE24597_FIXTURE |
Functions | |
| BOOST_FIXTURE_TEST_CASE (CreepageSlotCornerIssue24597, DRC_CREEPAGE_ISSUE24597_FIXTURE) | |
Regression test for issue #24597: creepage path cut across a rounded Edge.Cuts slot.
A rounded rectangle slot is a single PCB_SHAPE, so its four corner arcs and four straight edges share one parent. When a candidate path ended on one corner arc, GeneratePaths used to exempt that whole parent from the board-edge crossing test, which let a copper-to-far-corner chord cut straight across the slot's near edge. The path then hugged only one arc instead of wrapping the rounded end, and the reported creepage came out too short (and differed front vs back).
With the fix the path wraps both corner arcs of the end cap, so the reported creepage grows from ~2.68mm (corner-cut) to ~2.82mm and matches on both layers.
Definition in file test_drc_creepage_issue24597.cpp.
| BOOST_FIXTURE_TEST_CASE | ( | CreepageSlotCornerIssue24597 | , |
| DRC_CREEPAGE_ISSUE24597_FIXTURE | ) |
Definition at line 70 of file test_drc_creepage_issue24597.cpp.
References actual, BOOST_CHECK_MESSAGE(), BOOST_TEST_MESSAGE(), DRC_ENGINE::ClearViolationHandler(), DRCE_CREEPAGE, DRCE_FIRST, DRCE_LAST, BOARD_DESIGN_SETTINGS::GetSeverity(), 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().