Skip to content

Commit 4b3af7c

Browse files
Add @symbol publishTap and pipeline test
1 parent e63e7e3 commit 4b3af7c

File tree

4 files changed

+34
-0
lines changed

4 files changed

+34
-0
lines changed

.vscode/settings.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"java.configuration.updateBuildConfiguration": "interactive"
3+
}

pom.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,11 @@ SOFTWARE.
130130
<artifactId>workflow-cps</artifactId>
131131
<scope>test</scope>
132132
</dependency>
133+
<dependency>
134+
<groupId>org.jenkins-ci.plugins.workflow</groupId>
135+
<artifactId>workflow-step-api</artifactId>
136+
<scope>test</scope>
137+
</dependency>
133138
</dependencies>
134139

135140
<build>

src/main/java/org/tap4j/plugin/TapPublisher.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040
import org.tap4j.model.TestSet;
4141
import org.tap4j.plugin.model.TestSetMap;
4242
import org.tap4j.plugin.util.Constants;
43+
import org.jenkinsci.Symbol;
4344

4445
import hudson.EnvVars;
4546
import hudson.Extension;
@@ -582,6 +583,7 @@ public MatrixAggregator createAggregator(MatrixBuild build, Launcher launcher, B
582583
}
583584

584585
@Extension
586+
@Symbol("publishTap")
585587
public static class DescriptorImpl extends BuildStepDescriptor<Publisher> {
586588
public DescriptorImpl() {
587589
super(TapPublisher.class);
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
package org.tap4j.plugin;
2+
3+
import org.junit.Rule;
4+
import org.junit.Test;
5+
import org.jvnet.hudson.test.JenkinsRule;
6+
import org.jenkinsci.plugins.workflow.job.WorkflowJob;
7+
import org.jenkinsci.plugins.workflow.cps.CpsFlowDefinition;
8+
9+
public class TapPublisherPipelineTest {
10+
11+
@Rule
12+
public JenkinsRule j = new JenkinsRule();
13+
14+
@Test
15+
public void publishTapSymbolWorks() throws Exception {
16+
WorkflowJob job = j.createProject(WorkflowJob.class);
17+
18+
job.setDefinition(new CpsFlowDefinition(
19+
"publishTap(testResults: 'test.log')",
20+
true));
21+
22+
j.buildAndAssertSuccess(job);
23+
}
24+
}

0 commit comments

Comments
 (0)