|
24 | 24 | package hudson.plugins.parameterizedtrigger.test;
|
25 | 25 |
|
26 | 26 | import hudson.model.Cause.UserCause;
|
27 |
| -import hudson.model.ParametersAction; |
28 | 27 | import hudson.model.Project;
|
29 |
| -import hudson.model.StringParameterValue; |
| 28 | +import hudson.model.Result; |
| 29 | +import hudson.plugins.parameterizedtrigger.AbstractBuildParameterFactory; |
30 | 30 | import hudson.plugins.parameterizedtrigger.AbstractBuildParameters;
|
31 | 31 | import hudson.plugins.parameterizedtrigger.BlockableBuildTriggerConfig;
|
32 | 32 | import hudson.plugins.parameterizedtrigger.BlockingBehaviour;
|
33 |
| -import hudson.plugins.parameterizedtrigger.BuildTrigger; |
34 |
| -import hudson.plugins.parameterizedtrigger.BuildTriggerConfig; |
35 |
| -import hudson.plugins.parameterizedtrigger.CurrentBuildParameters; |
36 |
| -import hudson.plugins.parameterizedtrigger.ResultCondition; |
| 33 | +import hudson.plugins.parameterizedtrigger.CounterBuildParameterFactory; |
37 | 34 | import hudson.plugins.parameterizedtrigger.TriggerBuilder;
|
38 | 35 |
|
39 |
| -import java.util.ArrayList; |
| 36 | +import java.util.Collections; |
40 | 37 | import java.util.List;
|
41 | 38 |
|
42 | 39 | import org.jvnet.hudson.test.HudsonTestCase;
|
43 |
| -import org.jvnet.hudson.test.CaptureEnvironmentBuilder; |
| 40 | +import com.google.common.collect.ImmutableList; |
44 | 41 |
|
45 | 42 | public class TriggerBuilderTest extends HudsonTestCase {
|
46 | 43 |
|
@@ -126,4 +123,61 @@ public void testNonBlockingTrigger() throws Exception {
|
126 | 123 | assertEquals("Triggering projects: project1, project2, project3", log.get(1));
|
127 | 124 | }
|
128 | 125 |
|
| 126 | + public void testConsoleOutputWithCounterParameters() throws Exception{ |
| 127 | + createFreeStyleProject("project1"); |
| 128 | + createFreeStyleProject("project2"); |
| 129 | + createFreeStyleProject("project3"); |
| 130 | + |
| 131 | + Project<?,?> triggerProject = createFreeStyleProject(); |
| 132 | + |
| 133 | + BlockingBehaviour blockingBehaviour = new BlockingBehaviour(Result.FAILURE, Result.UNSTABLE, Result.FAILURE); |
| 134 | + ImmutableList<AbstractBuildParameterFactory> buildParameter = ImmutableList.<AbstractBuildParameterFactory>of(new CounterBuildParameterFactory("0","2","1", "TEST=COUNT$COUNT")); |
| 135 | + List<AbstractBuildParameters> emptyList = Collections.<AbstractBuildParameters>emptyList(); |
| 136 | + |
| 137 | + BlockableBuildTriggerConfig bBTConfig = new BlockableBuildTriggerConfig("project1, project2, project3", blockingBehaviour, buildParameter, emptyList); |
| 138 | + |
| 139 | + triggerProject.getBuildersList().add(new TriggerBuilder(bBTConfig)); |
| 140 | + |
| 141 | + triggerProject.scheduleBuild2(0, new UserCause()).get(); |
| 142 | + |
| 143 | + List<String> log = triggerProject.getLastBuild().getLog(20); |
| 144 | + for (String string : log) { |
| 145 | + System.out.println(string); |
| 146 | + } |
| 147 | + |
| 148 | + assertEquals("project1 #1 completed. Result was SUCCESS", log.get(2)); |
| 149 | + assertEquals("project1 #2 completed. Result was SUCCESS", log.get(4)); |
| 150 | + assertEquals("project1 #3 completed. Result was SUCCESS", log.get(6)); |
| 151 | + assertEquals("project2 #1 completed. Result was SUCCESS", log.get(8)); |
| 152 | + assertEquals("project2 #2 completed. Result was SUCCESS", log.get(10)); |
| 153 | + assertEquals("project2 #3 completed. Result was SUCCESS", log.get(12)); |
| 154 | + assertEquals("project3 #1 completed. Result was SUCCESS", log.get(14)); |
| 155 | + assertEquals("project3 #2 completed. Result was SUCCESS", log.get(16)); |
| 156 | + assertEquals("project3 #3 completed. Result was SUCCESS", log.get(18)); |
| 157 | + } |
| 158 | + |
| 159 | + |
| 160 | + public void testBlockingTriggerWithDisabledProjects() throws Exception { |
| 161 | + createFreeStyleProject("project1"); |
| 162 | + Project p2 = createFreeStyleProject("project2"); |
| 163 | + p2.disable(); |
| 164 | + createFreeStyleProject("project3"); |
| 165 | + |
| 166 | + Project<?, ?> triggerProject = createFreeStyleProject("projectA"); |
| 167 | + |
| 168 | + TriggerBuilder triggerBuilder = new TriggerBuilder(createTriggerConfig("project1, project2, project3")); |
| 169 | + |
| 170 | + triggerProject.getBuildersList().add(triggerBuilder); |
| 171 | + |
| 172 | + triggerProject.scheduleBuild2(0, new UserCause()).get(); |
| 173 | + |
| 174 | + List<String> log = triggerProject.getLastBuild().getLog(20); |
| 175 | + for (String string : log) { |
| 176 | + System.out.println(string); |
| 177 | + } |
| 178 | + assertEquals("Waiting for the completion of project1", log.get(1)); |
| 179 | + assertEquals("Skipping project2. The project is either disabled or the configuration has not been saved yet.", log.get(3)); |
| 180 | + assertEquals("Waiting for the completion of project3", log.get(4)); |
| 181 | + |
| 182 | + } |
129 | 183 | }
|
0 commit comments