|
KiCad PCB EDA Suite
|
#include <algorithm>#include <cmath>#include <vector>#include <qa_utils/wx_utils/unit_test_utils.h>#include <tool/tool_manager.h>#include <pcbnew_utils/board_test_utils.h>#include <board.h>#include <board_commit.h>#include <pcb_shape.h>#include <geometry/shape_arc.h>#include <constraints/pcb_constraint.h>#include <constraints/board_constraint_adapter.h>#include <constraints/constraint_builder.h>Go to the source code of this file.
Functions | |
| BOOST_FIXTURE_TEST_CASE (DragReDerivesNeighborRevertRestores, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (DragCircleCentreMovesConcentricNeighbor, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (UnsolvableClusterLeavesNeighborUntouched, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (DeleteShapeLeavesConstraintInErrorState, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (MoveReSolvesCluster, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (MoveReSolveStagesNeighborsRevertRestores, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (MoveEmptyShapesStagesNoNeighbor, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (FixedLengthDragPinsFarEnd, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (FixedLengthDragOffCircleHoldsFarEnd, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (ArcEndpointDragHoldsCircleAndFarEnd, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (ArcEndpointDragYieldsToFixedRadius, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (RectCornerDragHoldsOppositeCorner, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (PolyVertexDragHoldsOtherVertices, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (VertexForRectCornerMapsCanonicalIndex, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (VertexForPolyMapsOrdinal, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (RectCornerDragMapsThenSolves, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (ClampedRectCornerDragSolvesToClampedCorner, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (RectSideDragEnforcesDrivingWidth, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (RectSideDragOffConstrainedAxisResizes, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (UnconstrainedRectSideDragResizesExactly, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (PolyEdgeDragEnforcesDrivingLength, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (UnconstrainedPolyEdgeDragMovesBothVertices, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE (ArcCentreDragHoldsEndpoints, DRAG_FIXTURE) | |
| BOOST_FIXTURE_TEST_CASE | ( | ArcCentreDragHoldsEndpoints | , |
| DRAG_FIXTURE | ) |
Definition at line 904 of file test_constraint_drag.cpp.
References addSegment(), CENTER, END, PCB_SHAPE::GetCenter(), EDA_SHAPE::GetEnd(), EDA_SHAPE::GetStart(), EDA_ITEM::m_Uuid, MM, COMMIT::Modify(), SolveCluster(), and START.
| BOOST_FIXTURE_TEST_CASE | ( | ArcEndpointDragHoldsCircleAndFarEnd | , |
| DRAG_FIXTURE | ) |
Definition at line 417 of file test_constraint_drag.cpp.
References std::abs(), addSegment(), END, PCB_SHAPE::GetCenter(), EDA_SHAPE::GetEnd(), EDA_SHAPE::GetRadius(), EDA_SHAPE::GetStart(), EDA_ITEM::m_Uuid, MM, COMMIT::Modify(), SolveCluster(), and START.
| BOOST_FIXTURE_TEST_CASE | ( | ArcEndpointDragYieldsToFixedRadius | , |
| DRAG_FIXTURE | ) |
Definition at line 443 of file test_constraint_drag.cpp.
References std::abs(), BOARD::Add(), FIXED_RADIUS, EDA_SHAPE::GetRadius(), EDA_ITEM::m_Uuid, MM, COMMIT::Modify(), SolveCluster(), START, and WHOLE.
| BOOST_FIXTURE_TEST_CASE | ( | ClampedRectCornerDragSolvesToClampedCorner | , |
| DRAG_FIXTURE | ) |
Definition at line 645 of file test_constraint_drag.cpp.
References BOARD::Add(), addSegment(), BOOST_REQUIRE(), COINCIDENT, ConstraintShapeVertex(), EDA_ITEM::m_Uuid, MM, COMMIT::Modify(), EDA_SHAPE::SetRight(), EDA_SHAPE::SetTop(), SolveCluster(), START, VERTEX, VECTOR2< T >::x, and VECTOR2< T >::y.
| BOOST_FIXTURE_TEST_CASE | ( | DeleteShapeLeavesConstraintInErrorState | , |
| DRAG_FIXTURE | ) |
Definition at line 223 of file test_constraint_drag.cpp.
References BOARD::Add(), PCB_CONSTRAINT::AddMember(), addSegment(), COINCIDENT, BOARD::Constraints(), END, PCB_CONSTRAINT::GetMembers(), EDA_ITEM::m_Uuid, MM, BOARD_COMMIT::Push(), COMMIT::Remove(), BOARD::ResolveItem(), and START.
| BOOST_FIXTURE_TEST_CASE | ( | DragCircleCentreMovesConcentricNeighbor | , |
| DRAG_FIXTURE | ) |
Definition at line 167 of file test_constraint_drag.cpp.
References BOARD::Add(), CENTER, CONCENTRIC, PCB_SHAPE::GetCenter(), EDA_ITEM::m_Uuid, MM, BOARD_COMMIT::Revert(), and WHOLE.
| BOOST_FIXTURE_TEST_CASE | ( | DragReDerivesNeighborRevertRestores | , |
| DRAG_FIXTURE | ) |
Definition at line 135 of file test_constraint_drag.cpp.
References BOARD::Add(), addSegment(), BOOST_CHECK_EQUAL(), COINCIDENT, END, EDA_SHAPE::GetEnd(), EDA_ITEM::m_Uuid, MM, BOARD_COMMIT::Revert(), and START.
| BOOST_FIXTURE_TEST_CASE | ( | FixedLengthDragOffCircleHoldsFarEnd | , |
| DRAG_FIXTURE | ) |
Definition at line 390 of file test_constraint_drag.cpp.
References std::abs(), BOARD::Add(), addSegment(), END, FIXED_LENGTH, EDA_SHAPE::GetEnd(), EDA_SHAPE::GetStart(), EDA_ITEM::m_Uuid, MM, BOARD_COMMIT::Revert(), and WHOLE.
| BOOST_FIXTURE_TEST_CASE | ( | FixedLengthDragPinsFarEnd | , |
| DRAG_FIXTURE | ) |
Definition at line 359 of file test_constraint_drag.cpp.
References std::abs(), BOARD::Add(), addSegment(), END, FIXED_LENGTH, EDA_SHAPE::GetEnd(), EDA_SHAPE::GetStart(), EDA_ITEM::m_Uuid, MM, BOARD_COMMIT::Revert(), and WHOLE.
| BOOST_FIXTURE_TEST_CASE | ( | MoveEmptyShapesStagesNoNeighbor | , |
| DRAG_FIXTURE | ) |
Definition at line 333 of file test_constraint_drag.cpp.
References addSegment(), BOOST_CHECK_EQUAL(), COMMIT::Empty(), END, MM, ReSolveShapeClusters(), and START.
| BOOST_FIXTURE_TEST_CASE | ( | MoveReSolvesCluster | , |
| DRAG_FIXTURE | ) |
Definition at line 261 of file test_constraint_drag.cpp.
References std::abs(), BOARD::Add(), PCB_CONSTRAINT::AddMember(), addSegment(), BOOST_CHECK_EQUAL(), END, FIXED_POSITION, EDA_SHAPE::GetEnd(), EDA_SHAPE::GetStart(), EDA_ITEM::m_Uuid, MM, POINT_ON_LINE, ReSolveShapeClusters(), START, and WHOLE.
| BOOST_FIXTURE_TEST_CASE | ( | MoveReSolveStagesNeighborsRevertRestores | , |
| DRAG_FIXTURE | ) |
Definition at line 296 of file test_constraint_drag.cpp.
References addSegment(), BOOST_CHECK_EQUAL(), END, EDA_SHAPE::GetEnd(), EDA_SHAPE::GetStart(), MM, COMMIT::Modify(), PCB_SHAPE::Move(), ReSolveShapeClusters(), BOARD_COMMIT::Revert(), and START.
| BOOST_FIXTURE_TEST_CASE | ( | PolyEdgeDragEnforcesDrivingLength | , |
| DRAG_FIXTURE | ) |
Definition at line 814 of file test_constraint_drag.cpp.
References std::abs(), SHAPE_POLY_SET::COutline(), EDA_SHAPE::GetPolyShape(), EDA_ITEM::m_Uuid, MM, COMMIT::Modify(), EDA_SHAPE::SetPolyPoints(), SolveCluster(), and VERTEX.
| BOOST_FIXTURE_TEST_CASE | ( | PolyVertexDragHoldsOtherVertices | , |
| DRAG_FIXTURE | ) |
Definition at line 500 of file test_constraint_drag.cpp.
References BOARD::Add(), addSegment(), COINCIDENT, SHAPE_POLY_SET::COutline(), cursor, EDA_SHAPE::GetPolyShape(), EDA_ITEM::m_Uuid, MM, COMMIT::Modify(), SolveCluster(), START, and VERTEX.
| BOOST_FIXTURE_TEST_CASE | ( | RectCornerDragHoldsOppositeCorner | , |
| DRAG_FIXTURE | ) |
Definition at line 465 of file test_constraint_drag.cpp.
References BOARD::Add(), addSegment(), COINCIDENT, cursor, EDA_SHAPE::GetEnd(), EDA_SHAPE::GetStart(), EDA_ITEM::m_Uuid, MM, COMMIT::Modify(), SolveCluster(), START, VERTEX, VECTOR2< T >::x, and VECTOR2< T >::y.
| BOOST_FIXTURE_TEST_CASE | ( | RectCornerDragMapsThenSolves | , |
| DRAG_FIXTURE | ) |
Definition at line 614 of file test_constraint_drag.cpp.
References BOARD::Add(), addSegment(), BOOST_REQUIRE(), COINCIDENT, ConstraintShapeVertex(), cursor, EDA_ITEM::m_Uuid, MM, COMMIT::Modify(), EDA_SHAPE::SetRight(), EDA_SHAPE::SetTop(), SolveCluster(), START, and VERTEX.
| BOOST_FIXTURE_TEST_CASE | ( | RectSideDragEnforcesDrivingWidth | , |
| DRAG_FIXTURE | ) |
Definition at line 711 of file test_constraint_drag.cpp.
References std::abs(), BOOST_CHECK_EQUAL(), BOOST_REQUIRE(), BOOST_TEST_MESSAGE(), ConstraintShapeAnchors(), ConstraintShapeVertex(), EDA_ITEM::m_Uuid, MM, COMMIT::Modify(), EDA_SHAPE::SetRight(), SolveCluster(), VECTOR2< T >::x, and VECTOR2< T >::y.
| BOOST_FIXTURE_TEST_CASE | ( | RectSideDragOffConstrainedAxisResizes | , |
| DRAG_FIXTURE | ) |
Definition at line 755 of file test_constraint_drag.cpp.
References std::abs(), BOOST_REQUIRE(), ConstraintShapeVertex(), EDA_ITEM::m_Uuid, MM, COMMIT::Modify(), EDA_SHAPE::SetBottom(), SolveCluster(), VECTOR2< T >::x, and VECTOR2< T >::y.
| BOOST_FIXTURE_TEST_CASE | ( | UnconstrainedPolyEdgeDragMovesBothVertices | , |
| DRAG_FIXTURE | ) |
Definition at line 862 of file test_constraint_drag.cpp.
References BOARD::Add(), addSegment(), COINCIDENT, SHAPE_POLY_SET::COutline(), EDA_SHAPE::GetPolyShape(), EDA_SHAPE::GetStart(), EDA_ITEM::m_Uuid, MM, COMMIT::Modify(), EDA_SHAPE::SetPolyPoints(), SolveCluster(), START, and VERTEX.
| BOOST_FIXTURE_TEST_CASE | ( | UnconstrainedRectSideDragResizesExactly | , |
| DRAG_FIXTURE | ) |
Definition at line 785 of file test_constraint_drag.cpp.
References BOARD::Add(), addSegment(), BOOST_REQUIRE(), COINCIDENT, ConstraintShapeVertex(), EDA_ITEM::m_Uuid, MM, COMMIT::Modify(), EDA_SHAPE::SetRight(), SolveCluster(), START, and VERTEX.
| BOOST_FIXTURE_TEST_CASE | ( | UnsolvableClusterLeavesNeighborUntouched | , |
| DRAG_FIXTURE | ) |
Definition at line 192 of file test_constraint_drag.cpp.
References BOARD::Add(), addSegment(), BOOST_CHECK_EQUAL(), CONCENTRIC, END, EDA_ITEM::m_Uuid, MM, BOARD_COMMIT::Revert(), and WHOLE.
| BOOST_FIXTURE_TEST_CASE | ( | VertexForPolyMapsOrdinal | , |
| DRAG_FIXTURE | ) |
Definition at line 571 of file test_constraint_drag.cpp.
References BOARD::Add(), SHAPE_POLY_SET::AddOutline(), SHAPE_LINE_CHAIN::ArcCount(), BOOST_CHECK_EQUAL(), BOOST_REQUIRE(), chain, ConstraintShapeVertex(), SHAPE_POLY_SET::COutline(), EDA_SHAPE::GetPolyShape(), MM, POLY, and VERTEX.
| BOOST_FIXTURE_TEST_CASE | ( | VertexForRectCornerMapsCanonicalIndex | , |
| DRAG_FIXTURE | ) |
Definition at line 537 of file test_constraint_drag.cpp.
References addSegment(), BOOST_CHECK_EQUAL(), BOOST_REQUIRE(), ConstraintShapeVertex(), MM, and VERTEX.