KiCad PCB EDA Suite
Loading...
Searching...
No Matches
test_via_stack_saveload.cpp File Reference
#include <algorithm>
#include <filesystem>
#include <memory>
#include <set>
#include <vector>
#include <board.h>
#include <board_commit.h>
#include <board_design_settings.h>
#include <project/net_settings.h>
#include <netclass.h>
#include <netinfo.h>
#include <json_common.h>
#include <collectors.h>
#include <common.h>
#include <footprint.h>
#include <pad.h>
#include <connectivity/connectivity_data.h>
#include <lset.h>
#include <pcb_group.h>
#include <inspectable_impl.h>
#include <properties/property.h>
#include <properties/property_mgr.h>
#include <pcb_track.h>
#include <tool/tool_manager.h>
#include <generators/pcb_via_stack.h>
#include <generators_mgr.h>
#include <router/router_tool.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

class  STUB_COLLECTORS_GUIDE
 Minimal COLLECTORS_GUIDE so GetCoverageArea() can be exercised headlessly. More...
 

Functions

static PCB_TRACKmakeSegment (BOARD *aBoard, const VECTOR2I &aStart, const VECTOR2I &aEnd)
 
 BOOST_AUTO_TEST_CASE (FactoryRegistered)
 
 BOOST_AUTO_TEST_CASE (PropertiesAndMembersRoundTrip)
 
 BOOST_AUTO_TEST_CASE (StackedGeometry)
 
 BOOST_AUTO_TEST_CASE (StaggeredGeometry)
 
 BOOST_AUTO_TEST_CASE (MoveTranslatesHops)
 
 BOOST_AUTO_TEST_CASE (RotateTurnsTheHopsWithTheStack)
 
 BOOST_AUTO_TEST_CASE (FlipSwapsTheSpanButMirrorDoesNot)
 
 BOOST_AUTO_TEST_CASE (InvalidSpanBuildsNothing)
 
static PCB_VIAmakeMicrovia (BOARD *aBoard, const VECTOR2I &aPos, PCB_LAYER_ID aTop, PCB_LAYER_ID aBottom, int aNet=0)
 
 BOOST_AUTO_TEST_CASE (CreateFromItemsStacked)
 
 BOOST_AUTO_TEST_CASE (CreateFromItemsRejectsGap)
 
 BOOST_AUTO_TEST_CASE (OnlyTheLastHopReachesTheEndLayer)
 
 BOOST_AUTO_TEST_CASE (PendingStackExpansionMatcher)
 
 BOOST_AUTO_TEST_CASE (DuplicatePresetNamesAreDropped)
 
 BOOST_AUTO_TEST_CASE (CreateFromItemsKeepsCapping)
 
 BOOST_AUTO_TEST_CASE (CreateFromItemsKeepsCoincidentHops)
 
 BOOST_AUTO_TEST_CASE (CreateFromItemsRejectsMixedNets)
 
 BOOST_AUTO_TEST_CASE (AnUnknownLayerNameLeavesTheSpanAlone)
 
 BOOST_AUTO_TEST_CASE (ViaStackPlacesOnlyFromItsTerminals)
 
 BOOST_AUTO_TEST_CASE (CreateFromItemsTakesOnlyTheTracesLinkingItsHops)
 
 BOOST_AUTO_TEST_CASE (CreateFromItemsRejectsViasOwnedByAGenerator)
 
 BOOST_AUTO_TEST_CASE (ExpandMultiHopMicrovia)
 
 BOOST_AUTO_TEST_CASE (ExpansionThroughACommitIsUndoable)
 
 BOOST_AUTO_TEST_CASE (CoaxialHopsConnect)
 
 BOOST_AUTO_TEST_CASE (PlacedStackCommitState)
 
 BOOST_AUTO_TEST_CASE (StaggeredAllTracesAreMembers)
 
 BOOST_AUTO_TEST_CASE (NetInheritedFromLandingCopper)
 
 BOOST_AUTO_TEST_CASE (NetInheritedFromCopperOnAnInnerLayer)
 
 BOOST_AUTO_TEST_CASE (NetLookupIgnoresMechanicalHoles)
 
 BOOST_AUTO_TEST_CASE (PlacedStackClickCollection)
 
 BOOST_AUTO_TEST_CASE (RevertEditRestoresMemberGrouping)
 
 BOOST_AUTO_TEST_CASE (LoadedStackKeepsItsOwnLayer)
 
 BOOST_AUTO_TEST_CASE (MemberlessStackIsNotSaved)
 
 BOOST_AUTO_TEST_CASE (PopulatedStackKeepsItsNetAcrossReload)
 
 BOOST_AUTO_TEST_CASE (StackPropertiesAreRegisteredAndReadOnly)
 
 BOOST_AUTO_TEST_CASE (CollectExpandableMicroviasNamesOnlyLooseMultiHopVias)
 
