KiCad PCB EDA Suite
Loading...
Searching...
No Matches
test_via_stitch.cpp File Reference
#include <boost/test/unit_test.hpp>
#include <algorithm>
#include <filesystem>
#include <fstream>
#include <iterator>
#include <set>
#include <string>
#include <vector>
#include <base_units.h>
#include <board.h>
#include <board_commit.h>
#include <board_design_settings.h>
#include <drc/drc_engine.h>
#include <footprint.h>
#include <generators/pcb_via_stitch.h>
#include <geometry/shape_circle.h>
#include <netinfo.h>
#include <pad.h>
#include <pcb_track.h>
#include <settings/settings_manager.h>
#include <tool/tool_manager.h>
#include <zone.h>
#include <zones.h>
#include <pcbnew_utils/board_file_utils.h>
#include <pcbnew_utils/board_test_utils.h>
#include <qa_utils/wx_utils/unit_test_utils.h>

Go to the source code of this file.

Classes

struct  STITCH_FIXTURE_BASE
 
struct  STITCH_SYNTHETIC_FIXTURE
 
struct  STITCH_UPDATE_FIXTURE
 
struct  STITCH_PARTIAL_LAYER_FIXTURE
 
struct  STITCH_BOARD_FIXTURE
 

Functions

static SHAPE_POLY_SET makeRectPoly (int aX1, int aY1, int aX2, int aY2)
 
static void configureStitch (PCB_VIA_STITCH *aStitch)
 
static void checkOutlinesEqual (const SHAPE_POLY_SET &aExpected, const SHAPE_POLY_SET &aActual)
 
 BOOST_AUTO_TEST_CASE (BakedPatternConstantsLocked)
 
 BOOST_AUTO_TEST_CASE (GuardEnvelopeSampling)
 
 BOOST_AUTO_TEST_CASE (GuardEnvelopeCoversBothSidesAtCoarsePitch)
 
 BOOST_AUTO_TEST_CASE (PropertiesRoundTrip)
 
 BOOST_AUTO_TEST_CASE (SexprSaveLoad)
 
 BOOST_AUTO_TEST_CASE (ExclusionsClearedOnLayoutOrModeChange)
 
 BOOST_AUTO_TEST_CASE (NegativeGridCellsRoundTrip)
 
 BOOST_FIXTURE_TEST_CASE (LayoutRoundTripKeepsGridAnchored, STITCH_UPDATE_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (PitchChangeKeepsGridAnchored, STITCH_UPDATE_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (UpdateDeltaStability, STITCH_UPDATE_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (UpdateRespectsExclusions, STITCH_UPDATE_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (ClearAllExclusionsRestoresEveryVia, STITCH_UPDATE_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (PartialOuterPourStillStitchesInnerPlanes, STITCH_PARTIAL_LAYER_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (PartialTopPourStillStitchesInnerPlanes, STITCH_BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (PadsBlockStitchingWithSolidZoneConnections, STITCH_BOARD_FIXTURE)
 
 BOOST_FIXTURE_TEST_CASE (FootprintRuleAreaBlocksStitchVias, STITCH_BOARD_FIXTURE)
 

Function Documentation

◆ BOOST_AUTO_TEST_CASE() [1/7]

BOOST_AUTO_TEST_CASE ( BakedPatternConstantsLocked )

◆ BOOST_AUTO_TEST_CASE() [2/7]

◆ BOOST_AUTO_TEST_CASE() [3/7]

BOOST_AUTO_TEST_CASE ( GuardEnvelopeCoversBothSidesAtCoarsePitch )

◆ BOOST_AUTO_TEST_CASE() [4/7]

BOOST_AUTO_TEST_CASE ( GuardEnvelopeSampling )

◆ BOOST_AUTO_TEST_CASE() [5/7]

◆ BOOST_AUTO_TEST_CASE() [6/7]

◆ BOOST_AUTO_TEST_CASE() [7/7]

◆ BOOST_FIXTURE_TEST_CASE() [1/9]

BOOST_FIXTURE_TEST_CASE ( ClearAllExclusionsRestoresEveryVia ,
STITCH_UPDATE_FIXTURE  )

Definition at line 774 of file test_via_stitch.cpp.

References BOOST_CHECK_EQUAL(), and PCB_VIA_T.

◆ BOOST_FIXTURE_TEST_CASE() [2/9]

◆ BOOST_FIXTURE_TEST_CASE() [3/9]

BOOST_FIXTURE_TEST_CASE ( LayoutRoundTripKeepsGridAnchored ,
STITCH_UPDATE_FIXTURE  )

Definition at line 625 of file test_via_stitch.cpp.

References BOOST_CHECK_EQUAL(), PLAIN, and POISSON.

◆ BOOST_FIXTURE_TEST_CASE() [4/9]

BOOST_FIXTURE_TEST_CASE ( PadsBlockStitchingWithSolidZoneConnections ,
STITCH_BOARD_FIXTURE  )

Definition at line 905 of file test_via_stitch.cpp.

References B_Cu, BOOST_REQUIRE(), empty(), F_Cu, FULL, pad, PCB_VIA_T, pcbIUScale, and via.

◆ BOOST_FIXTURE_TEST_CASE() [5/9]

BOOST_FIXTURE_TEST_CASE ( PartialOuterPourStillStitchesInnerPlanes ,
STITCH_PARTIAL_LAYER_FIXTURE  )

Definition at line 824 of file test_via_stitch.cpp.

References pcbIUScale.

◆ BOOST_FIXTURE_TEST_CASE() [6/9]

BOOST_FIXTURE_TEST_CASE ( PartialTopPourStillStitchesInnerPlanes ,
STITCH_BOARD_FIXTURE  )

◆ BOOST_FIXTURE_TEST_CASE() [7/9]

BOOST_FIXTURE_TEST_CASE ( PitchChangeKeepsGridAnchored ,
STITCH_UPDATE_FIXTURE  )

Definition at line 652 of file test_via_stitch.cpp.

References BOOST_CHECK_EQUAL(), BOOST_REQUIRE(), and pcbIUScale.

◆ BOOST_FIXTURE_TEST_CASE() [8/9]

BOOST_FIXTURE_TEST_CASE ( UpdateDeltaStability ,
STITCH_UPDATE_FIXTURE  )

Definition at line 676 of file test_via_stitch.cpp.

References PCB_VIA_T, pcbIUScale, VECTOR2< T >::x, and VECTOR2< T >::y.

◆ BOOST_FIXTURE_TEST_CASE() [9/9]

BOOST_FIXTURE_TEST_CASE ( UpdateRespectsExclusions ,
STITCH_UPDATE_FIXTURE  )

◆ checkOutlinesEqual()

static void checkOutlinesEqual ( const SHAPE_POLY_SET & aExpected,
const SHAPE_POLY_SET & aActual )
static

◆ configureStitch()

◆ makeRectPoly()

static SHAPE_POLY_SET makeRectPoly ( int aX1,
int aY1,
int aX2,
int aY2 )
static