Commit Graph

339 Commits

Author SHA1 Message Date
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
SET 87a1a97e9a Added test for RLC normalization. 2020-08-13 22:46:53 -03:00
SET 7544f75a53 Fixed problems when comparing gray scale images. 2020-08-13 22:32:15 -03:00
SET 2e4508ad50 Added code to tolerate KiCad version difference in images. 2020-08-13 20:18:59 -03:00
SET 5ad4687d9d Fixed missing argument in tests that should fail 2020-08-13 20:13:49 -03:00
SET d904dc516f Added a test for missing xlsxwriter module.
Is reported as an error, not fatal, but error.
2020-08-13 19:17:17 -03:00
SET 45a117afe5 Added missing locale test definitions.
The es_AR.UTF-8 is the needed, the en_US.UTF-8 is just to validate
the difference.
2020-08-13 17:28:06 -03:00
SET 3224a44173 Added test for decimal point locale support.
Hopefully works on docker ...
2020-08-13 16:59:12 -03:00
SET 1067f364c8 Added more cases for the RLC sort test 2020-08-13 12:42:16 -03:00
SET b60b0ef680 Added test for wrong logo format. 2020-08-12 20:35:34 -03:00
SET 3df9e8b1c7 Added test for invalid column name 2020-08-12 20:32:35 -03:00
SET 535949e159 Added test for explicit exclude_any regex 2020-08-12 20:10:34 -03:00
SET 9a0e2bdd24 Fixed flake8 small details 2020-08-12 20:09:58 -03:00
SET 1dcda68cbc Added tests for missing styles and logos. 2020-08-12 19:49:27 -03:00
SET 7f45f022c7 Added tests for various HTML header layouts. 2020-08-12 19:13:41 -03:00
SET c263859de6 Made the "Total Compomponents" label coherent between HTML and XLSX 2020-08-12 19:12:35 -03:00
SET eef8041843 Better test for multiple digikey links 2020-08-12 17:56:14 -03:00
SET ec821f7809 Added test for multiple digikey links. 2020-08-12 17:35:55 -03:00
SET 5a1a38a0ca Added test for missing field in column list (internal BoM) 2020-08-12 17:34:05 -03:00
SET 951dbc510b Fixed XLSX tests when no links. 2020-08-12 15:47:14 -03:00
SET 768d67d0ad Added datasheet and digikey link tests for XLSX 2020-08-12 15:40:47 -03:00
SET 56c30f4227 Added test for "generate_dnf: false" for the XLSX 2020-08-12 14:35:27 -03:00
SET 3687ccb0bf Forced column wrap during the tests of XLSX format. 2020-08-12 13:33:07 -03:00
SET bbea3ad328 Retest forced. 2020-08-12 13:09:02 -03:00
SET 92cdf49c2d Added XLSX tests for style variations.
Just tested they are accepted, not correctness.
2020-08-12 13:03:08 -03:00
SET 6d2383a0e1 Fixed test_int_bom_column_rename_xlsx
Didn't take the new header return value
2020-08-12 12:24:00 -03:00
SET 88940119f6 Added test for XLSX header information.
Covering various situations, not all.
2020-08-12 12:05:40 -03:00
SET 51802aa42b Added sheetpath + SCH load + sub-sheet recycle test.
A sheet is included twice to test dual reference names.
The SCH contains all the possible KiCad elements.
2020-08-12 09:53:47 -03:00
SET 652b38f04d Added test for DNF in the Value. 2020-08-11 19:26:37 -03:00
SET f229956b25 Added test for DNC in value and in Config 2020-08-11 19:09:44 -03:00
SET 3a6550cf07 Added test for `test_regex` 2020-08-11 18:58:17 -03:00
SET 0f4fa12f1f Added "include_only" test. 2020-08-11 18:51:35 -03:00
SET 36a01ee038 Fixed interference between test patterns.
KIBOM_TEST_HEAD_TOL, wasn't cloned.
2020-08-11 18:28:38 -03:00
SET 3bb2bc51a0 Added test for "exclude_any" 2020-08-11 18:20:20 -03:00
SET 14f2b2b353 Added test for field collision. 2020-08-11 15:54:02 -03:00
SET e43196e0d7 Added test for empty user field. 2020-08-11 15:11:14 -03:00
SET 405e172395 Added test for multi-part component.
Check it isn't repeated.
2020-08-11 14:46:10 -03:00
SET 6d50e4bd27 Added test for non contiguous reference ranges. 2020-08-11 13:40:48 -03:00
SET d49d3b498f Added test for empty list of group fields. 2020-08-11 13:21:50 -03:00
SET 2995270155 Added tests for merge_blank_fields and component_aliases 2020-08-11 12:26:30 -03:00
Salvador E. Tropea 8b3d70dae6 Added some UTF-8 text to a field for testing purposes. 2020-08-05 21:16:50 -03:00
Salvador E. Tropea 46c55fcf91 Separated the format specific options for internal BoM
And now we have more options.
- CVS: can quote all values.
- HTML and XLSX: styles adjust, including a logo.
- XLSX: now has the same options as HTML
Also a fix in the "join" mechanism for "case insensitive" support.
2020-08-05 19:57:32 -03:00
Salvador E. Tropea 547c3a22bb Simplified the columns logic for the internal BoM.
The ColumnList class now is just a place holder for column names.
We just create the list of columns from the user preferences or
creating a good default and then we just use this list.
2020-08-01 20:15:33 -03:00
Salvador E. Tropea 9e8aebc3aa deeepcopy no longer needed. 2020-08-01 18:41:35 -03:00
Salvador E. Tropea 5be7254594 Now the row number column is a regular column.
Its name is `Row` and you can put everywhere.
No `number_rows` option needed or special cases, is just another column
2020-08-01 18:31:26 -03:00
Salvador E. Tropea 670e379f65 Fixed style details (flake8) 2020-08-01 16:27:39 -03:00
Salvador E. Tropea a2ef1359d0 Added test for the KiBoM bug about columns not fully case insensitive. 2020-08-01 16:24:28 -03:00
Salvador E. Tropea 9c8830eefa Added test for the connectors grouping. 2020-08-01 16:07:51 -03:00
Salvador E. Tropea 2ef0aa060c Added XML and XLSX tests for the column rename. 2020-08-01 15:43:18 -03:00
Salvador E. Tropea d1fd04d4d2 Added column rename test for HTML. 2020-08-01 15:36:29 -03:00
Salvador E. Tropea c3c86bc4ae Added column rename test for the internal BoM. 2020-08-01 15:19:10 -03:00
Salvador E. Tropea b2189991fc Added test for `number_rows` internal BoM option 2020-08-01 14:43:08 -03:00
Salvador E. Tropea b3811b78cc Added test for `use_alt` internal BoM option 2020-08-01 14:36:21 -03:00
Salvador E. Tropea 6c26bd4ec6 Added test for the `html_generate_dnf` internal BoM. 2020-08-01 14:24:35 -03:00
Salvador E. Tropea 1455ccdc2a Added missing config file for last test. 2020-08-01 14:24:03 -03:00
Salvador E. Tropea 14cf41bc2d Added test for 'ignore_dnf' option in internal BoM 2020-08-01 14:12:25 -03:00
Salvador E. Tropea ecbeb587fe Simplified the other internal BoM tests.
Now that we can just use TestContextSCH.
No need for dummy PCB or extra options.
2020-08-01 13:35:42 -03:00
Salvador E. Tropea 77c5131a2f Fixed two tests using the "PrPCB" directory.
Cut & Paste error.
2020-08-01 13:27:56 -03:00
Salvador E. Tropea 22b624037c Added test for the internal BoM "Join" feature. 2020-08-01 13:17:27 -03:00
Salvador E. Tropea 1cc71f2135 Fixed TestContextSCH class.
Now testing targets that only needs the SCH is simpler.
2020-08-01 13:14:17 -03:00
Salvador E. Tropea 0e5f9afc39 Added test for "digikey link" in the internal BoM. 2020-08-01 12:29:49 -03:00
Salvador E. Tropea 570553b616 Added test for "datasheet_as_link" 2020-07-31 20:38:18 -03:00
Salvador E. Tropea ca67cc8ac3 Fixed columns capitalization.
Now the capitalization is preserved, even when internally we match all
using lowercase.
2020-07-31 20:08:12 -03:00
Salvador E. Tropea 8a5c3724a1 Fixed the "References" column
Now plural as in KiBoM.
2020-07-31 20:01:43 -03:00
Salvador E. Tropea 99bec61576 Fixed references sorting.
Also added a test to check it.
2020-07-31 19:52:01 -03:00
Salvador E. Tropea 5058af5038 Added tests for XML and XLSX internal BoM 2020-07-31 19:31:36 -03:00
Salvador E. Tropea 7d56b59ba4 Added simple CSV and HTML test for the internal BoM. 2020-07-31 14:06:54 -03:00
Salvador E. Tropea ae47afa695 Reduced default verbosity for tests.
Using -vv can generate more than 170k when loading a couple of libs.
2020-07-31 11:56:21 -03:00
Salvador E. Tropea 544f34c6fc Added native BoM generator.
Based on KiBoM, but reading the data directly from the .sch
Information from the libs not supported yet.
2020-07-27 22:04:01 -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 7dc94bf7be Added default output file name pattern.
Can be applied to all outputs.
2020-07-23 18:26:03 -03:00
Salvador E. Tropea 43b97db20c Now IBoM output file is coherent with other outputs.
The user can select the IBoM name mechanism, but the default is to use
a name coherent with all the other outputs.
2020-07-22 19:51:35 -03:00
Salvador E. Tropea 165d9aa15d Added full KiBoM configuration from the YAML config. 2020-07-22 18:33:53 -03:00
Salvador E. Tropea a4c0df7fb5 Fixed flake8 warnings. 2020-07-22 18:16:18 -03:00
Salvador E. Tropea b89d1f481c Fixes in SCH meta-data collection.
- filename destruction
- code not executed
Also a test to cover all the cases.
2020-07-22 18:14:04 -03:00
Salvador E. Tropea d5168c37cd Added filename expansion for SCH related outputs.
pdf_sch_print is the first to support it.
2020-07-13 19:20:25 -03:00
Salvador E. Tropea 3822a39671 Added _pos to all position formats in the ID field. 2020-07-12 18:59:50 -03:00
Salvador E. Tropea 9d10c991da Changed default name for step files (adds -3D) 2020-07-12 18:55:08 -03:00
Salvador E. Tropea 031c69e27c Added `position` output configuration. 2020-07-12 18:46:37 -03:00
Salvador E. Tropea 36eedc9fce Added `drill` output configuration 2020-07-12 17:43:15 -03:00
Salvador E. Tropea b8b1277f5f Drill map file names can be configured. 2020-07-12 17:01:23 -03:00
Salvador E. Tropea b6347d8992 Drill report now uses %i='drill_report' %x='txt' 2020-07-12 16:27:46 -03:00
Salvador E. Tropea bc52d932b0 Changed default file name for pdf_pcb_print
Now %i is the list of layers (suffixes) and %x is PDF.
The default is %f-%i.%x
2020-07-12 16:17:38 -03:00
Salvador E. Tropea 41de8c032c Added `output` option to control the file name to all plot output formats. 2020-07-12 13:00:38 -03:00
Salvador E. Tropea e2854ef524 Added gerber.gerber_job_file option to control the gerber job file name. 2020-07-12 12:28:00 -03:00
Salvador E. Tropea 63999aa009 Preflight filters parsed by Optionable class.
This makes the filters similar to output options.
- Adds coherence to error messages.
- Enable aliases (used the ones suggested by @leoheck)
Additionally now the README.md preflights documentation comes directly
from --help-preflights
2020-07-12 11:52:44 -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 a48e9ecc96 Added tests to cover out_pdf_pcb_print.py, error case left out 2020-07-09 09:20:52 -03:00
Salvador E. Tropea d4677a2c2e Added tests for:
- Inner layer that doesn't exist
- Technical layers
- Wrong layer group/spec
2020-07-08 23:34:45 -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