1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.plugins.surefire.report;
20
21 import java.io.File;
22
23 import org.apache.maven.plugins.annotations.Mojo;
24 import org.apache.maven.plugins.annotations.Parameter;
25 import org.apache.maven.project.MavenProject;
26
27
28
29
30
31
32
33
34
35
36 @Mojo(name = "failsafe-report-only")
37 @SuppressWarnings("unused")
38 public class FailsafeReportMojo extends AbstractSurefireReportMojo {
39
40
41
42
43 @Parameter(defaultValue = "failsafe-report", property = "outputName", required = true)
44 private String outputName;
45
46
47
48
49
50
51 @Parameter(defaultValue = "false", property = "alwaysGenerateFailsafeReport")
52 private boolean alwaysGenerateFailsafeReport;
53
54
55
56
57
58 @Parameter(defaultValue = "false", property = "skipFailsafeReport")
59 private boolean skipFailsafeReport;
60
61 @Override
62 protected File getSurefireReportsDirectory(MavenProject subProject) {
63 String buildDir = subProject.getBuild().getDirectory();
64 return new File(buildDir + "/failsafe-reports");
65 }
66
67 @Override
68 public String getOutputName() {
69 return outputName;
70 }
71
72 @Override
73 protected boolean isSkipped() {
74 return skipFailsafeReport;
75 }
76
77 @Override
78 protected boolean isGeneratedWhenNoResults() {
79 return alwaysGenerateFailsafeReport;
80 }
81
82 @Override
83 protected String getI18Nsection() {
84 return "failsafe";
85 }
86 }