Commit Graph

153 Commits

Author SHA1 Message Date
Salvador E. Tropea 5940e7bcd6 Fixed missing BoardViewOptions.get_targets
Fixes #167
2022-03-24 14:05:48 -03:00
Salvador E. Tropea b5d5bea324 Made more clear which preflight options modifies files
- Also unified to "preflight" (more common than pre-flight)
Related to #165
2022-03-24 13:08:51 -03:00
Salvador E. Tropea 688d637f6c Added regression test for #164 2022-03-17 18:40:25 -03:00
Salvador E. Tropea e4eb2c14cd Adjusted the report tests for KiCad 5.
- Some unknown inconsistency in the API.
2022-03-17 18:27:00 -03:00
Salvador E. Tropea 6b6d22afa8 Added report conversion using pandoc 2022-03-17 12:13:51 -03:00
Salvador E. Tropea cb47cf3042 New output to export PCB in GENCAD format.
Closes #159
2022-03-08 15:55:34 -03:00
Salvador E. Tropea 86aa7b6357 New preflight to annotate according to PCB coordinates
Related to #93
2022-03-08 14:33:38 -03:00
Salvador E. Tropea 0c0c6ffd62 New output to join PDFs.
Closes #156
2022-03-03 16:13:00 -03:00
Salvador E. Tropea 49962cafb8 Added some basic layer and schematic inclusion in reports.
- Related to #93
2022-03-02 18:17:42 -03:00
Salvador E. Tropea 27c987217c New preflight to annotate power components
Closes #76
2022-02-26 13:21:40 -03:00
Salvador E. Tropea f26ab6ede8 Fixed B006 Do not use mutable data structures for argument defaults. 2022-02-17 16:45:10 -03:00
Salvador E. Tropea db6cf3dace Added Board View test 2022-02-07 13:27:56 -03:00
Salvador E. Tropea 52df7e85b3 Fixed missing project for light control
- In KiCad 6 some importants settings were moved to the project.
  I.e. the clearance
