Commit Graph

705 Commits

Author SHA1 Message Date
Jeff Young 5f37c2b247 Custom rule severities.
ADDED severity token to custom rule syntax.  Each rule can now define
its own severity.

Fixes https://gitlab.com/kicad/code/kicad/issues/6148
2021-12-24 15:42:22 +00:00
Jeff Young 3aa6d73770 Allow min/max/opt to come from different rules. 2021-12-24 12:36:37 +00:00
Jeff Young 1d9337a917 Fix up test case. 2021-12-24 12:21:28 +00:00
Jeff Young 4b6f2f0658 Add mechanical copper clearance testing for shapes.
Also includes going from distance-based neighbor exclusion to angle-
based.  (Distance doesn't work when very short segments are followed
by very long ones.)

Fixes https://gitlab.com/kicad/code/kicad/issues/2512
2021-12-24 11:40:10 +00:00
Jeff Young 66a6a6d448 Attempt to fix test case, and improve debugging output. 2021-12-24 11:38:09 +00:00
Jeff Young a48867ea01 Solder mask integrity testing.
ADDED DRC test for solder mask aperture bridging copper from different
nets.
ADDED visualization of minimum web width processing for solder masks.
ADDED allow_soldermask_bridges property for footprints.

Fixes https://gitlab.com/kicad/code/kicad/issues/2183

Fixes https://gitlab.com/kicad/code/kicad/issues/1792
2021-12-23 22:31:14 +00:00
Jeff Young a1e3f2b188 Starved thermals DRC checking.
ADDED min_resolved_spokes constraint.
ADDED "Thermal relief connection to zone incomplete" violation.

Fixes https://gitlab.com/kicad/code/kicad/issues/2183
2021-12-23 22:30:42 +00:00
Jeff Young 32721755bf Hook up zone-pad connections to custom rules.
ADDED zone_connection constraint.
ADDED thermal_relief_gap and thermal_spoke_width constraints.

ADDED angle override for thermal relief spokes in Pad Properties.

Fixes https://gitlab.com/kicad/code/kicad/issues/4067
2021-12-23 22:30:26 +00:00
Jeff Young 2bc86fa0a8 Shapes for schematic.
ADDED arc, circle and rectangle shapes for schematic.  Shapes support
line styles and fill colors.

CHANGED sheet background color in Edit Text & Graphics Properties to
fill color (and it now affects shapes).

Pushed STROKE_PARAMS down into common and moved all shapes to using it
for stroke descriptions.
2021-12-23 20:36:07 +00:00
Jeff Young 0a609dd48d Add footprint library checking to DRC.
Fixes https://gitlab.com/kicad/code/kicad/issues/6821
2021-12-23 19:18:45 +00:00
jean-pierre charras dc71efbcb2 QA tests: fix a build issue on msys2, due to changes in commit 5622a51 2021-12-15 10:13:45 +01:00
Roberto Fernandez Bautista 4de4347baa SHAPE_ARC::Collide( aSeg ) must check segment end points as candidates
The edge case is when the segment is completely contained inside the arc
(This partially reverts b4835c8208 and
adds the missing test cases)
2021-12-14 16:14:56 +00:00
Roberto Fernandez Bautista b4835c8208 Add test case for SHAPE_ARC::Collide( seg ) + remove unneeded candidates
Followup to commit 01068e0d41
2021-12-13 18:06:11 +00:00
Wayne Stambaugh b7af66e3f9 Eeschema: fix broken page numbers when renaming a sheet file name.
Always use full sheet paths when storing sheet instances.  Partial sheet
paths cannot be full resolved resulting in lost page numbers when renaming
sheet file name.

Fixes #9782
2021-12-09 12:56:03 +00:00
Seth Hillbrand da38a6e750 Fix a couple of qa warning 2021-12-07 14:54:00 -08:00
Seth Hillbrand c819913687 Fix missing mock return 2021-12-07 14:54:00 -08:00
Konstantin Baranovskiy d00810c0fb Pcbnew: make search field focused by default in Find dialog 2021-12-06 19:08:23 +00:00
Wayne Stambaugh a03e6e4926 Revert "Eeschema: fix broken page numbers when renaming a sheet file name."
This reverts commit a468a79948.
2021-12-06 07:47:18 -05:00
Jon Evans a205595404 PROF_COUNTER -> PROF_TIMER
I want to add an event counter, and this one is a timer
2021-12-05 14:25:37 -05:00
Roberto Fernandez Bautista c463818b57 SHAPE_LINE_CHAIN: Only fix up arc indices if last pt is part of an arc
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9843
2021-12-03 22:04:55 +00:00
Mikolaj Wielgus b35aa302e2 Test PCB_MARKER, PCB_ZONE, FP_ZONE 2021-12-01 03:42:22 +01:00
Mikolaj Wielgus b729068326 Test BOARD_ITEM 2021-12-01 00:47:22 +01:00
Mikolaj Wielgus af078d6666 Test SCH_MARKER, cleanup 2021-12-01 00:47:22 +01:00
Mikolaj Wielgus b7e28bf554 Move eda_item_test_utils.h to common 2021-12-01 00:47:22 +01:00
Mikolaj Wielgus 99ab1941cd mv test_sch_item.cpp test_ee_item.cpp 2021-12-01 00:47:22 +01:00
Wayne Stambaugh a468a79948 Eeschema: fix broken page numbers when renaming a sheet file name.
Remove duplicate instance data saved in both root SCH_SCREEN and SCH_SHEET
objects that was causing them to be out of sync.  All sheet instance data
is stored in the SCH_SHEET object itself and rebuilt on the fly so it is
always current.

