Skip to content

Commit f1a419a

Browse files
committed
[SUREFIRE-2228] Upgrade to Doxia 2.0.0 Milestone Stack
This closes #629
1 parent 5e14d4f commit f1a419a

File tree

47 files changed

+521
-271
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+521
-271
lines changed

maven-surefire-report-plugin/pom.xml

+2-5
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@
4646
</prerequisites>
4747

4848
<properties>
49-
<doxiaVersion>1.12.0</doxiaVersion>
49+
<doxiaVersion>2.0.0-M12</doxiaVersion>
5050
</properties>
5151

5252
<dependencies>
@@ -111,13 +111,10 @@
111111
<artifactId>doxia-core</artifactId>
112112
<version>${doxiaVersion}</version>
113113
</dependency>
114-
<dependency>
115-
<groupId>org.apache.maven.reporting</groupId>
116-
<artifactId>maven-reporting-api</artifactId>
117-
</dependency>
118114
<dependency>
119115
<groupId>org.apache.maven.reporting</groupId>
120116
<artifactId>maven-reporting-impl</artifactId>
117+
<version>4.0.0-M15</version>
121118
</dependency>
122119
<dependency>
123120
<groupId>org.codehaus.plexus</groupId>

maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/AbstractSurefireReport.java

+9-5
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@
3737
import org.apache.maven.plugins.annotations.Parameter;
3838
import org.apache.maven.project.MavenProject;
3939
import org.apache.maven.reporting.AbstractMavenReport;
40-
import org.apache.maven.reporting.MavenReportException;
4140
import org.apache.maven.settings.Settings;
4241
import org.apache.maven.shared.utils.PathTool;
4342
import org.codehaus.plexus.i18n.I18N;
@@ -149,16 +148,16 @@ protected boolean isGeneratedWhenNoResults() {
149148
* {@inheritDoc}
150149
*/
151150
@Override
152-
public void executeReport(Locale locale) throws MavenReportException {
151+
public void executeReport(Locale locale) {
153152
SurefireReportRenderer r = new SurefireReportRenderer(
154153
getSink(),
155154
getI18N(locale),
156155
getI18Nsection(),
157156
locale,
158157
getConsoleLogger(),
159-
showSuccess,
160158
getReportsDirectories(),
161-
determineXrefLocation());
159+
determineXrefLocation(),
160+
showSuccess);
162161
r.render();
163162
}
164163

@@ -263,7 +262,8 @@ private String determineXrefLocation() {
263262
String location = null;
264263

265264
if (linkXRef) {
266-
String relativePath = PathTool.getRelativePath(getOutputDirectory(), xrefLocation.getAbsolutePath());
265+
String relativePath = PathTool.getRelativePath(
266+
getReportOutputDirectory().getAbsolutePath(), xrefLocation.getAbsolutePath());
267267
if (relativePath == null || relativePath.isEmpty()) {
268268
relativePath = ".";
269269
}
@@ -346,6 +346,10 @@ protected MavenProject getProject() {
346346
return project;
347347
}
348348

349+
protected List<MavenProject> getReactorProjects() {
350+
return reactorProjects;
351+
}
352+
349353
// TODO Review, especially Locale.getDefault()
350354
private static class CustomI18N implements I18N {
351355
private final MavenProject project;

maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/FailsafeOnlyReport.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ public class FailsafeOnlyReport extends AbstractSurefireReport {
6161
@Override
6262
protected File getSurefireReportsDirectory(MavenProject subProject) {
6363
String buildDir = subProject.getBuild().getDirectory();
64-
return new File(buildDir + "/failsafe-reports");
64+
return new File(buildDir, "failsafe-reports");
6565
}
6666

6767
@Override

maven-surefire-report-plugin/src/main/java/org/apache/maven/plugins/surefire/report/SurefireReportRenderer.java

+20-46
Original file line numberDiff line numberDiff line change
@@ -50,19 +50,19 @@ public class SurefireReportRenderer extends AbstractMavenReportRenderer {
5050
private final Locale locale;
5151

5252
private final SurefireReportParser parser;
53-
private final boolean showSuccess;
54-
private final String xrefLocation;
5553
private final List<ReportTestSuite> testSuites;
54+
private final String xrefLocation;
55+
private final boolean showSuccess;
5656

5757
public SurefireReportRenderer(
5858
Sink sink,
5959
I18N i18n,
6060
String i18nSection,
6161
Locale locale,
6262
ConsoleLogger consoleLogger,
63-
boolean showSuccess,
6463
List<File> reportsDirectories,
65-
String xrefLocation) {
64+
String xrefLocation,
65+
boolean showSuccess) {
6666
super(sink);
6767
this.i18n = i18n;
6868
this.i18nSection = i18nSection;
@@ -112,11 +112,7 @@ private String formatI18nString(String section, String key, Object... args) {
112112
public void renderBody() {
113113
javaScript(javascriptToggleDisplayCode());
114114

115-
sink.section1();
116-
sink.sectionTitle1();
117-
sink.text(getTitle());
118-
sink.sectionTitle1_();
119-
sink.section1_();
115+
startSection(getTitle());
120116

121117
renderSectionSummary();
122118

@@ -125,16 +121,14 @@ public void renderBody() {
125121
renderSectionTestCases();
126122

127123
renderSectionFailureDetails();
124+
125+
endSection();
128126
}
129127

130128
private void renderSectionSummary() {
131129
Map<String, Object> summary = parser.getSummary(testSuites);
132130

133-
sink.section1();
134-
sinkAnchor("Summary");
135-
sink.sectionTitle1();
136-
sink.text(getI18nString("surefire", "label.summary"));
137-
sink.sectionTitle1_();
131+
startSection(getI18nString("surefire", "label.summary"), "Summary");
138132

139133
constructHotLinks();
140134

@@ -168,7 +162,7 @@ private void renderSectionSummary() {
168162

169163
sink.lineBreak();
170164

171-
sink.section1_();
165+
endSection();
172166
}
173167

174168
private void renderSectionPackages() {
@@ -177,11 +171,7 @@ private void renderSectionPackages() {
177171
return;
178172
}
179173

180-
sink.section1();
181-
sinkAnchor("Package_List");
182-
sink.sectionTitle1();
183-
sink.text(getI18nString("surefire", "label.packagelist"));
184-
sink.sectionTitle1_();
174+
startSection(getI18nString("surefire", "label.packagelist"), "Package_List");
185175

186176
constructHotLinks();
187177

@@ -227,11 +217,7 @@ private void renderSectionPackages() {
227217

228218
List<ReportTestSuite> testSuiteList = entry.getValue();
229219

230-
sink.section2();
231-
sinkAnchor(packageName);
232-
sink.sectionTitle2();
233-
sink.text(packageName);
234-
sink.sectionTitle2_();
220+
startSection(packageName);
235221

236222
boolean showTable = false;
237223

@@ -266,12 +252,12 @@ private void renderSectionPackages() {
266252
endTable();
267253
}
268254

269-
sink.section2_();
255+
endSection();
270256
}
271257

272258
sink.lineBreak();
273259

274-
sink.section1_();
260+
endSection();
275261
}
276262

277263
private void renderSectionTestSuite(ReportTestSuite suite) {
@@ -320,23 +306,15 @@ private void renderSectionTestCases() {
320306
return;
321307
}
322308

323-
sink.section1();
324-
sinkAnchor("Test_Cases");
325-
sink.sectionTitle1();
326-
sink.text(getI18nString("surefire", "label.testcases"));
327-
sink.sectionTitle1_();
309+
startSection(getI18nString("surefire", "label.testcases"), "Test_Cases");
328310

329311
constructHotLinks();
330312

331313
for (ReportTestSuite suite : testSuites) {
332314
List<ReportTestCase> testCases = suite.getTestCases();
333315

334316
if (!testCases.isEmpty()) {
335-
sink.section2();
336-
sinkAnchor(suite.getPackageName() + '.' + suite.getName());
337-
sink.sectionTitle2();
338-
sink.text(suite.getName());
339-
sink.sectionTitle2_();
317+
startSection(suite.getName(), suite.getPackageName() + '.' + suite.getName());
340318

341319
boolean showTable = false;
342320

@@ -360,13 +338,13 @@ private void renderSectionTestCases() {
360338
endTable();
361339
}
362340

363-
sink.section2_();
341+
endSection();
364342
}
365343
}
366344

367345
sink.lineBreak();
368346

369-
sink.section1_();
347+
endSection();
370348
}
371349

372350
private void constructTestCaseSection(ReportTestCase testCase) {
@@ -469,7 +447,7 @@ private void constructTestCaseSection(ReportTestCase testCase) {
469447
}
470448

471449
private String toHtmlId(String id) {
472-
return DoxiaUtils.isValidId(id) ? id : DoxiaUtils.encodeId(id, true);
450+
return DoxiaUtils.isValidId(id) ? id : DoxiaUtils.encodeId(id);
473451
}
474452

475453
private void renderSectionFailureDetails() {
@@ -478,11 +456,7 @@ private void renderSectionFailureDetails() {
478456
return;
479457
}
480458

481-
sink.section1();
482-
sinkAnchor("Failure_Details");
483-
sink.sectionTitle1();
484-
sink.text(getI18nString("surefire", "label.failuredetails"));
485-
sink.sectionTitle1_();
459+
startSection(getI18nString("surefire", "label.failuredetails"), "Failure_Details");
486460

487461
constructHotLinks();
488462

@@ -554,7 +528,7 @@ private void renderSectionFailureDetails() {
554528

555529
sink.lineBreak();
556530

557-
sink.section1_();
531+
endSection();
558532
}
559533

560534
private void constructHotLinks() {

maven-surefire-report-plugin/src/site/apt/usage.apt.vm

+1-1
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ Usage
5959
mvn surefire-report:report
6060
+---+
6161

62-
A HTML report should be generated in <<<$\{basedir\}/target/site/surefire-report.html>>>.
62+
An HTML report should be generated in <<<$\{basedir\}/target/reports/surefire.html>>>.
6363

6464
[images/surefire-sample2.png] Sample standalone surefire-report
6565

maven-surefire-report-plugin/src/test/java/org/apache/maven/plugins/surefire/report/Surefire597Test.java

+11-11
Original file line numberDiff line numberDiff line change
@@ -48,12 +48,12 @@ public void testCorruptedTestCaseFailureWithMissingErrorTypeAndMessage() throws
4848
i18n.initialize();
4949
ConsoleLogger consoleLogger = new NullConsoleLogger();
5050
SurefireReportRenderer r = new SurefireReportRenderer(
51-
sink, i18n, "surefire", SiteTool.DEFAULT_LOCALE, consoleLogger, true, singletonList(report), null);
51+
sink, i18n, "surefire", SiteTool.DEFAULT_LOCALE, consoleLogger, singletonList(report), null, true);
5252
r.render();
5353
String xml = writer.toString();
5454
assertThat(
5555
xml,
56-
containsString(toSystemNewLine("<table border=\"0\" class=\"bodyTable\">\n"
56+
containsString(toSystemNewLine("<table class=\"bodyTable\">\n"
5757
+ "<tr class=\"a\">\n"
5858
+ "<th>Tests</th>\n"
5959
+ "<th>Errors</th>\n"
@@ -62,7 +62,7 @@ public void testCorruptedTestCaseFailureWithMissingErrorTypeAndMessage() throws
6262
+ "<th>Success Rate</th>\n"
6363
+ "<th>Time</th></tr>\n"
6464
+ "<tr class=\"b\">\n"
65-
+ "<td align=\"left\">1</td>\n"
65+
+ "<td>1</td>\n"
6666
+ "<td>1</td>\n"
6767
+ "<td>0</td>\n"
6868
+ "<td>0</td>\n"
@@ -72,7 +72,7 @@ public void testCorruptedTestCaseFailureWithMissingErrorTypeAndMessage() throws
7272
+ "</table>")));
7373
assertThat(
7474
xml,
75-
containsString(toSystemNewLine("<table border=\"0\" class=\"bodyTable\">\n"
75+
containsString(toSystemNewLine("<table class=\"bodyTable\">\n"
7676
+ "<tr class=\"a\">\n"
7777
+ "<th>Package</th>\n"
7878
+ "<th>Tests</th>\n"
@@ -82,7 +82,7 @@ public void testCorruptedTestCaseFailureWithMissingErrorTypeAndMessage() throws
8282
+ "<th>Success Rate</th>\n"
8383
+ "<th>Time</th></tr>\n"
8484
+ "<tr class=\"b\">\n"
85-
+ "<td align=\"left\"><a href=\"#surefire\">surefire</a></td>\n"
85+
+ "<td><a href=\"#surefire\">surefire</a></td>\n"
8686
+ "<td>1</td>\n"
8787
+ "<td>1</td>\n"
8888
+ "<td>0</td>\n"
@@ -91,7 +91,7 @@ public void testCorruptedTestCaseFailureWithMissingErrorTypeAndMessage() throws
9191
+ "<td>0 s</td></tr></table>")));
9292
assertThat(
9393
xml,
94-
containsString(toSystemNewLine("<table border=\"0\" class=\"bodyTable\">\n"
94+
containsString(toSystemNewLine("<table class=\"bodyTable\">\n"
9595
+ "<tr class=\"a\">\n"
9696
+ "<th>-</th>\n"
9797
+ "<th>Class</th>\n"
@@ -102,7 +102,7 @@ public void testCorruptedTestCaseFailureWithMissingErrorTypeAndMessage() throws
102102
+ "<th>Success Rate</th>\n"
103103
+ "<th>Time</th></tr>\n"
104104
+ "<tr class=\"b\">\n"
105-
+ "<td align=\"left\"><a href=\"#surefire.MyTest\"><img src=\"images/icon_error_sml.gif\" alt=\"\" /></a></td>\n"
105+
+ "<td><a href=\"#surefire.MyTest\"><img src=\"images/icon_error_sml.gif\" /></a></td>\n"
106106
+ "<td><a href=\"#surefire.MyTest\">MyTest</a></td>\n"
107107
+ "<td>1</td>\n"
108108
+ "<td>1</td>\n"
@@ -112,15 +112,15 @@ public void testCorruptedTestCaseFailureWithMissingErrorTypeAndMessage() throws
112112
+ "<td>0 s</td></tr></table>")));
113113
assertThat(
114114
xml,
115-
containsString(toSystemNewLine("<table border=\"0\" class=\"bodyTable\">\n"
115+
containsString(toSystemNewLine("<table class=\"bodyTable\">\n"
116116
+ "<tr class=\"a\">\n"
117-
+ "<td align=\"left\"><img src=\"images/icon_error_sml.gif\" alt=\"\" /></td>\n"
117+
+ "<td><img src=\"images/icon_error_sml.gif\" /></td>\n"
118118
+ "<td><a id=\"surefire.MyTest.test\"></a>test</td></tr>\n"
119119
+ "<tr class=\"b\">\n"
120-
+ "<td align=\"left\">-</td>\n"
120+
+ "<td>-</td>\n"
121121
+ "<td>java.lang.RuntimeException: java.lang.IndexOutOfBoundsException: msg</td></tr>\n"
122122
+ "<tr class=\"a\">\n"
123-
+ "<td align=\"left\">-</td>\n"
123+
+ "<td>-</td>\n"
124124
+ "<td>\n"
125125
+ "<div id=\"test-error\">surefire.MyTest:13</div></td></tr></table>")));
126126
}

0 commit comments

Comments
 (0)