/** * Tests that a new build can be triggered for the old FreeStyleProject. */ @Test @LocalData public void testNewTriggeredBuild() { server.waitForCommand(GERRIT_STREAM_EVENTS, 10000); Item item = j.jenkins.getItem("freestyleJob"); assertThat("Item is not a FreeStyleProject", item, instanceOf(FreeStyleProject.class)); FreeStyleProject project = (FreeStyleProject)item; int number = project.getLastBuild().getNumber() + 1; PluginImpl.getServer_(PluginImpl.DEFAULT_SERVER_NAME).triggerEvent(Setup.createPatchsetCreated()); TestUtils.waitForBuilds(project, number, 20000); //3 old builds + the new one. assertEquals(number, project.getLastCompletedBuild().getNumber()); assertSame(Result.SUCCESS, project.getLastCompletedBuild().getResult()); }
j.waitUntilNoActivity(); for (FreeStyleProject fp : j.jenkins.getAllItems(FreeStyleProject.class)) { assertEquals(1, fp.getLastBuild().getNumber());
/** * Tests that a comment added triggers a build correctly. * * @throws Exception if so. */ @Test @LocalData public void testTriggerOnCommentAdded() throws Exception { gerritServer.getConfig().setCategories(Setup.createCodeReviewVerdictCategoryList()); FreeStyleProject project = DuplicatesUtil.createGerritTriggeredJobForCommentAdded(j, "projectX"); project.getBuildersList().add(new SleepBuilder(2000)); serverMock.waitForCommand(GERRIT_STREAM_EVENTS, 2000); CommentAdded firstEvent = Setup.createCommentAdded(); gerritServer.triggerEvent(firstEvent); TestUtils.waitForBuilds(project, 1); assertEquals(1, project.getLastCompletedBuild().getNumber()); assertSame(Result.SUCCESS, project.getLastCompletedBuild().getResult()); }
assertEquals(1, project.getLastCompletedBuild().getNumber()); assertSame(PluginImpl.DEFAULT_SERVER_NAME, buildOne.getCause(GerritCause.class).getEvent().getProvider().getName());
/** * Tests that two comments added during the same time only triggers one build. * * @throws Exception if so. */ @Test @LocalData public void testDoubleTriggeredOnCommentAdded() throws Exception { gerritServer.getConfig().setCategories(Setup.createCodeReviewVerdictCategoryList()); FreeStyleProject project = DuplicatesUtil.createGerritTriggeredJobForCommentAdded(j, "projectX"); project.getBuildersList().add(new SleepBuilder(2000)); serverMock.waitForCommand(GERRIT_STREAM_EVENTS, 2000); gerritServer.triggerEvent(Setup.createCommentAdded()); gerritServer.triggerEvent(Setup.createCommentAdded()); TestUtils.waitForBuilds(project, 1); assertEquals(1, project.getLastCompletedBuild().getNumber()); assertSame(Result.SUCCESS, project.getLastCompletedBuild().getResult()); }
FreeStyleBuild buildOne = project.getLastCompletedBuild(); assertSame(Result.SUCCESS, buildOne.getResult()); assertEquals(1, project.getLastCompletedBuild().getNumber()); assertSame(gServer.getName(), buildOne.getCause(GerritCause.class).getEvent().getProvider().getName());
assertEquals(3, project.getLastCompletedBuild().getNumber()); assertSame(firstExpected, project.getFirstBuild().getResult()); assertSame(secondExpected, project.getBuildByNumber(2).getResult());
assertEquals(1, projectOne.getLastCompletedBuild().getNumber()); assertSame(gerritServerOneName, buildOne.getCause(GerritCause.class).getEvent().getProvider().getName()); assertEquals(1, projectTwo.getLastCompletedBuild().getNumber()); assertSame(gerritServerTwoName, buildTwo.getCause(GerritCause.class).getEvent().getProvider().getName());
assertEquals(buildNum, project.getLastCompletedBuild().getNumber());
/** * Tests that builds are not aborted when "build current patch sets only" is set to false. * * @throws Exception if so. */ @Test @LocalData public void testNotBuildLatestPatchsetOnly() throws Exception { gerritServer.getConfig().getBuildCurrentPatchesOnly().setEnabled(false); FreeStyleProject project = DuplicatesUtil.createGerritTriggeredJob(j, "projectX"); project.getBuildersList().add(new SleepBuilder(2000)); serverMock.waitForCommand(GERRIT_STREAM_EVENTS, 2000); ManualPatchsetCreated firstEvent = Setup.createManualPatchsetCreated(); AtomicReference<Run> firstBuildRef = TestUtils.getFutureBuildToStart(firstEvent); gerritServer.triggerEvent(firstEvent); Run firstBuild = TestUtils.waitForBuildToStart(firstBuildRef); PatchsetCreated secondEvent = Setup.createPatchsetCreated(); if (null != secondEvent.getPatchSet()) { secondEvent.getPatchSet().setNumber("2"); } gerritServer.triggerEvent(secondEvent); TestUtils.waitForBuilds(project, 2); assertEquals(2, project.getLastCompletedBuild().getNumber()); assertSame(Result.SUCCESS, firstBuild.getResult()); assertSame(Result.SUCCESS, project.getFirstBuild().getResult()); assertSame(Result.SUCCESS, project.getLastBuild().getResult()); }
assertEquals(1, project.getLastCompletedBuild().getNumber()); assertSame(gerritServerName, buildOne.getCause(GerritCause.class).getEvent().getProvider().getName());