2022-01-16 01:02:18 -03:00
Salvador E. Tropea 278de8fb16 Added report generation (for design house)
Related to #93
2022-01-15 15:47:48 -03:00
Salvador E. Tropea e2147f40ee Added fields update to the QR stuff
- Footprints are now virtual
- Fixed: Modules used the SCH text
- Fixed: Wrong KiCad 6 SCHs (not copied from bogus ones)
2022-01-06 14:25:09 -03:00
Salvador E. Tropea be59ee397e Added support for KiCad 6 to the `update_qr` preflight.
Related to #93
2022-01-04 16:52:12 -03:00
Salvador E. Tropea 7992fd9888 Added preflight option to update the QR codes.
- Needed for s-expression files
- Not working for KiCad 6 (bug in the Python API)
2022-01-04 10:21:59 -03:00
Salvador E. Tropea d0801d1e5d Fixed test_qr_lib_1
- Problems when running without X
- KiCad 5 vs 6 details
2022-01-03 12:55:26 -03:00
Salvador E. Tropea 5017f7e078 Added QR codes generation: symbols and footprints.
Related to #93
2022-01-03 12:35:33 -03:00
Salvador E. Tropea 64bfc4824d Added `--cli-order` option to generate outputs in arbitrary order.
- Also updated some output details in the README
Related to #106
2021-12-31 10:40:17 -03:00
Salvador E. Tropea 6d939bbdbe Added datasheets downloader
Closes #119
2021-12-29 15:20:54 -03:00
Salvador E. Tropea 54332a8630 Added suypport for KiCad 6 sch extension to makefile tests 2021-12-27 15:21:41 -03:00
Diego Capusotto 3eb82bc86d Changed: The `%d/%sd/%bd` expansion patterns are now affected by the global `date_format`.
- Can be disabled using `date_reformat: false`.
- Related to #121
2021-12-15 17:15:49 -03:00
Diego Capusotto e2599731f7 Added `output_id` output option to be expanded by %I 2021-12-14 16:19:49 -03:00
Salvador E. Tropea a82f130ad9 Now you can compress files relative to the current working directory.
Related to #93
2021-12-03 19:30:11 -03:00
Salvador E. Tropea 9e4adf5286 Added patterns to expand the title blck comments.
Related to #93
2021-12-03 10:13:42 -03:00
Salvador E. Tropea 70fb334856 A mechanism to avoid running some outputs by default.
Related to #112
2021-12-02 18:47:40 -03:00
Salvador E. Tropea a430916a4a Now you get an error when defining two outputs with the same name. 2021-12-02 14:58:37 -03:00
Salvador E. Tropea 6392124f9f Added import for globals. 2021-12-02 10:33:19 -03:00
Salvador E. Tropea 5291af250c Adapted the pre-flight test to the new output format. 2021-12-01 19:45:11 -03:00
Salvador E. Tropea 5620113b49 Fixed command line for `--list`
- PCB and SCH can be needed
- Adapted the test for --list
2021-11-15 13:38:35 -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 eab8550c11 Fixed makefiles tests.
Introduced by 4f73de1157
2021-03-12 15:05:24 -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 1b6cd3fad5 Adapted the makefile test for the new behavior 2021-02-11 11:54:35 -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 f39024d23d Added test for plug-in that fails to generate its targets. 2021-02-04 10:06:48 -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 0b3891d942 Added tests for bogus 3D model and another shipped. 2021-02-03 11:12:24 -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 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 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 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 e3766519ac Added test for the warning about filenames with $. 2021-02-01 14:53:38 -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 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 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 84470bbc11 Added first makefile generation test 2021-01-28 12:43:01 -03:00
Salvador E. Tropea ce387ac423 Added test for missing colorama module. 2021-01-27 12:55:19 -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 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 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 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 c80fc49b54 Added infraestructure to support KiCad 6 tests. 2020-10-14 18:03:18 -03:00
Salvador E. Tropea c8e81a4668 Added numbers to all the warnings 2020-10-09 18:33:51 -03:00
Salvador E. Tropea 4ea81d80a3 Added test for filter help. 2020-10-09 11:59:13 -03:00
Salvador E. Tropea 257b9fdd3f Added tests for global and command line variant selection. 2020-09-12 08:24:47 -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 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
Salvador E. Tropea f824bee832 Added KiCad v5.x schematic support.
It provides extra information, like which files are part of the
Schematic.
Library components not yet implemented.
2020-07-27 22:01:12 -03:00
Salvador E. Tropea 52e6bb1b5f Added support for PcbDraw 2020-07-11 13:49:03 -03:00
Salvador E. Tropea f72ff3f441 Extra dot in step.metric_units docstring.
Remove dead code in check_eeschema_do()
Fixed the way we read scale stuff from a PCB
Added special checks for check_script and check_version
2020-07-09 12:50:27 -03:00
Salvador E. Tropea 587ef177b3 Added test for corrupted PCB, skip a preflight that isn't in use and output
plugin
2020-07-09 09:54:25 -03:00
Salvador E. Tropea 995b6990aa Added HPGL and PS autoscaling tests.
Added test for example in a dir that must be created.
Removed code not used in docstring trim.
2020-07-08 23:16:04 -03:00
Salvador E. Tropea 8f17733354 Added PS autoscale and --example -p without PCB tests. 2020-07-08 22:55:41 -03:00
Salvador E. Tropea 4368364489 Refactored the BaseOutput class to make it more similar to the YAML
Now the options are just an attribute of the outputs.
It means we have a set of classes for the options.
All the output content is parsed by the classes, including the Layers.
Now the layers support a simple string (with interesting shortcuts), a list of
strings or the original list of dicts.
2020-07-08 15:17:24 -03:00
Salvador E. Tropea ec35d2443f Added option to copy plot options from the PCB to the YAML example.
Also added DXF.metric_units and updated the README.
2020-07-01 20:43:03 -03:00
Salvador E. Tropea d926a5419e Added --example basic tests
Also added support for output directory to --example
2020-06-30 20:43:42 -03:00
Salvador E. Tropea 3c6f4950c7 Now the schematic can be specified separately.
We now test if the PCB and/or SCH are there only when we need them.
2020-06-29 19:25:54 -03:00
Salvador E. Tropea 42d1f14056 Now layers are solved when we really need it.
So we can do some operations (like --list) without loading the board.
Also: now the names for the layers are asked to pcbnew classes (not from file)
2020-06-29 12:55:02 -03:00
Salvador E. Tropea d48f258c33 Added tests for the various help options. 2020-06-26 14:48:40 -03:00
Salvador E. Tropea 2f0f3f755d Changed the command line parser from argparse to docopt.
This make the code cleaner and better documented.
Now the usage is more clear, and also a little bit more strict.
I'm using a modified docopt because I preffer using args.option instead of
args['--option'], I also fixed a few flake8 issues in docopt.py.
2020-06-26 12:04:56 -03:00
Salvador E. Tropea 6ed99d8515 Tests adapted to the new error message strings. 2020-06-19 16:00:16 -03:00
Salvador E. Tropea c2a735e9a6 For some reason Python sys.path vector has a limit and I was abusing it.
Each test module setups the path to find the needed modules, but didn't check
if it was necesary. Creating a long path that finally started to fail.
2020-06-15 15:14:53 -03:00
Salvador E. Tropea 7b8aa57610 Added missing blank line and removed extra blank line at the end. 2020-05-26 14:01:11 -03:00
Salvador E. Tropea 21bc1f939e Added test for missing PCB file in command line 2020-05-26 12:23:43 -03:00
Salvador E. Tropea b429a81473 Added test for --list option 2020-05-26 12:12:18 -03:00
Salvador E. Tropea 92de025c96 Added test for wrong config file name 2020-05-26 12:05:35 -03:00
Salvador E. Tropea c41faba302 Added tests for guessing the board and YAML, also missing YAML 2020-05-26 12:02:16 -03:00
Salvador E. Tropea b5448739ee Added a test for missing PCB file 2020-05-25 20:28:35 -03:00