Remove Get/SetPageNumber from SCH_SHEET_PATH object so it doesn't obfuscate
where the actual sheet page number information exists.

Fixes https://gitlab.com/kicad/code/kicad/-/issues/9782
2021-11-30 08:11:24 -05:00
Tomasz Wlostowski 5f2aaba0dd qa/pns: added trivial PCB rendering performance test program 2021-11-29 23:30:10 +01:00
Tomasz Wlostowski 4b243c425b qa_utils: disable Python support in TEST_APP_MAIN 2021-11-29 23:30:10 +01:00
Mikolaj Wielgus 84dd515b6a s/Instatiable/Instantiable/, s/Instatiate/Instantiate/ 2021-11-29 21:20:57 +01:00
Mikolaj Wielgus 276f9abf8a Test LIB_ITEM rotation and mirroring 2021-11-29 21:20:57 +01:00
Mikolaj Wielgus 71bfbfaa70 Test SCH_PIN rotation and mirroring 2021-11-28 19:37:13 +01:00
Mikolaj Wielgus 2e1862de1c Run AutoAutoplaceFields() in SCH_SHEET constructor
A constructor should create a fully initialized object.
2021-11-28 18:46:28 +01:00
Mikolaj Wielgus 65dad31d48 Test SCH_SHEET rotation and mirroring 2021-11-28 14:01:20 +01:00
Seth Hillbrand 694bea187e Explicitly build nets when running test boards
Suggested by @craftyjon, this builds the list of nets needed for DRC
engine before running QA
2021-11-27 19:49:44 -08:00
Mikolaj Wielgus 65af3a8568 Make sheet pin positions invariant to four rotations more often 2021-11-28 02:18:18 +01:00
Mikolaj Wielgus 4b87c4c21c Test SCH_SHEET_PIN rotation
Also remove useless variables and memory leaks in tests.
2021-11-28 02:18:18 +01:00
Mikolaj Wielgus 513aba1552 Clean includes in EDA_RECT test 2021-11-28 02:18:18 +01:00
Mikolaj Wielgus 152a583863 Generic SCH_ITEM tests 2021-11-27 19:42:11 +01:00
Mikolaj Wielgus 22de7256ae Make sure all KICAD_T values are correct with a test 2021-11-27 19:42:10 +01:00
jean-pierre charras 7bd2073bc0 QA test: fix a not working test on msys2
KIID::SeedGenerator( 0l ) worked, but did not give same values for KIID
than calculated from another platform.
2021-11-27 09:27:37 +01:00
Jon Evans 1f27fff1ea Explicitly build connectivity for board after loading in QA 2021-11-26 10:28:21 -05:00
Jon Evans 08cb573e11 Do not propagate bus entries across buses and wires at the same point
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9678
2021-11-25 13:36:30 -05:00
Jon Evans fa5f8cae96 Fix missing rename from ba6ae4fa 2021-11-25 11:20:39 -05:00
Jon Evans b4342d813b Fix SHAPE_LINE_CHAIN::Slice when end is an arc followed by a point
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9770
2021-11-25 10:05:33 -05:00
Jeff Young ba6ae4fa9b Kicad has many plugins. This one is for the pcb. 2021-11-25 12:56:46 +00:00
Jon Evans 1e8284bc1a Add ability to seed the KIID generator
Fixes https://gitlab.com/kicad/code/kicad/-/issues/9689
2021-11-20 14:19:29 -05:00
Roberto Fernandez Bautista 8f1126bdfc Fix qa test utility GEOM_TEST::IsOutlineValid 2021-11-20 16:44:52 +00:00
Roberto Fernandez Bautista 389cb7d4bc Add SHAPE_LINE_CHAIN tests for arcs with shared points 2021-11-20 16:44:52 +00:00
Roberto Fernandez Bautista 17407b850c Add qa tests for SHAPE_POLY_SET arcs that wrap around from end to start 2021-11-20 16:44:52 +00:00
jean-pierre charras 3495135b08 Fix compil issue in QA (missing function) 2021-11-18 14:57:56 +01:00