Commit Graph

537 Commits

Author SHA1 Message Date
Salvador E. Tropea 0dc8817bfb Fixed KiCost test (because now KiCost works better) 2021-05-11 12:33:48 -03:00
Salvador E. Tropea 3255891ed0 Added comments to KiCost tests 2021-05-11 12:33:24 -03:00
Salvador E. Tropea 58ed8fb922 Added test to check we can select a distributor using its internal name 2021-05-11 12:13:04 -03:00
Salvador E. Tropea 7c23381adb Added distributors selection to KiCost+KiBot 2021-04-28 12:13:12 -03:00
Salvador E. Tropea f27dc68e4f Refined what is filtered from the CSV comparisson in KiCost tests 2021-04-25 11:16:40 -03:00
Salvador E. Tropea 1878510a47 Adapted test_kicost_simple references. 2021-04-25 10:28:56 -03:00
Salvador E. Tropea 55277a550f More KiCost integration in KiBoM.
- Also added level and comment to columns in the XLSX BoM output.
- Now user columns can be added to the KiCost sheet.
- The "Colors" sheet now includes KiCost colors
- The KiCost column names are more coherent with our names
- Style colors affects the KiCost colors
- About message includes KiBot version
- Header layout is also more coherent
- use_alt, number, max_col_width and ref_separator options are passed
  to KiCost
2021-04-25 09:29:56 -03:00
Salvador E. Tropea ae1e248e0b Fixed test_v5 reference prints. 2021-04-22 17:23:04 -03:00
Salvador E. Tropea e22e1db49a Added support for width, style and color in "wire notes"
Fixes #70
2021-04-22 12:33:13 -03:00
Salvador E. Tropea cfe61c9b7e Added board view export.
Closes #69
2021-04-20 13:22:56 -03:00
Salvador E. Tropea 16ddb9465f Added Internal BoM + KiCost integration
- Currently very basic, but you get "Costs" and "Costs (DNF)" work
  sheets in the XLSX output when the xlsx.kicost option is enabled.
2021-04-15 11:14:37 -03:00
Salvador E. Tropea 2689ccbca2 Made the ibom output smarter about the netlist
- Now a warning is issued if needed and absent
- We now also pass it to iBoM if needed and is there
Fixes #68
2021-04-12 12:42:26 -03:00
Salvador E. Tropea 7961209b0f Experimental mechanism to change 3D models according to the variant. 2021-03-31 18:00:43 -03:00
Salvador E. Tropea 7c3f273684 Basic KiCost support. 2021-03-31 12:27:55 -03:00
Salvador E. Tropea 1290bb6995 New KiCost variant style.
- New internal filters `_var_rename_kicost` and `_kicost_dnp`.
- New `skip_if_no_field` and `invert` options to the regex used in the
  generic filter.