static const VECTOR2I PRE_ROUTE_POS (pcbIUScale.mmToIU(50), pcbIUScale.mmToIU(50))
 
static const VECTOR2I ROUTED_POS (pcbIUScale.mmToIU(10), pcbIUScale.mmToIU(10))
 
static void makeSharedNetMultiHopPair (BOARD *aBoard)
 
static std::vector< VECTOR2IlooseMicroviaPositions (BOARD *aBoard)
 
 BOOST_AUTO_TEST_CASE (ExpansionWithoutAGuardTakesEveryMatchingVia)
 
 BOOST_AUTO_TEST_CASE (ExpansionLeavesPreRouteViasAlone)
 
 BOOST_AUTO_TEST_CASE (MovingAStackReusesItsMembers)
 
 BOOST_AUTO_TEST_CASE (GoldenFileStillLoads)
 
 BOOST_AUTO_TEST_CASE (DeletingAStackRemovesItsMembersAndRevertRestoresThem)
 
 BOOST_AUTO_TEST_CASE (ViaStackPresetsRoundTripThroughSettings)
 
 BOOST_AUTO_TEST_CASE (MalformedPresetEntriesAreRejected)
 
 BOOST_AUTO_TEST_CASE (EditingAnExistingStackRebuildsItsHops)
 
 BOOST_AUTO_TEST_CASE (CreateFromItemsRejectsNonMicrovias)
 
 BOOST_AUTO_TEST_CASE (CappingOnlyMarksTheHopOnTheOuterLayer)
 
 BOOST_AUTO_TEST_CASE (CappingAnInternalStackMarksNothing)
 
 BOOST_AUTO_TEST_CASE (ApplyPresetKeepsTheStackLayerInStep)
 
 BOOST_AUTO_TEST_CASE (ConnectingTraceWidthSurvivesAnEdit)
 
 BOOST_AUTO_TEST_CASE (DeepDuplicateGivesTheCopyItsOwnMembers)
 
 BOOST_AUTO_TEST_CASE (ExpansionHonoursAPresetsUseNetclass)
 
 BOOST_AUTO_TEST_CASE (AnUnbuildableSpanKeepsTheExistingHops)
 
 BOOST_AUTO_TEST_CASE (WideningAStaggeredSpanContinuesTheChain)
 
 BOOST_AUTO_TEST_CASE (CreateFromItemsTakesFillFromTheBoardDefault)
 
 BOOST_AUTO_TEST_CASE (ExpansionLeavesPlainViasAlone)
 

Function Documentation

◆ BOOST_AUTO_TEST_CASE() [1/54]

◆ BOOST_AUTO_TEST_CASE() [2/54]

◆ BOOST_AUTO_TEST_CASE() [3/54]

◆ BOOST_AUTO_TEST_CASE() [4/54]

◆ BOOST_AUTO_TEST_CASE() [5/54]

◆ BOOST_AUTO_TEST_CASE() [6/54]

◆ BOOST_AUTO_TEST_CASE() [7/54]

BOOST_AUTO_TEST_CASE ( CollectExpandableMicroviasNamesOnlyLooseMultiHopVias )

◆ BOOST_AUTO_TEST_CASE() [8/54]

◆ BOOST_AUTO_TEST_CASE() [9/54]

BOOST_AUTO_TEST_CASE ( CreateFromItemsKeepsCapping )

◆ BOOST_AUTO_TEST_CASE() [10/54]

BOOST_AUTO_TEST_CASE ( CreateFromItemsKeepsCoincidentHops )

◆ BOOST_AUTO_TEST_CASE() [11/54]

BOOST_AUTO_TEST_CASE ( CreateFromItemsRejectsGap )

