Skip to content

Commit 413aada

Browse files
committed
feat: PDF report
1 parent 80c29ca commit 413aada

File tree

4 files changed

+21
-10
lines changed

4 files changed

+21
-10
lines changed

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
### Added
11+
12+
- PDF report
13+
14+
### Changed
15+
16+
- report generation engine with [Venus Fugerit Doc](https://github.com/fugerit-org/fj-doc)
17+
1018
## [1.0.2] - 2025-11-26
1119

1220
### Fixed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ A simple plugin to check the presence of JUnit5 test by tags.
1212

1313
| parameter | type | required | notes |
1414
|--------------------------|---------|----------|------------------------------------------------------|
15-
| format | string | false | default 'text', accepts 'html', 'json', 'xml' |
15+
| format | string | false | default 'text', accepts 'html', 'json', 'xml', 'pdf' |
1616
| outputFile | string | true | path where should be produced the report |
1717
| requiredTags.requiredTag | string | true | tag to be checked |
1818
| failOnMissingTag | boolean | true | if set to 'true' the build will fail on missing tags |

src/main/java/org/fugerit/java/junit5/tag/check/facade/TagReportFacade.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,8 @@ private void generateReport(Map<ExecutedTest, Set<String>> testTagMap)
5151
generateXmlReport( testTagMap );
5252
break;
5353
case DocConfig.TYPE_HTML:
54-
generateHtmlReport( helper );
54+
case DocConfig.TYPE_PDF:
55+
generateFjDocReport( helper, format.toLowerCase() );
5556
break;
5657
default:
5758
generateTextReport(testTagMap);
@@ -190,9 +191,9 @@ private String repeatString(String s, int count) {
190191
return sb.toString();
191192
}
192193

193-
private void generateHtmlReport(ReportHelper reportHelper) throws IOException {
194+
private void generateFjDocReport(ReportHelper reportHelper, String handlerId) throws IOException {
194195
try (OutputStream os = new FileOutputStream(outputFile)) {
195-
DocHelper.generateReport( DocConfig.TYPE_HTML, reportHelper, os );
196+
DocHelper.generateReport( handlerId, reportHelper, os );
196197
}
197198
}
198199

src/main/resources/junit5-tag-check-maven-plugin/template/report.ftl

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@
2222
<info name="doc-subject">Report</info>
2323
<info name="doc-author">fugerit79</info>
2424
<info name="doc-language">en</info>
25+
<info name="page-width">29.7cm</info>
26+
<info name="page-height">21cm</info>
2527
<info name="html-css-style">
2628
body { font-family: Arial, sans-serif; margin: 20px; }
2729
table { border-collapse: collapse; width: 100%; margin: 20px 0; }
@@ -36,9 +38,9 @@
3638
</info>
3739
</metadata>
3840
<body>
39-
<h head-level="1">${docTitle}</h>
41+
<h head-level="1" style="bold">${docTitle}</h>
4042

41-
<h head-level="2">Summary</h>
43+
<h head-level="2" style="bold" space-before="20">Summary</h>
4244

4345
<table columns="2" colwidths="50;50" width="100" id="summary-table">
4446
<row header="true">
@@ -63,7 +65,7 @@
6365
</row>
6466
</table>
6567

66-
<h head-level="2">Tags Summary</h>
68+
<h head-level="2" style="bold" space-before="20">Tags Summary</h>
6769

6870
<table columns="2" colwidths="50;50" width="100" id="tags-summary-table">
6971
<row header="true">
@@ -78,9 +80,9 @@
7880
</#list>
7981
</table>
8082

81-
<h head-level="2">All Executed Tests</h>
83+
<h head-level="2" style="bold" space-before="20">All Executed Tests</h>
8284

83-
<table columns="4" colwidths="15;55;15;15" width="100" id="tags-summary-table">
85+
<table columns="4" colwidths="15;55;15;15" width="100" id="all-tests-table">
8486
<row header="true">
8587
<cell border-width="${defaultTableBorderSize}"><phrase>Status</phrase></cell>
8688
<cell border-width="${defaultTableBorderSize}"><phrase>Test</phrase></cell>
@@ -92,7 +94,7 @@
9294
<#assign currentStatusIcon><#if currentTest.failed>Fail<#elseif currentTest.error>Error<#elseif currentTest.skipped>Skipped<#else>Passed</#if></#assign>
9395
<row>
9496
<cell border-width="${defaultTableBorderSize}" ${currentClassName}><phrase>${currentStatusIcon}</phrase></cell>
95-
<cell border-width="${defaultTableBorderSize}"><phrase>${currentTest.className}#${currentTest.methodName}</phrase></cell>
97+
<cell border-width="${defaultTableBorderSize}"><phrase>${currentTest.className}&#8203;#${currentTest.methodName}</phrase></cell>
9698
<cell border-width="${defaultTableBorderSize}"><#list currentTest.tags as currentTag><phrase class="tag">${currentTag}</phrase></#list></cell>
9799
<cell border-width="${defaultTableBorderSize}"><phrase>${currentTest.time}s</phrase></cell>
98100
</row>

0 commit comments

Comments
 (0)