2021-03-30 09:37:36 -03:00
Salvador E. Tropea afe80052b4 Added a new filter `var_rename_kicost`
Is very similar to `var_rename` with a few differences that makes it
suitable to emulate the KiCost field rename mechanism.
2021-03-25 12:57:26 -03:00
Salvador E. Tropea 01291ebe63 Added field rename filter.
Including an internal version to emulate KiCost behavior.
2021-03-23 13:20:26 -03:00
Salvador E. Tropea 40bd7c24f2 Added support for KiCost's subparts 2021-03-19 19:41:46 -03:00
Salvador E. Tropea 9478e42bb3 Documented #58 in the changelog and added a test case 2021-03-12 21:28:10 -03:00
Salvador E. Tropea 1b48e614a7 Added pattern expansion in the `dir` option for outputs
Closes #58
2021-03-12 21:14:39 -03:00
Salvador E. Tropea eab8550c11 Fixed makefiles tests.
Introduced by 4f73de1157
2021-03-12 15:05:24 -03:00
Salvador E. Tropea 5560c62d14 Errors and warnings from KiAuto now are printed as is. 2021-02-24 12:58:47 -03:00
Salvador E. Tropea 8fba0d9909 Added `erc_warnings` option to consider ERC warnings as errors. 2021-02-24 12:34:49 -03:00
Salvador E. Tropea 57c517d02b Passed the same verbosity level to KiAuto scripts. 2021-02-18 12:47:21 -03:00
Salvador E. Tropea 32310ba1fa Added test for makefile generation running the script from system. 2021-02-12 14:56:51 -03:00
Salvador E. Tropea 400476f3fb Added test for drill without map file. 2021-02-12 14:40:06 -03:00
Salvador E. Tropea ab8d3b4823 Added test for layer without _id (str convertion) 2021-02-12 14:37:14 -03:00
Salvador E. Tropea 2891a3a713 Added test for aggregate without ref_id. 2021-02-12 14:31:53 -03:00
Salvador E. Tropea 6a5c082ab7 Added test for suffix with UTF-8 2021-02-12 14:31:24 -03:00
Salvador E. Tropea 85c5db268e Added comments about caplog bugs in the pytest using for the docker image. 2021-02-12 14:30:35 -03:00
Salvador E. Tropea c1499479dc Removing part of test_search_as_plugin_ok
The caplog is failing on github docker image for this test.
2021-02-12 13:29:56 -03:00
Salvador E. Tropea d5a1df9eb7 Modified test suite to collect the error in test_search_as_plugin_ok 2021-02-12 13:10:22 -03:00
Salvador E. Tropea fb43de0e23 Added missing plu-in test file. 2021-02-12 12:31:51 -03:00
Salvador E. Tropea 61855a2d8c Added tests for debug details in generated makefiles. 2021-02-12 12:30:20 -03:00
Salvador E. Tropea a49d4e45fa Added import tests. 2021-02-12 11:40:26 -03:00
Salvador E. Tropea 38420ba173 Made the time-out test to also try a non-zero wait_start. 2021-02-12 11:39:30 -03:00
Salvador E. Tropea 80b7510c80 Made the JLCPCB position example more clear and easier to reuse. 2021-02-12 11:08:09 -03:00
Salvador E. Tropea 1b6cd3fad5 Adapted the makefile test for the new behavior 2021-02-11 11:54:35 -03:00
Salvador E. Tropea 67cee9988a Added workaroud for KiCad printing wxWidgets "traits" errors. 2021-02-10 09:40:41 -03:00
Salvador E. Tropea f698e44642 Now we can load InteractiveHtmlBom even when installed only as plugin
Fixes #49
2021-02-08 15:37:01 -03:00
Salvador E. Tropea e31539e4b1 Added missing test config file. 2021-02-08 15:36:22 -03:00
Salvador E. Tropea ce0f22edce Adjusted some details about the time-out control
- Warning when detected pointing to use the global options
- Now pcbnmew_do/eeschema_do output is captured
- Warning when using floating value for kiauto_wait_start (no fail)
- A simple test for time-out
Fixes #48
2021-02-08 12:07:54 -03:00
Salvador E. Tropea f6dac6ef13 Problems using internal names for drill maps in gerb_drill output.
Fixes #47
2021-02-06 12:55:02 -03:00
Salvador E. Tropea 437f922341 Moved coverage calls, why out_step is wrongly reported? 2021-02-04 16:20:57 -03:00
Salvador E. Tropea 41c667cb1f Added test for unknown prefix in units. 2021-02-04 16:17:34 -03:00
Salvador E. Tropea 047fe53e1d Added tests for step and pdf_pcb_print command fails. 2021-02-04 16:09:50 -03:00
Salvador E. Tropea 0babc286af Modified the tests to cover the missing lines. 2021-02-04 13:40:14 -03:00
Salvador E. Tropea 2e780bd860 Fixed flake8 errors. 2021-02-04 13:11:36 -03:00
Salvador E. Tropea 9f2344ed4a Added tests for macros applied to stuff not currently used. 2021-02-04 13:06:44 -03:00
Salvador E. Tropea 685ab34c56 Added test for bogus argument passed to Layer.solve() 2021-02-04 12:00:17 -03:00
Salvador E. Tropea fa7fe0a5d6 Added test for undocumented plug-in in example generation. 2021-02-04 11:45:53 -03:00
Salvador E. Tropea fa7dde3008 Added test for undocumented filter. 2021-02-04 11:33:52 -03:00
Salvador E. Tropea dd28c63089 Added test for undocumented preflight. 2021-02-04 11:27:57 -03:00
Salvador E. Tropea e413cf0214 Added test for plug-in class without docstring. 2021-02-04 11:14:27 -03:00
Salvador E. Tropea ba6787660c Added test for undocumented option. 2021-02-04 10:42:02 -03:00
Salvador E. Tropea cc19d12d60 Added test for KiCad config redirection. 2021-02-04 10:28:39 -03:00
Salvador E. Tropea f39024d23d Added test for plug-in that fails to generate its targets. 2021-02-04 10:06:48 -03:00
Salvador E. Tropea d97ca18590 Added test for rotation filter in the bottom side. 2021-02-03 17:13:12 -03:00
Salvador E. Tropea 2d4f73d822 Fixed interaction between tests testing eeschema_do version 2021-02-03 16:07:36 -03:00
Salvador E. Tropea afaecfe570 Added tests for run_e/drc fails (mocked) 2021-02-03 15:16:42 -03:00
Salvador E. Tropea 48b1eafafc Added test for debug stats in BoM output. 2021-02-03 12:49:57 -03:00
Salvador E. Tropea 323dad144c Added test for no sch loaded in KiBoM output. 2021-02-03 12:47:07 -03:00
Salvador E. Tropea d1ef2c8cbf Added style dependency in pcbdraw makefile target.
- Also now we make sure the style is an existent file.
2021-02-03 12:41:30 -03:00
Salvador E. Tropea 80df7d76c7 Added tests to fully cover config_reader.
- Output comment as None
- Empty output name
- Empty variant type
2021-02-03 12:31:39 -03:00
Salvador E. Tropea d12837d5ba Added tests for missing out_bom cases.
- No file in aggregate
- Missing file in aggregate
- Sch not loaded
2021-02-03 12:16:55 -03:00
Salvador E. Tropea 602f0dd261 Added a STEP test using a model that is inside our tree.
Ensures all models will be found.
2021-02-03 11:26:37 -03:00
Salvador E. Tropea 0b3891d942 Added tests for bogus 3D model and another shipped. 2021-02-03 11:12:24 -03:00
Salvador E. Tropea 56e5352164 Added test for var_rename filter without variant. 2021-02-03 10:40:12 -03:00
Salvador E. Tropea 370b5bdaf6 Added test for run_drc to the makefile test.
- Also test the schematic fallback for preflight deps.
2021-02-03 10:23:15 -03:00
Salvador E. Tropea 265bdac7c2 Added test for update_xml in makefile test. 2021-02-02 12:31:34 -03:00
Salvador E. Tropea d8d0868784 Added test case for empty separator in var_rename filter. 2021-02-02 12:21:55 -03:00
Salvador E. Tropea 2bbbebf43a Added test for schematic with company name in merged BoM tests. 2021-02-02 12:13:33 -03:00
Salvador E. Tropea 79fe05ed9f Added makefile test for sch_variant case.
- Also avoided to repeat the same SCH dependency more than once.
2021-02-02 11:55:36 -03:00
Salvador E. Tropea 56fa06ef15 Added test for missing id in position columns.
Also excluded KiCad 6 code from out_position.
2021-02-02 11:17:09 -03:00
Salvador E. Tropea 82f5aa9a0b Added makefile tests for schematic print (PDF and SVG) 2021-02-02 10:36:19 -03:00
Salvador E. Tropea d5a31c6d87 Added tests for the missing lines in out_ibom.py. 2021-02-01 17:12:40 -03:00
Salvador E. Tropea 10f0706482 Exclude KiCad 6 code and enabled coverage for out_base tests. 2021-02-01 16:39:10 -03:00
Salvador E. Tropea f7826a7667 Added tests to cover missing lines in out_pdf_pcb_print.py 2021-02-01 15:51:04 -03:00
Salvador E. Tropea 86f21ff08c Fixed path to makefile test. 2021-02-01 15:06:30 -03:00
Salvador E. Tropea 8b459e85d5 Moved the plug-ins load to the coverage section in the tests.
So we get the re-load protection covered in the reports.
2021-02-01 14:54:13 -03:00
Salvador E. Tropea e3766519ac Added test for the warning about filenames with $. 2021-02-01 14:53:38 -03:00
Salvador E. Tropea 755ec4aa76 Fixed test_yaml_errors, wasn't adapted to the new fixture. 2021-02-01 11:35:48 -03:00
Salvador E. Tropea 01131bfc64 Fixed flake8 issues (indentation and obsolete request) 2021-02-01 11:28:11 -03:00
Salvador E. Tropea 7413f12924 Added missing test file `tests/test_plot/fake_plugin/out_bogus.py` 2021-02-01 11:23:41 -03:00
Salvador E. Tropea 3d5547f6c6 Changed the way we get the target test directory.
- Pytest 6 removed the old global mechanism.
- Now using a `fixture`
2021-02-01 11:16:33 -03:00
Salvador E. Tropea b53ffbb032 Added Python cache creation before running the tests.
It looks like pytest is loading some modules without macros. The cache
gets created without them. But when we load the same modules with
macros it fails.
2021-01-29 15:27:52 -03:00
Salvador E. Tropea d796abde2e Separated some complex tests from the test_misc.
- Moved them test_misc_2
- Refined the tests in test_misc_2 to work together
2021-01-29 13:28:29 -03:00
Salvador E. Tropea b271caf145 Added tests for no get_targets implementation and deps fallback. 2021-01-29 12:38:20 -03:00
Salvador E. Tropea d9986b0599 Added PCBDraw case to the makefile test. 2021-01-29 12:22:31 -03:00
Salvador E. Tropea 55c988bb66 Added test for KiCad < 5.1.6 2021-01-29 12:15:46 -03:00
Salvador E. Tropea e6163ae5aa Added drill case to makefile test. 2021-01-29 11:54:09 -03:00
Salvador E. Tropea 4466277bde Added KiBoM case to the makefile test. 2021-01-29 11:24:51 -03:00
Salvador E. Tropea c64fb3871c Added test for STEP file in makefile 2021-01-29 10:37:05 -03:00
Salvador E. Tropea 54febcae44 Added comments and no target pre-flights to the makefile test. 2021-01-29 09:34:46 -03:00
Salvador E. Tropea 51aeb5be32 Added test for run_erc in makefile. 2021-01-29 09:27:02 -03:00
Salvador E. Tropea 6965d73c4e Added test for ibom in makefile 2021-01-29 09:07:17 -03:00
Salvador E. Tropea f29c0c5361 Added more test for compress output. 2021-01-29 08:46:23 -03:00
Salvador E. Tropea 89eedf1d3b Disabled rar error message test. 2021-01-28 17:47:42 -03:00
Salvador E. Tropea 37eefac973 Added tests for some ouyt_compress special cases.
- No rar
- rar fails
- rar file exists
- Empty output
2021-01-28 17:33:01 -03:00
Salvador E. Tropea 9a446c0a91 Added extra debug to one gerber test. 2021-01-28 15:51:10 -03:00
Salvador E. Tropea 8299ed5d96 Added tests for the new options to control protel extensions. 2021-01-28 15:38:19 -03:00
Salvador E. Tropea 84470bbc11 Added first makefile generation test 2021-01-28 12:43:01 -03:00
Salvador E. Tropea c4c33af680 Added some compress tests.
Covers zip, tr.bz2 and rar creation for internal BoM, position and
gerber files.
2021-01-27 16:12:46 -03:00
Salvador E. Tropea eea93ea8ec Improved rotation filter coverage
- Check errors
- Try extra debug
2021-01-27 13:35:37 -03:00
Salvador E. Tropea bb5ab6119a Fixed extra NL at the end of file (flake8) 2021-01-27 13:34:52 -03:00
Salvador E. Tropea ce387ac423 Added test for missing colorama module. 2021-01-27 12:55:19 -03:00
Salvador E. Tropea 01459ce85e Added tests for merged BoMs for HTML, XML and XLSX formats. 2021-01-27 12:22:03 -03:00
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