Jeff Young
232e4d34f1
Use default error limits. They're already relative to the value.
2023-01-22 14:35:27 +00:00
Jeff Young
241dc0d96b
Add SPICE regression test.
2023-01-21 19:32:25 +00:00
Jeff Young
259e382041
Add simulation regression test for legacy fixups.
2023-01-21 19:32:25 +00:00
Jeff Young
e218c7109b
Test case for immediate SBCKT models.
2023-01-21 19:32:25 +00:00
Jeff Young
6053b86a24
Add new spice regression test for windows path separators.
2023-01-21 19:32:25 +00:00
Marek Roszko
b2421c7d9f
Fix tiny bug in double 2 string formatting
...
- I forgot to handle the trailing dots when I added the fmt variant
- UIDouble2Str (the original) lacked the comma check
- Add unit test lol
2023-01-21 13:54:52 -05:00
Seth Hillbrand
6fa2eedb4b
Avoid the obsolete GetNextPin() call
...
This iterated over all pins to find the pin after a given item. Because
out pattern is consistently to iterate in the outer loop, this means
that we were an O(n^2) loop for the pins just to find their names. This
affected very large parts (e.g. FPGAs) when switching sheets to display
2023-01-20 14:12:15 -08:00
Marek Roszko
358a05a2c8
msvc warning fix
2023-01-16 22:44:19 -05:00
jean-pierre charras
167e430fd9
Fix a compil issue in mocks.cpp.
2023-01-16 20:04:03 +01:00
Roberto Fernandez Bautista
355e817302
Move DefaultTransform definition to transform.cpp, so it can be shared
2023-01-15 19:17:51 +01:00
Roberto Fernandez Bautista
d063eb431b
Move FixupJunctions to SCHEMATIC
2023-01-15 19:17:50 +01:00
Tomasz Wlostowski
7da98a447a
qa: enable tool framework for the P&S debug tool
2023-01-12 23:37:07 +01:00
Tomasz Wlostowski
dd1a780d1f
qa: follow up router API changes in the PNS log player/regression test tool
2023-01-12 23:37:07 +01:00
Seth Hillbrand
1c90eeaa5a
Fix missing parameter in CADSTAR test
2023-01-10 16:48:07 -08:00
Roberto Fernandez Bautista
ee6e86d1db
Add conversion from CADSTAR SHAPE to SHAPE_POLY_SET
2023-01-10 22:28:01 +01:00
jean-pierre charras
31202a2eb3
Fix a compil issue in QA tests
2023-01-09 19:44:04 +01:00
Jeff Young
e9a21130a8
Add a few more MARKUP_PARSER test cases.
2023-01-08 23:33:36 +00:00
Roberto Fernandez Bautista
e7e151c46c
MARKUP_PARSER grammar should match everything, even incomplete markup
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/13438
2023-01-09 00:17:11 +01:00
Marek Roszko
570fa246ae
Fix typo in matrix3 multiply, add unit tests
2023-01-05 21:06:52 -05:00
Seth Hillbrand
fc86998bf6
Ensure duplicate pin names get unique nets
...
Same pin name != same net name unless the pins are explicitly connected
Also add pin number to all unconnected pads ensuring they have unique
nets
Fixes https://gitlab.com/kicad/code/kicad/issues/13236
2023-01-04 11:32:15 -08:00
Jeff Young
9b9795a87d
Reduce reliance on exception processing -- it's waay too bugy at present.
...
This moves some stuff to REPORTER APIs. Moving more stuff would be good,
but it probably too high-risk at present. We'll wait for 8.0 for that....
Fixes https://gitlab.com/kicad/code/kicad/issues/13359
2023-01-03 17:20:23 +00:00
Tomasz Wlostowski
7d40bbdf38
router: mark the head trace (as opposed to the 'fixed tail') with fully saturated color
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/11386
2022-12-29 17:54:59 +01:00
Jeff Young
6940333f40
Update test cases for unknown-variable = error.
2022-12-27 20:14:13 +00:00
jean-pierre charras
438c4b58a3
Try to fix a QA issue probably due to the order some Ctors are called.
...
This is not the first time an issue is created by the order of ctors.
2022-12-27 19:56:04 +01:00
Wayne Stambaugh
78e2f0fd4d
Sheet instance handling improvements.
2022-12-26 08:30:03 -05:00
Jon Evans
b85fab9ab6
Support DXF ellipses and elliptical arcs
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12563
2022-12-24 22:46:07 -05:00
Jeff Young
7abfa46531
Inferred sim value improvements, and a unit test for them.
2022-12-21 17:03:49 +00:00
Jeff Young
a3a2e2e5b1
Update demos and legacy qa files SpiceMapping -> Spice_Node_Sequence.
...
Also removes migration in the code as it will no longer be needed.
2022-12-19 12:04:53 +00:00
Jeff Young
50ccc4e6da
Fix issue converting legacy SPICE models.
...
1) if a legacy model references a library then we need to see if said
libraray exists and read model from it if so
2) legacy node ordering is by index, not pin name
3) we can't auto-generate a pin map when we don't know the pin names,
so don't try
2022-12-14 13:36:28 +00:00
Seth Hillbrand
ba11de6e66
Update QA test schematics with valid and invalid variants
2022-12-09 02:14:05 +00:00
Barabas Raffai
63da407345
Add tests for no connect flag
2022-12-09 02:14:05 +00:00
Jeff Young
cfbf14ebfd
Attempt to fix build issue with NGSPICE off.
2022-12-08 23:57:42 +00:00
Jeff Young
ce8fa2ad00
Move previous fix to subclass (which overrides the base class).
2022-12-07 17:13:19 +00:00
Jeff Young
5aa204e194
Another attempted sim testcases fix.
2022-12-07 15:07:25 +00:00
Jeff Young
b9287968d6
Update symbol default prefixes after updating instance data.
...
Also moves the sim model fixups after the instance data updating as
it uses the prefixes.
2022-12-07 01:34:56 +00:00
Jeff Young
69448afb47
Don't run simulation twice when the sim command is overridden.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12731
2022-12-07 01:34:56 +00:00
Jeff Young
38906397d2
Move V6->V7 sim model migration from sheets to screens.
...
Also moves passive RLC inference out from migration to just-in-time
creation for the simulator or netlisting.
Also fixes a version guard mismatch because the spice migration was
done inside UpdateSymbolInstances (which has its own version guard).
Also changed UpdateSymbolInstances to UpdateSymbolInstanceData so
someone else in the future doesn't think it's a general-purpose symbol
instance updater.
2022-12-06 16:01:18 +00:00
Jeff Young
8260f0ee13
Add support for unitless values to PCB_EXPR_EVALUATOR.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/13016
2022-11-29 14:24:20 +00:00
Mikolaj Wielgus
9055043409
Sim QA: Test for duplicates and wrongly deduplicated parameters
...
(adapt tests to the names of the newly deduplicated parameters)
2022-11-29 15:04:38 +01:00
Mikolaj Wielgus
b025b103de
Sim Model Editor: Make the VBIC model the first BJT model to select
2022-11-29 10:13:20 +01:00
Mikolaj Wielgus
484620eeb5
Sim QA: Add test for VDMOS
2022-11-29 09:48:01 +01:00
Mikolaj Wielgus
5fb191e4d6
Sim QA: Test all BJT parameters in each model
2022-11-28 09:49:48 +01:00
Mikolaj Wielgus
26644952a4
Sim QA: Test all diode parameters
2022-11-28 08:01:50 +01:00
Mikolaj Wielgus
d836fbaaaa
Sim: Add VBIC model support
...
Update generate_sim_model_ngspice_data.bash a little, but it's still
outdated.
2022-11-28 04:45:36 +01:00
Mikolaj Wielgus
f2fb734e06
Sim QA: Add test for Numparam expressions inside .subckt
2022-11-27 06:32:17 +01:00
Mikolaj Wielgus
08d37d2795
Sim QA: Add Spice .subckt parsing tests
2022-11-26 10:24:11 +01:00
Mikolaj Wielgus
9766351ee6
Sim: Update QA to tests to match the new model upgrade scheme
2022-11-25 05:38:21 +01:00
Jeff Young
0b0c35c4dc
Adjust test result.
2022-11-23 21:37:50 +00:00
Wayne Stambaugh
cd92088b7a
Fix disabled schematic page numbering unit tests.
2022-11-23 08:05:35 -05:00
Wayne Stambaugh
d37015bada
Temporarily disable unit tests so builds pass.
2022-11-22 19:08:08 -05:00
Mikolaj Wielgus
833146cf50
Sim QA: Fix QA errors
...
Let's not allow units in fields for now. (is 1m one meter or one milli?)
2022-11-22 21:18:01 +01:00
Jeff Young
729e64f33a
Add call modification missed from previous commit.
2022-11-22 17:25:09 +00:00
Mikolaj Wielgus
e9fe59a28c
Sim: Rename the missed Sim_* fields to Sim.*
2022-11-21 03:33:11 +01:00
Mikolaj Wielgus
6969362813
Sim Model Editor: Don't provide library-only models as builtins
2022-11-20 22:07:39 +01:00
Fabien Corona
8498630876
Ibis: correctly load QA files up to v2.1
2022-11-20 19:10:46 +00:00
Mikolaj Wielgus
059ca8fc48
Sim: Rename Sim_* fields to Sim.*
2022-11-20 03:37:54 +01:00
Jeff Young
e09e521162
Remove GUI calls from netlisting.
2022-11-18 15:29:16 +00:00
Tomasz Wlostowski
cab5f65685
qa/pns: added test case for via drag walkaround
2022-11-18 15:14:34 +01:00
Tomasz Wlostowski
bf4671aa16
qa: PNS debug tool should draw COMPOUND shapes too...
2022-11-18 15:14:34 +01:00
Mikolaj Wielgus
e7c43ca20a
Sim: Remove inference from Reference and Value
2022-11-18 08:39:15 +01:00
Jeff Young
a61ac363c2
Excise the remaining occurrences of "Alias" for derived symbols.
...
Fixes https://gitlab.com/kicad/code/kicad/issues/12895
2022-11-16 18:37:40 +00:00
Tomasz Wlostowski
33594e92fa
router: qa test case for backspace (unfix) regression
2022-11-15 23:05:53 +01:00
Tomasz Wlostowski
26a38797c7
router: log and replay the 'unfix' events too
2022-11-15 23:05:53 +01:00
Marek Roszko
3dd2ae762d
Refactor step export to use our normal board processing routines
2022-11-12 21:27:10 -05:00
Jeff Young
9d525e82f5
Fix qa tests so they don't assert on cleanup.
2022-11-11 20:31:39 +00:00
Jon Evans
c07477b94c
Move to explicit symbol properties mapping
...
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12845
2022-11-08 22:19:08 -05:00
jean-pierre charras
97a002e06c
fix previous commit for QA stuff (missing changes)
2022-11-08 12:33:24 +01:00
Jon Evans
68de92313e
Properties: move to custom editor for distances; refactoring
...
Also fix display of angle values since EDA_ANGLE was introduced
Fixes https://gitlab.com/kicad/code/kicad/-/issues/12290
2022-11-06 11:40:45 -05:00
Bevan Weiss
4f634d7df7
Updated accelerating zoom controller to use default (non-accelerated)
...
zoom if changing direction.
Signed-off-by: Bevan Weiss <bevan.weiss@gmail.com>
2022-11-04 16:28:32 +00:00
Seth Hillbrand
07ef5d3343
Clarify QA message
2022-11-01 13:08:09 -07:00
Tomasz Wlostowski
ab350cbfaa
qa: some trivial test cases for the P&S regressions
2022-10-31 11:49:31 +01:00
Tomasz Wlostowski
50142ca73f
qa: P&S regression tool ported to Boost::test
2022-10-31 11:49:31 +01:00
Tomasz Wlostowski
99bcdf7979
qa: introducing headless regression test suite for the P&S. Works by playing out pre-recorded events and comparing the resulting geometry against a human-approved reference.
...
Other changes:
- store all router settings (ROUTING_SETTINGS) in the debug dump in a separate JSON file
- store router mode (single/diff/tune) in the event log file
- factor out the regression test player and the graphical log/debug tool into separate main files
- bring CONSOLE_LOG and CONSOLE_MSG_REPORTER to the common test headers
2022-10-31 11:17:31 +01:00
Tomasz Wlostowski
dfa6d22524
qa: moved CONSOLE_LOG and CONSOLE_MSG_REPORTER to common testing utils
2022-10-31 11:17:31 +01:00
Mikolaj Wielgus
5eca8dd8de
Undo hardcoding swapping of diode pins
...
Revert commits d1e2acd3
70b4d1aa
cff508fb
2022-10-30 11:01:59 +01:00
Mikolaj Wielgus
cff508fb3b
Sim: Reverse diode model pin order to match diode symbols
2022-10-28 14:01:09 +02:00
Mikolaj Wielgus
f31feaac42
Sim: Commit forgotten files
2022-10-27 08:08:14 +02:00
Mikolaj Wielgus
6c752680d7
Sim QA: Add Potentiometers QA test
2022-10-27 06:42:43 +02:00
Wayne Stambaugh
6a0db3e7e2
Fix Coverity warnings.
2022-10-26 14:39:44 -04:00
Fabien Corona
20b63f305e
Sim: Ibis improvements and fixes
...
Follow-up after the KIBIS and KIBIS GUI merge requests.
- Move KIBIS from Pcbnew to Eeschema space,
- Make KIBIS obtain the Ku/Kd coefficients via the `SPICE_SIMULATOR` class instead of calling the `ngspice` executable via `system()`,
- Allow to toggle between differential and single-ended model in the GUI,
- Various GUI fixes and improvements.
2022-10-25 09:45:40 +00:00
Jeff Young
d16b23d16e
Name shortening and line-break reduction.
2022-10-21 18:41:39 +01:00
Mikolaj Wielgus
00c04e74ed
Sim QA: Test LTspice parameters and ako models of BJTs
2022-10-20 04:00:33 +02:00
Seth Hillbrand
27add591ec
Add Clipper2
...
Currently this lives behind the advanced config flag `UseClipper2`.
Enabling this flag will route all Clipper-based calls through the
Clipper2 library instead of the older Clipper. The changes should be
mostly transparent.
Of note, Clipper2 does not utilize the `STRICTLY_SIMPLE` flag because
clipper1 did not actually guarantee a strictly simple polygon.
Currently we ignore this flag but we may decide to run strictly-simple
operations through a second NULL union to simplify the results as much
as possible.
Additionally, the inflation options are slightly different. We cannot
choose the fallback miter. The fallback miter is always square. This
only affects the CHAMFER_ACUTE_CORNERS option in inflate, which does not
appear to be used.
Lastly, we currently utilize the 64-bit integer coordinates for
calculations. This appears to still be faster than 32-bit calculations
in Clipper1 on a modern x86 system. This may not be the case for older
systems, particularly 32-bit systems.
2022-10-19 16:25:45 -07:00
Mikolaj Wielgus
c4fc9c1b16
Sim QA: Add tests for AKO and LTspice diodes
2022-10-19 06:56:21 +02:00
Mikolaj Wielgus
42acabb5a9
Fix a mistake in uopamp.lib.spice
2022-10-18 22:38:49 +02:00
Mikolaj Wielgus
ae671c07e1
Commit missing uopamp.lib.spice
2022-10-18 17:38:23 +02:00
Mikolaj Wielgus
e5704d7058
Update uopamp.lib.spice to be the same in all QA tests
2022-10-18 06:15:54 +02:00
Mikolaj Wielgus
c8e13813d9
Sim: Rename Sim_Disabled field to Sim_Enable
2022-10-16 00:49:44 +02:00
Mikolaj Wielgus
c3d5b3b3e5
Sim: Only store device type in reference, not full model type
...
Instead of Reference="VSIN1", Value="dc=1 ampl=2 f=3", it's now
Reference="V1", Value="SIN dc=1 ampl=2 f=3".
2022-10-15 19:36:26 +02:00
Jeff Young
9424b166d0
Add regression test case for 12609.
2022-10-09 23:31:26 +01:00
Seth Hillbrand
f369cc23a9
Handle arbitrary unit counts
2022-10-06 15:41:16 -07:00
Mikolaj Wielgus
6f2b2d7e19
Sim: Minor SIM_LIBRARY cleanup
2022-10-06 14:08:01 +02:00
Marek Roszko
40a279ae32
Hotglue the unit tests to work for now
...
The mocks never expected InitPgm to work and I accidentally fixed it for the kicad-cli
2022-10-05 17:12:32 -04:00
Mark Roszko
fb8a4c10f7
Shove kicad2step into pcbnew itself with a new cli
2022-10-04 01:53:37 +00:00
Jeff Young
d67437a2aa
Move ratsnest exclusion processing to a post-pass.
...
Also fixes a few cases where we were unnecessarily rebuilding
connectivity more than once for an operation.
2022-09-29 17:08:49 +01:00
Fabien Corona
7e486327d9
Ibis differential and PRBS models
2022-09-29 08:35:01 +00:00
Jonathan Haas
4bbf942f15
Add test cases for box2 methods (Nearest/Farthest)Point and IntersectsCircle(Edge)
2022-09-27 22:40:55 +00:00
Fabien Corona
528fe4d371
Add Ibis to spice model editor
...
ADDED: IBIS models are now supported in Sim Model Editor
2022-09-27 20:47:00 +00:00
Alex
dc07ab9df1
Replace PROF_COUNTER with PROF_TIMER in some conditional places.
2022-09-27 14:07:47 +00:00
Michal Sojka
f7c82e2469
Fix parallel build failures
...
Parallel builds sometimes fail with the following error:
eeschema/sch_plugins/kicad/sch_sexpr_parser.h:36:10: fatal error: schematic_lexer.h: No such file or directory
This can be reproduced by running the following in an empty build
subdirectory:
cmake .. -G Ninja -DWHATEVER_IS_NEEDED...
ninja qa/schematic_utils/libqa_schematic_utils.a
We fix this by adding explicit dependency between qa_schematic_utils
and eeschema_kiface_objects, which builds schematic_lexer.h.
2022-09-26 16:55:59 +00:00