◆ BOOST_AUTO_TEST_CASE() [12/54]

◆ BOOST_AUTO_TEST_CASE() [13/54]

BOOST_AUTO_TEST_CASE ( CreateFromItemsRejectsNonMicrovias )

◆ BOOST_AUTO_TEST_CASE() [14/54]

◆ BOOST_AUTO_TEST_CASE() [15/54]

◆ BOOST_AUTO_TEST_CASE() [16/54]

◆ BOOST_AUTO_TEST_CASE() [17/54]

◆ BOOST_AUTO_TEST_CASE() [18/54]

◆ BOOST_AUTO_TEST_CASE() [19/54]

◆ BOOST_AUTO_TEST_CASE() [20/54]

BOOST_AUTO_TEST_CASE ( DuplicatePresetNamesAreDropped )

◆ BOOST_AUTO_TEST_CASE() [21/54]

◆ BOOST_AUTO_TEST_CASE() [22/54]

◆ BOOST_AUTO_TEST_CASE() [23/54]

◆ BOOST_AUTO_TEST_CASE() [24/54]

◆ BOOST_AUTO_TEST_CASE() [25/54]

◆ BOOST_AUTO_TEST_CASE() [26/54]

◆ BOOST_AUTO_TEST_CASE() [27/54]

BOOST_AUTO_TEST_CASE ( ExpansionWithoutAGuardTakesEveryMatchingVia )

◆ BOOST_AUTO_TEST_CASE() [28/54]

BOOST_AUTO_TEST_CASE ( FactoryRegistered )

◆ BOOST_AUTO_TEST_CASE() [29/54]

◆ BOOST_AUTO_TEST_CASE() [30/54]

◆ BOOST_AUTO_TEST_CASE() [31/54]

◆ BOOST_AUTO_TEST_CASE() [32/54]

◆ BOOST_AUTO_TEST_CASE() [33/54]

◆ BOOST_AUTO_TEST_CASE() [34/54]

◆ BOOST_AUTO_TEST_CASE() [35/54]

◆ BOOST_AUTO_TEST_CASE() [36/54]

◆ BOOST_AUTO_TEST_CASE() [37/54]

◆ BOOST_AUTO_TEST_CASE() [38/54]

◆ BOOST_AUTO_TEST_CASE() [39/54]

◆ BOOST_AUTO_TEST_CASE() [40/54]

◆ BOOST_AUTO_TEST_CASE() [41/54]

◆ BOOST_AUTO_TEST_CASE() [42/54]

◆ BOOST_AUTO_TEST_CASE() [43/54]

◆ BOOST_AUTO_TEST_CASE() [44/54]

◆ BOOST_AUTO_TEST_CASE() [45/54]

◆ BOOST_AUTO_TEST_CASE() [46/54]

◆ BOOST_AUTO_TEST_CASE() [47/54]

◆ BOOST_AUTO_TEST_CASE() [48/54]

◆ BOOST_AUTO_TEST_CASE() [49/54]

BOOST_AUTO_TEST_CASE ( StackPropertiesAreRegisteredAndReadOnly )

◆ BOOST_AUTO_TEST_CASE() [50/54]

◆ BOOST_AUTO_TEST_CASE() [51/54]

◆ BOOST_AUTO_TEST_CASE() [52/54]

BOOST_AUTO_TEST_CASE ( ViaStackPlacesOnlyFromItsTerminals )

◆ BOOST_AUTO_TEST_CASE() [53/54]

◆ BOOST_AUTO_TEST_CASE() [54/54]

◆ looseMicroviaPositions()

static std::vector< VECTOR2I > looseMicroviaPositions ( BOARD * aBoard)
static

◆ makeMicrovia()

◆ makeSegment()

static PCB_TRACK * makeSegment ( BOARD * aBoard,
const VECTOR2I & aStart,
const VECTOR2I & aEnd )
static

◆ makeSharedNetMultiHopPair()

◆ PRE_ROUTE_POS()

static const VECTOR2I PRE_ROUTE_POS ( pcbIUScale. mmToIU50,
pcbIUScale. mmToIU50 )
static

◆ ROUTED_POS()

static const VECTOR2I ROUTED_POS ( pcbIUScale. mmToIU10,
pcbIUScale. mmToIU10 )
static