diff --git a/jenkins_jobs/modules/publishers.py b/jenkins_jobs/modules/publishers.py index e8893c1ce..f71b1341d 100644 --- a/jenkins_jobs/modules/publishers.py +++ b/jenkins_jobs/modules/publishers.py @@ -3312,22 +3312,31 @@ def xml_summary(parser, xml_parent, data): Requires the Jenkins :jenkins-wiki:`Summary Display Plugin `. - :arg str files: Files to parse (default '') + :arg str files: Files to parse (required) :arg bool shown-on-project-page: Display summary on project page - (default 'false') + (default false) - Example: + Minimal Example: - .. literalinclude:: /../../tests/publishers/fixtures/xml-summary001.yaml + .. literalinclude:: + /../../tests/publishers/fixtures/xml-summary-minimal.yaml + :language: yaml + + Full Example: + + .. literalinclude:: /../../tests/publishers/fixtures/xml-summary-full.yaml :language: yaml """ - summary = XML.SubElement(xml_parent, - 'hudson.plugins.summary__report.' - 'ACIPluginPublisher') - XML.SubElement(summary, 'name').text = data['files'] - XML.SubElement(summary, 'shownOnProjectPage').text = str( - data.get('shown-on-project-page', 'false')) + summary = XML.SubElement( + xml_parent, 'hudson.plugins.summary__report.ACIPluginPublisher') + summary.set('plugin', 'summary_report') + + mapping = [ + ('files', 'name', None), + ('shown-on-project-page', 'shownOnProjectPage', False), + ] + helpers.convert_mapping_to_xml(summary, data, mapping, fail_required=True) def robot(parser, xml_parent, data): diff --git a/tests/publishers/fixtures/xml-summary002.xml b/tests/publishers/fixtures/xml-summary-full.xml similarity index 75% rename from tests/publishers/fixtures/xml-summary002.xml rename to tests/publishers/fixtures/xml-summary-full.xml index 11443ab4b..3ec8101a3 100644 --- a/tests/publishers/fixtures/xml-summary002.xml +++ b/tests/publishers/fixtures/xml-summary-full.xml @@ -1,7 +1,7 @@ - + *_summary_report.xml true diff --git a/tests/publishers/fixtures/xml-summary002.yaml b/tests/publishers/fixtures/xml-summary-full.yaml similarity index 64% rename from tests/publishers/fixtures/xml-summary002.yaml rename to tests/publishers/fixtures/xml-summary-full.yaml index 2a69d64ef..499f7aa69 100644 --- a/tests/publishers/fixtures/xml-summary002.yaml +++ b/tests/publishers/fixtures/xml-summary-full.yaml @@ -1,4 +1,4 @@ publishers: - xml-summary: files: '*_summary_report.xml' - shown-on-project-page: 'true' + shown-on-project-page: true diff --git a/tests/publishers/fixtures/xml-summary001.xml b/tests/publishers/fixtures/xml-summary-minimal.xml similarity index 75% rename from tests/publishers/fixtures/xml-summary001.xml rename to tests/publishers/fixtures/xml-summary-minimal.xml index 528312249..a4a3e0e92 100644 --- a/tests/publishers/fixtures/xml-summary001.xml +++ b/tests/publishers/fixtures/xml-summary-minimal.xml @@ -1,7 +1,7 @@ - + *_summary_report.xml false diff --git a/tests/publishers/fixtures/xml-summary001.yaml b/tests/publishers/fixtures/xml-summary-minimal.yaml similarity index 100% rename from tests/publishers/fixtures/xml-summary001.yaml rename to tests/publishers/fixtures/xml-summary-minimal.yaml