useblocks / sphinx-test-reports

Documents test-results inside Sphinx
https://sphinx-test-reports.readthedocs.io/en/latest/
MIT License
28 stars 21 forks source link

Test Report fails if report's ID is not in the allowed tags #59

Open ntouran opened 1 year ago

ntouran commented 1 year ago

I have sphinx-needs configured with a very specific set of allowed tags. But sphinx-test-reports always includes the report ID as a tag, and so each individual report I make fails with invalid tags:

Sphinx error:
Tag REPORT2 of need id REPORT2 is not allowed by config value 'needs_tags'.

Input causing this looks like:

.. test-report:: Unit Test Results
   :id: REPORT
   :file: ../proj/unit-test-results/proj-unit-test-results.xml

.. test-report:: Cypress Tests
   :id: REPORT2
   :tags: REPORT
   :file: ../frontend/proj/results/proj-e2e-test-output-5b4d6459a038b4cd8595b7b99702.xml

Seems that this is coming from here: https://github.com/useblocks/sphinx-test-reports/blob/0316d1361f0a6b50756a21cc58f33fa4e177a1ef/sphinxcontrib/test_reports/directives/test_report.py#L75

where it hard-codes adding the test ID as a tag. Should this be removed? What purpose is this serving? Can I make a PR to remove that feature, or should it be a new setting to toggle it off?

danwos commented 1 year ago

Thanks for reporting.

For backwards compatibility I would add a config option to switch it off or maybe even better an option which allows to configure the tag-string. This could be done by supporting Jinja and add test_tags and test_id to the Jinja context.