@Test public void whenAllOf() throws Exception { List<DeclarativeStageConditional<?>> nested = new ArrayList<>(); nested.add(new BranchConditional("that-branch")); nested.add(new BranchConditional("this-branch")); WhenDirective when = new WhenDirective(new AllOfConditional(nested), false); assertGenerateDirective(when, "when {\n" + " allOf {\n" + " branch 'that-branch'\n" + " branch 'this-branch'\n" + " }\n" + "}"); }
if (directive.isBeforeAgent()) { result.append("beforeAgent true\n");
@Test public void whenAnyOf() throws Exception { List<DeclarativeStageConditional<?>> nested = new ArrayList<>(); nested.add(new BranchConditional("that-branch")); nested.add(new BranchConditional("this-branch")); WhenDirective when = new WhenDirective(new AnyOfConditional(nested), true); assertGenerateDirective(when, "when {\n" + " anyOf {\n" + " branch 'that-branch'\n" + " branch 'this-branch'\n" + " }\n" + " beforeAgent true\n" + "}"); }
@Test public void whenEnvironment() throws Exception { WhenDirective when = new WhenDirective(new EnvironmentConditional("SOME_VAR", "some value"), false); assertGenerateDirective(when, "when {\n" + " environment name: 'SOME_VAR', value: 'some value'\n" + "}"); }
@Test public void whenChangelog() throws Exception { WhenDirective when = new WhenDirective(new ChangeLogConditional("some-pattern"), false); assertGenerateDirective(when, "when {\n" + " changelog 'some-pattern'\n" + "}"); }
@Test public void whenChangeset() throws Exception { WhenDirective when = new WhenDirective(new ChangeSetConditional("some/file/in/changeset"), false); assertGenerateDirective(when, "when {\n" + " changeset 'some/file/in/changeset'\n" + "}"); }
@Test public void whenAllOfEmpty() throws Exception { WhenDirective when = new WhenDirective(new AllOfConditional(null), false); assertGenerateDirective(when, "when {\n" + " allOf {\n" + " }\n" + "}"); }
@Test public void whenBranch() throws Exception { WhenDirective when = new WhenDirective(new BranchConditional("some-pattern"), true); assertGenerateDirective(when, "when {\n" + " branch 'some-pattern'\n" + " beforeAgent true\n" + "}"); }
@Issue("JENKINS-51932") @Test public void whenIsRestartedRun() throws Exception { WhenDirective when = new WhenDirective(new IsRestartedRunConditional(), false); assertGenerateDirective(when, "when {\n" + " isRestartedRun()\n" + "}"); }
@Test public void whenDeepNested() throws Exception { List<DeclarativeStageConditional<?>> nested = new ArrayList<>(); nested.add(new BranchConditional("that-branch")); nested.add(new BranchConditional("this-branch")); nested.add(new NotConditional(new EnvironmentConditional("BOB", "steve"))); List<DeclarativeStageConditional<?>> veryNested = new ArrayList<>(); veryNested.add(new ChangeLogConditional("some-pattern")); veryNested.add(new NotConditional(new ChangeSetConditional("some/file/do/not/care"))); nested.add(new AnyOfConditional(veryNested)); WhenDirective whenDirective = new WhenDirective(new AllOfConditional(nested), false); assertGenerateDirective(whenDirective, "when {\n" + " allOf {\n" + " branch 'that-branch'\n" + " branch 'this-branch'\n" + " not {\n" + " environment name: 'BOB', value: 'steve'\n" + " }\n" + " anyOf {\n" + " changelog 'some-pattern'\n" + " not {\n" + " changeset 'some/file/do/not/care'\n" + " }\n" + " }\n" + " }\n" + "}"); }
nested.add(new BranchConditional("that-branch")); nested.add(new BranchConditional("this-branch")); WhenDirective when = new WhenDirective(new AllOfConditional(nested), false); AgentDirective agent = new AgentDirective(new DockerPipeline("some-image"));
@Test public void whenNot() throws Exception { WhenDirective when = new WhenDirective(new NotConditional(new BranchConditional("some-bad-branch")), false); assertGenerateDirective(when, "when {\n" + " not {\n" + " branch 'some-bad-branch'\n" + " }\n" + "}"); }