diff --git a/.gitignore b/.gitignore index e352aff..2679425 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ test-output/ .project **/*~ .idea +*.iml diff --git a/src/main/java/org/tap4j/plugin/TapResult.java b/src/main/java/org/tap4j/plugin/TapResult.java index 52c656a..a622c74 100644 --- a/src/main/java/org/tap4j/plugin/TapResult.java +++ b/src/main/java/org/tap4j/plugin/TapResult.java @@ -30,6 +30,9 @@ import org.apache.commons.codec.binary.Base64; import org.apache.commons.lang.BooleanUtils; import org.apache.commons.lang.StringUtils; +import org.kohsuke.accmod.Restricted; +import org.kohsuke.accmod.restrictions.NoExternalUse; +import org.kohsuke.stapler.Stapler; import org.kohsuke.stapler.StaplerRequest; import org.kohsuke.stapler.StaplerResponse; import org.kohsuke.stapler.export.Exported; @@ -47,6 +50,7 @@ import org.tap4j.plugin.util.DiagnosticUtil; import org.tap4j.plugin.util.Util; +import javax.annotation.CheckForNull; import javax.annotation.Nullable; import javax.servlet.ServletOutputStream; import java.io.File; @@ -240,6 +244,16 @@ public void setOwner(Run owner) { this.build = owner; } + @Restricted(NoExternalUse.class) // only used from stapler/jelly + @CheckForNull + public Run getOwningRun() { + StaplerRequest req = Stapler.getCurrentRequest(); + if (req == null) { + return null; + } + return req.findAncestorObject(Run.class); + } + public List getTestSets() { return this.testSets; } diff --git a/src/main/java/org/tap4j/plugin/TapTestResultAction.java b/src/main/java/org/tap4j/plugin/TapTestResultAction.java index 8409cd7..dd79ec9 100644 --- a/src/main/java/org/tap4j/plugin/TapTestResultAction.java +++ b/src/main/java/org/tap4j/plugin/TapTestResultAction.java @@ -30,7 +30,6 @@ import hudson.model.HealthReportingAction; import hudson.model.Job; import hudson.model.Run; -import hudson.tasks.junit.CaseResult; import jenkins.model.RunAction2; import jenkins.tasks.SimpleBuildStep; import jenkins.util.NonLocalizable; @@ -40,7 +39,6 @@ import java.util.Collection; import java.util.Collections; -import java.util.List; /** @@ -92,13 +90,6 @@ public int getSkipCount() { return tapResult.getSkipped(); } - /* (non-Javadoc) - * @see hudson.tasks.test.AbstractTestResultAction#getFailedTests() - */ - public List getFailedTests() { - return Collections.emptyList(); - } - /* * (non-Javadoc) * @see org.kohsuke.stapler.StaplerProxy#getTarget() diff --git a/src/main/resources/org/tap4j/plugin/TapProjectAction/floatingBox.jelly b/src/main/resources/org/tap4j/plugin/TapProjectAction/floatingBox.jelly index 788c528..2bb591a 100644 --- a/src/main/resources/org/tap4j/plugin/TapProjectAction/floatingBox.jelly +++ b/src/main/resources/org/tap4j/plugin/TapProjectAction/floatingBox.jelly @@ -1,5 +1,5 @@ - +
${from.graphName} diff --git a/src/main/resources/org/tap4j/plugin/TapProjectAction/nodata.jelly b/src/main/resources/org/tap4j/plugin/TapProjectAction/nodata.jelly index ac8c36d..90717f6 100644 --- a/src/main/resources/org/tap4j/plugin/TapProjectAction/nodata.jelly +++ b/src/main/resources/org/tap4j/plugin/TapProjectAction/nodata.jelly @@ -1,9 +1,10 @@ - - - + + + + + +

${%header}

${%description}

diff --git a/src/main/resources/org/tap4j/plugin/TapResult/contents.jelly b/src/main/resources/org/tap4j/plugin/TapResult/contents.jelly index 28d27a5..5a6cc40 100644 --- a/src/main/resources/org/tap4j/plugin/TapResult/contents.jelly +++ b/src/main/resources/org/tap4j/plugin/TapResult/contents.jelly @@ -1,12 +1,4 @@ - +
${it.getContents(request.getParameter("f"))}
\ No newline at end of file diff --git a/src/main/resources/org/tap4j/plugin/TapResult/index.jelly b/src/main/resources/org/tap4j/plugin/TapResult/index.jelly index 8742f7c..3a8efba 100644 --- a/src/main/resources/org/tap4j/plugin/TapResult/index.jelly +++ b/src/main/resources/org/tap4j/plugin/TapResult/index.jelly @@ -2,84 +2,87 @@ - - - - -

TAP Extended Test Results

- - - -

Empty test set

-
- - ${it.updateStats()} - - - - - -
${it.testSets.size()} files${it.getTotal()} tests, ${it.passed} ok, ${it.failed} not ok, ${it.skipped} skipped, ${it.toDo} ToDo, ${it.bailOuts} Bail Out!
- - -

Note: Displaying only failures

-
+ + + + + + + - - - -

File: ${map.fileName} (Skipped)

-
- -

File: ${map.fileName}

-
-
- + + +

TAP Extended Test Results

+ + + +

Empty test set

+
+ + ${it.updateStats()} +
- - - - + + - - - -
NumberDescriptionDirective${it.testSets.size()} files${it.getTotal()} tests, ${it.passed} ok, ${it.failed} not ok, ${it.skipped} skipped, ${it.toDo} ToDo, ${it.bailOuts} Bail Out!
-
-
-
-
- -

Parse errors

- - - -

No parse errors found

-
- - - - - - - - - - - - -
File nameCause
${map.fileName}${map.cause}
-
-
- -
+ +

Note: Displaying only failures

+
+ + + + +

File: ${map.fileName} (Skipped)

+
+ +

File: ${map.fileName}

+
+
+ + + + + + + + + + + +
NumberDescriptionDirective
+
+
+ + + + +

Parse errors

+ + + +

No parse errors found

+
+ + + + + + + + + + + + +
File nameCause
${map.fileName}${map.cause}
+
+
+ +
+