Salvador E. Tropea
f279e7319e
Added test for a BoM from multiple projects.
2021-01-27 11:51:26 -03:00
Salvador E. Tropea
86b1c13790
Now information messages go to stdout (not stderr).
...
Debug, warning and error messages still use stderr.
2021-01-22 17:17:41 -03:00
Salvador E. Tropea
15474ae4d7
Now you can consolidate more than one project in one BoM.
...
The basic idea comes from pimpmykicadbom by Anton Savov (@antto)
2021-01-21 14:43:47 -03:00
Salvador E. Tropea
b347a6ca30
The board object is no longer passed to run methodes.
...
The global GS.board is used instead.
2021-01-15 14:14:17 -03:00
Salvador E. Tropea
de08a9fa60
Removed dead code in test_kicad_conf_guess_libs
2021-01-12 15:38:36 -03:00
Salvador E. Tropea
65833dc333
Internal BoM: The "Quantity" column no longer includes the DNF/C status.
...
- This status was moved to a separated column named `Status`.
- You can join both columns if you want.
Some people pointed out that adding characters to the qty column prevents
computations applied to the CSV files.
2021-01-12 15:21:34 -03:00
Salvador E. Tropea
e0ab45e95d
Now the default output name applies to the DRC and ERC report names.
...
This provides more coherent file names.
2021-01-12 13:44:09 -03:00
Salvador E. Tropea
b3e2d67871
Now we use KiCad to detect where is its configuration.
...
No more KiCad copycat code.
2021-01-06 13:49:24 -03:00
Salvador E. Tropea
ab9071b693
Moved pcbnew detection from kiplot.py to __main__.py.
...
Now the KiCad version is printed when debug is enabled.
2021-01-06 12:25:54 -03:00
Salvador E. Tropea
9a1e1f39e7
Internal BoM: added `no_conflict` option.
...
Used to exclude fields from conflict detection.
2021-01-05 12:09:29 -03:00
Salvador E. Tropea
edd4a72277
Better handling of empty type/name attributes in YAML config.
...
From #38
2021-01-04 16:27:52 -03:00
Salvador E. Tropea
3b1f62ac8e
Added a check for the 3D model in the STEP tests.
...
Now that they get downloaded this should work even in the docker image.
2020-12-30 15:41:48 -03:00
Salvador E. Tropea
f1c868b732
Added support for the last InteractiveHtmlBom to the tests.
...
Now the PCB modules are located in the footprints section of the
generated data. This change is a general move from the module
term to a more descriptive term `footprint`.
2020-12-29 09:01:58 -03:00
Salvador E. Tropea
4a3e7faace
Added a new filter used to rotate footprints.
...
Used to generate position files for some manufacturers like JLC.
Also in this patch:
- Now position files are naturally sorted (R10 after R9, not after R1)
- Position files in CSV format quotes only the columns that could
contain an space. Just like KiCad does.
- Fixed: Generic filter `include_only` option worked only when debug
enabled.
2020-12-28 18:26:27 -03:00
Salvador E. Tropea
0f7a55dc8b
Added support to generate negative X positions for the bottom layer
2020-12-28 09:30:33 -03:00
Salvador E. Tropea
007fc36d1e
Fixed the components fields reset mechanism.
...
My previous approach was incomplete.
2020-12-23 18:47:11 -03:00
Salvador E. Tropea
9f8ecff5d1
Added support to rename fields matching the variant to value.
2020-12-23 12:11:39 -03:00
Salvador E. Tropea
204ad189de
Changed how variant field renamer is implemented.
...
- Now is a separated filter type (`var_rename`).
- Now all variants support a `pre_transform` filter list.
- An internal `_var_rename` filter is defined (default).
2020-12-23 10:19:23 -03:00
Salvador E. Tropea
986f0c7157
KiBoM variants: support to field overwrite according to variant
2020-12-18 15:39:58 -03:00
Salvador E. Tropea
26d81d6475
Added support for missing field names in libraries.
...
- Closes #32
- Reported on SnapEda libs
2020-12-16 12:16:03 -03:00
Salvador E. Tropea
b17e9d78b2
Modified test reference dir for KiCad 5.1.8.
2020-12-16 12:14:44 -03:00
Salvador E. Tropea
d201843b6a
File name patterns are allowed for the `netlist_file` option.
...
- Closes #33
- File name patterns: %F is the name of the source file without
extension, but with the path.
2020-12-16 11:10:36 -03:00
Salvador E. Tropea
351e734dd6
Fixed long line (flake8)
2020-12-09 13:02:51 -03:00
Salvador E. Tropea
7248258672
Added Internal BoM HTML details.
...
- highlight cell when hover.
- allow to jump to REF of row number using anchors.
2020-12-09 11:32:37 -03:00
Salvador E. Tropea
1248e92b95
Fixed Internal BoM separator wasn't applied when using `use_alt`
...
From the SchrodingersGat/KiBoM#145 PR.
2020-11-11 14:32:20 -03:00
Salvador E. Tropea
577713efeb
Fixed excellon drill output.
...
When using unified output and not using default KiCad names.
Fixes #25
2020-11-02 16:07:05 -03:00
Salvador E. Tropea
b27872d7e8
Fixed problems when using the `pdf_pcb_print` on special case.
...
When using variants to remove a component with ridiculous pads
that only has solder paste (no copper, nor even solder mask
aperture).
2020-10-27 17:58:51 -03:00
Salvador E. Tropea
2e568a563a
Adapted the colors test to colorama ANSI sequence.
2020-10-24 17:26:32 -03:00
Salvador E. Tropea
adf6c7a5b1
Modified tests to keep kibom-variant_3.pro
2020-10-24 17:22:08 -03:00
Salvador E. Tropea
e6557a8148
Fixed wrong test project added to repo.
2020-10-24 17:17:22 -03:00
Salvador E. Tropea
68269c10f1
Avoid KiAuto warnings about missing project for pdf_pcb_print
...
This applies to cases using variants.
Now we copy the current project to the temporal location.
Closes #23
2020-10-24 16:25:09 -03:00
Salvador E. Tropea
de9628e5c1
Added columns configuration for position files.
...
You can customize which columns are used, their names and order.
Closes #22
2020-10-23 14:18:11 -03:00
Salvador E. Tropea
67d879ece1
Fixed flake8 details
2020-10-22 13:22:03 -03:00
Salvador E. Tropea
1a77b2d007
Added support for build versions of KiCad compiled locally.
2020-10-22 13:01:53 -03:00
Salvador E. Tropea
263b9c41e4
Fixed log.init() errors when pcbnew/yaml modules aren't installed.
...
Also added tests for these cases.
2020-10-20 11:41:01 -03:00
Salvador E. Tropea
14cdd33c6d
Added support for the KiCad 6 default layer names.
...
Not deeply tested.
KiCad 6 support user names for technical layers, and assigns new
names to them.
2020-10-19 16:47:13 -03:00
Salvador E. Tropea
df83e6f93d
Added more KiCad 6 test cases.
2020-10-19 13:15:33 -03:00
Salvador E. Tropea
127ad89483
Added the name of the error to the tests when it fails.
...
Not just the error level.
2020-10-19 13:10:24 -03:00
Salvador E. Tropea
d850bb8ffe
Merge pull request #19 from INTI-CMNB/try_mcpyrate
...
Replace mcpy by mcpyrate
2020-10-17 15:28:40 -03:00
Salvador E. Tropea
a62c3440e3
Disabled the cache related tests, no longer apply.
2020-10-17 14:30:23 -03:00
Salvador E. Tropea
2d55859782
Code style fixes (flake8)
2020-10-17 12:03:06 -03:00
Salvador E. Tropea
e3ae5e6284
Restored the disabled test_position
2020-10-17 11:58:58 -03:00
Salvador E. Tropea
7a16f28d70
Adapted cache tests to mcpyrate.
...
Using `mcpyrate` we don't need to worry about cache files.
2020-10-17 11:31:16 -03:00
Salvador E. Tropea
087ef2bbb0
Trying to fix coverage details using copy_location
2020-10-16 18:58:51 -03:00
Salvador E. Tropea
17e75236da
KiCad 6 no longer has SetPlotPadsOnSilkLayer
2020-10-16 18:40:20 -03:00
Salvador E. Tropea
fec0091712
Added support for KiCad 6 to drill outputs.
...
I wonder why KiCad 6 doesn't provide a compatibility function for
GetAuxOrigin. The project seems to be trying to reduce the ammount
of code (removing old code) at the cost of breaking every existing
plug-in.
2020-10-16 17:04:37 -03:00
Salvador E. Tropea
92678bf3cc
Adapted all test_bom tests to run with KiCad 5.99.
...
Also simplified the context.TestContextSCH instantiation.
2020-10-16 16:42:17 -03:00
Salvador E. Tropea
7c7549e6d7
Changed mcpy by mcpyrate to test its functionality.
2020-10-16 15:32:00 -03:00
Salvador E. Tropea
e2a00a6f7d
Fixed test_bom_cfg_2, now includes the footprint
2020-10-15 19:37:34 -03:00
Salvador E. Tropea
d4a2d40593
Adapted some `bom` tests to pass with KiCad 5.99.
2020-10-15 18:58:10 -03:00
Salvador E. Tropea
395f2df3f0
Updated to include the footprints.
2020-10-15 18:56:10 -03:00
Salvador E. Tropea
b535ebaeb2
Adapted the `test_filter_no_number_2` test
...
Now we expect an `error` not necesarily a `number`.
2020-10-15 17:28:33 -03:00
Salvador E. Tropea
c80fc49b54
Added infraestructure to support KiCad 6 tests.
2020-10-14 18:03:18 -03:00
Salvador E. Tropea
cddf7c807d
Added directory for future KiCad 6 reference tests.
2020-10-14 16:55:55 -03:00
Salvador E. Tropea
0ebedc398c
Renamed ERC/DRC tests to run them individually.
2020-10-14 16:07:09 -03:00
Salvador E. Tropea
257a6ff2fa
Added support for --mirror pcbnew_do export option.
...
It currently works only for KiCad 5.99
2020-10-14 12:34:00 -03:00
Salvador E. Tropea
86ead74c27
Added KiBot warning filters.
...
- Closes #15
- This patch also changes the logging initialization, that was broken at
some recent point.
- Also adds tests to ensure the mechanism used to avoid repeated
warnings is working.
2020-10-12 16:31:47 -03:00
Salvador E. Tropea
c8e81a4668
Added numbers to all the warnings
2020-10-09 18:33:51 -03:00
Salvador E. Tropea
1aee407cb9
Fixed KiBom variants special cases.
...
When using multiple variants and a components used more than one,
specifying oposite rules.
2020-10-09 16:00:52 -03:00
Salvador E. Tropea
4ea81d80a3
Added test for filter help.
2020-10-09 11:59:13 -03:00
Salvador E. Tropea
71fe37cfc6
Support for new `pcbnew_do export` options.
2020-10-09 11:27:30 -03:00
Salvador E. Tropea
c59c31fb6e
Added support for KiCad v6 to the position output.
2020-09-21 19:17:31 -03:00
Salvador E. Tropea
27e4c23236
Added support for reference separator in BoMs.
...
So you can get things like "R1, R2, R3"
From the following PR: SchrodingersGat/KiBoM#139
by @n0dyjeff
2020-09-19 17:35:31 -03:00
Salvador E. Tropea
257b9fdd3f
Added tests for global and command line variant selection.
2020-09-12 08:24:47 -03:00
Salvador E. Tropea
b03b56ae5d
Added more coherence to the variants/filters.
...
- Now they behave more coherently across outputs.
- Component status is explicitly reset, so having a variant + filter
behaves in a more consistent way. Even when this isn't the
recommended use.
- Virtual components are handled by the exclude filter.
- Moved code to modify the PCB to VariantOptions.
- Added a real virtual component to the tests, not a ridiculous case.
2020-09-08 20:01:16 -03:00
Salvador E. Tropea
23e46df1c5
Added variants support to the PCB print (PDF)
...
Needs some adjustement, but is working.
2020-09-07 19:26:16 -03:00
Salvador E. Tropea
0e394b468b
Added variants support to the schematic SVG print.
2020-09-06 18:22:38 -03:00
Salvador E. Tropea
59ddbaa41f
Adjusted the tests for IBoM's variants support.
...
- Removed the extra filters that aren't needed now.
- Added a couple of test cases to cover special situations.
2020-09-05 19:31:29 -03:00
Salvador E. Tropea
d719718eca
Moved KiBoM default behavior to the KiBoM variant.
...
So it can be applied to other outputs.
2020-09-05 18:58:26 -03:00
Salvador E. Tropea
6800a747e6
Fixed flake8 details
2020-09-05 18:54:54 -03:00
Salvador E. Tropea
7e5791fcfa
Added variants to the IBoM output.
2020-09-05 17:48:25 -03:00
Salvador E. Tropea
a59870808d
Made the image comparisson more fuzzy.
2020-09-04 18:51:05 -03:00
Salvador E. Tropea
d09400d49d
Added support for variants to the PcbDraw output.
2020-09-04 18:08:22 -03:00
Salvador E. Tropea
dab7baa2d4
Fixed show_components validation in out_pcbdraw.
...
The same error could be in other places.
I had to change the internal logic in Optionable.
The old code allowed invalid values to be used.
2020-09-04 18:06:17 -03:00
Salvador E. Tropea
cf46a8ba86
Added variants support to the STEP output.
...
3D Models of excluded components are removed.
2020-09-03 18:50:30 -03:00
Salvador E. Tropea
b36e276969
Added crosses in the *.Fab layer for excluded components.
2020-09-03 17:17:08 -03:00
Salvador E. Tropea
8bf0a13210
Remove filtered components from the *.Adhes layer.
...
All shapes in the *.Adhes are removed.
2020-09-03 12:29:04 -03:00
Salvador E. Tropea
c56af11007
Added variants to all the PCB plot outputs.
...
Tested for gerbers that are currently excluding pads from *.Paste.
2020-09-03 11:11:03 -03:00
Salvador E. Tropea
26ee971e26
Added variants suport to out_position
...
Also: we never include virtual components.
2020-09-02 18:08:50 -03:00
Salvador E. Tropea
5e11b325a1
Added test for multiple calls to KiConf.init()
...
Now that the code avoids calling it over and over.
2020-09-02 18:08:26 -03:00
Salvador E. Tropea
9558f7cf45
Added test for rogue component in PCB.
2020-09-02 15:16:23 -03:00
Salvador E. Tropea
42562185ea
Added filter options using PCB attributes.
...
KiCad 6 will break this, we'll see how to adapt.
2020-09-02 14:48:26 -03:00
Salvador E. Tropea
220e2f252e
Added tests for various schematic strange cases.
...
- Component withour lib
- Missing component
- Poligon without points
- Pin with unknown direction
2020-09-02 10:04:32 -03:00
Salvador E. Tropea
018d99e3b2
Updated the "all-in-one" PDF reference.
2020-09-01 20:39:44 -03:00
Salvador E. Tropea
ff6282eca1
Added test for the new errors in DrawText elements.
2020-09-01 20:39:15 -03:00
Salvador E. Tropea
11cb826c06
Added more complexity to the "all-in-one" schematic.
...
- Use a library
- Use a compponent with user defined field.
- Get the user defined field from the lib
- Use a component with a circle
- Use a component with text
- Use a virtual component with ~ in name and # in ref
2020-09-01 20:35:43 -03:00
Salvador E. Tropea
e0de652105
Added more tests for the filters and variants.
2020-09-01 18:49:38 -03:00
Salvador E. Tropea
7f6144e32e
Added tests for sch_variant and pdf_print_sch
...
For the filter and variant stuff.
2020-09-01 16:56:31 -03:00
Salvador E. Tropea
744aa3b9c5
Added a simple output to generate filtered schematics.
...
They can display DNF components crossed!
2020-08-31 20:51:20 -03:00
Salvador E. Tropea
d5fe46ab8e
Updated error text in the test.
2020-08-31 20:48:11 -03:00
Salvador E. Tropea
48be2fa749
Merge pull request #5 from INTI-CMNB/variants
...
Added Variants and Filters
2020-08-30 12:10:29 -03:00
Salvador E. Tropea
0f0aa71baa
Added more tests for the filters and variants
2020-08-30 11:55:35 -03:00
Salvador E. Tropea
c0a1867dd5
Added support for filters to the internal BoM generator.
...
- Now we can configure more details, like the DNC.
- We can also mix KiBoM and IBoM strategies.
- Adapted the test examples that used filtering.
2020-08-29 17:41:57 -03:00
Salvador E. Tropea
249caad348
Implemented the IBoM variants styles.
...
The core functionality is now tested in the internal BoM.
The IBoM output needs adjust to allow using the variants with it.
2020-08-28 20:12:21 -03:00
Salvador E. Tropea
df013b57dc
Fixed flake8 details
2020-08-28 16:57:31 -03:00
Salvador E. Tropea
0bdce78004
Implemented the new variants mechanism in the internal BoM.
2020-08-28 16:49:20 -03:00
Salvador E. Tropea
7c11370afd
Added tests for missing convert and/or rsvg-convert
2020-08-27 19:18:08 -03:00
Salvador E. Tropea
45fde666be
Added test for the warning about extra spaces in fields.
2020-08-27 18:04:22 -03:00
Salvador E. Tropea
3023035b75
Added tests for PcbDraw JPG and PNG outputs
2020-08-25 13:47:49 -03:00
Salvador E. Tropea
140a45fdc6
Fixed variants BoM logic.
...
The variants logic for BoMs when a component resquested to be only
added to more than one variant.
This is related to SchrodingersGat/KiBoM#136 issue.
2020-08-24 10:53:56 -03:00
SET
1836e641e7
Added test to check we remove rogue cache files.
2020-08-19 11:42:12 -03:00
SET
422641a295
More robust behavior when the Python cache interferes.
...
Files using macros can't be cached. Now if we find caches for them we
try to delete the caches (pypi installation for example). If we can't
remove the files a warning is generated.
If we fail to load a plug-in an error explaining it is generated.
Also added a test to reproduce it.
2020-08-18 21:44:09 -03:00
SET
76193c9c93
Fixed plug-in test cases, used kiplot instead of kibot.
2020-08-18 21:37:17 -03:00
SET
89914443f0
Renamed the kiplot module as kibot.
...
Also added src/kibot script.
Updated the documentation and Debian packaging.
The default extension for config files now is .kibot.yaml
2020-08-16 22:04:03 -03:00
SET
15dbf9cce3
Added test for the new SVG output
2020-08-16 17:32:40 -03:00
SET
bfa912b67f
Added test case for variants as an empty string.
2020-08-16 00:24:21 -03:00
SET
b0733ae07f
Fixed tests that change directory when we run the test on a temporal.
2020-08-16 00:23:43 -03:00
SET
71d1ee3bc7
Added better generic example generation.
...
To add more realistic defaults.
2020-08-15 23:59:39 -03:00
SET
a2b25ce23e
Added a comment about the test strategy in the config errors.
2020-08-15 20:33:30 -03:00
SET
991f070e9f
Added variants test.
2020-08-15 20:33:09 -03:00
SET
1a83f34de4
Added tests for fails and variants in the library path guess
...
Also switched all to pytest.monkeypatch to make it uniform.
2020-08-15 19:30:04 -03:00
SET
3cb7022902
Modified where I catch KiConfError
...
So coverage has a chance to record it
2020-08-15 18:34:21 -03:00
SET
a35f7a0d10
Switched to mock to patch the environment
2020-08-15 18:11:54 -03:00
SET
d2a443d52d
Fixed where we catch KiConfError during test
2020-08-15 17:56:48 -03:00
SET
c0c3302645
Added tests for broken sym-lib-table.
2020-08-15 17:37:50 -03:00
SET
0908a6b599
Added more tests for KiCad config.
...
No HOME environment variable, guess lib path, determine lib path
from env.
2020-08-15 16:13:10 -03:00
SET
e29c7b2a93
Fixed tests adding to sys.path unconditionally
2020-08-15 15:25:02 -03:00
SET
400d5e436d
Fixed the KiCad config error tests.
...
They modified the environment and didn't undo the changes.
2020-08-15 15:24:18 -03:00
SET
d277bbbc0b
Added test for no KiConf instances and loading config from env
...
Also moved the KiCad config tests to a separated file.
2020-08-15 13:41:29 -03:00
SET
487021357b
Added tests for errors in the sym-lib-table
2020-08-15 12:42:07 -03:00
SET
9681064093
Fixed flake8 details
2020-08-15 11:06:45 -03:00
SET
8ede3089de
Fixed test with 2 LIBS entries.
...
Only one is valid.
2020-08-15 10:32:31 -03:00
SET
90dee902ed
Added tests for various strange cases that shouldn't interfere
...
Partial annotations, deeper hierarchy, etc.
2020-08-15 10:25:18 -03:00
SET
b8b4c87f25
Added test for successful BoM generation even when missing libs.
2020-08-14 19:58:47 -03:00
SET
cd8b88124e
Made the extra verbose tests more verborragic.
2020-08-14 19:58:00 -03:00
SET
09b7ed5eca
Added tests for title block errors.
2020-08-14 19:26:39 -03:00
SET
76ed259053
Moved the error tests to a separated directory.
...
They are too much.
Also simplified the test code.
2020-08-14 19:15:50 -03:00
SET
fa706c0083
Added tests for sub-sheets instantation
2020-08-14 18:59:20 -03:00
SET
c15e971da2
Added tests for errors in the SCH bitmap element.
2020-08-14 18:41:12 -03:00
SET
a30bddc3ce
Added tests for errors in no/connections, entries and wires.
2020-08-14 18:18:55 -03:00
SET
a1255590e2
Added test for various errors in the component instantiation.
2020-08-14 18:02:32 -03:00
SET
6258b79023
Added test for errors in AR and basic fields.
2020-08-14 17:29:18 -03:00
SET
844b678ace
Added test for errors in component labels.
2020-08-14 16:53:50 -03:00
SET
916aacafd6
Added more tests for the DCM and LIB errors.
2020-08-14 16:43:09 -03:00
SET
5d3cefe6ce
Added tests for errors in library components.
2020-08-14 16:25:16 -03:00
SET
1767e66220
Added tests for errors in the libraries components fields
2020-08-14 15:58:00 -03:00
SET
4f5f8d4187
Added tests for truncated libs and dcms
2020-08-14 14:14:19 -03:00
SET
177ee7e627
Added tests for SCH errors.
2020-08-14 13:47:23 -03:00
SET
6ff4f59702
Added comment about misisng tests
2020-08-14 13:44:00 -03:00
SET
8616fa811d
Updated the gitignore files.
2020-08-14 13:12:01 -03:00
SET
767bb4d4c6
Added style tests for HTML.
2020-08-14 13:06:27 -03:00
SET
437489acca
Fixed missing style for the HTML test
2020-08-14 13:06:03 -03:00
SET
a4082e617f
Added test for custom style in HTML.
2020-08-14 13:02:45 -03:00
SET
92e4209ca4
Added tests for bogus and custom logo for HTML
2020-08-14 12:29:47 -03:00
SET
86d9854a9b
Added test for URLs linked in HTML output.
2020-08-14 11:55:31 -03:00
SET
1879df2f6a
Added test for the sort using en_US locale and a bogus locale.
2020-08-14 11:33:42 -03:00
SET
815e475b8d
Added tests to exclude PCB and/or Stats info in CSV files.
2020-08-14 11:13:45 -03:00
SET
ea8f318696
Added tests for TXT and quote_all
2020-08-14 10:21:21 -03:00
SET
bcba581a01
Changed True -> true to make it uniform.
...
All YAML files are using lowecase.
2020-08-13 23:08:44 -03:00
SET
1782acfdea
Added test case for inductor without unit.
...
Missing "H"
2020-08-13 23:08:04 -03:00