private void test1Item( boolean mergeSuccess, boolean createBranchThrowsException, boolean updateBranchThrowsException, VerificationStatus finalStatus, boolean isDone) throws JobExecutionException { createItem( TestCollectorConstants.BRANCH_1, mergeSuccess, createBranchThrowsException, updateBranchThrowsException, true, true); // consume new ConsumerJob().execute(null); // wait for task in queue to finish SynchronizeableThreadPoolExecutor executor = (SynchronizeableThreadPoolExecutor) ExecutorServiceFactory.getCachedThreadPoolExecutor(); executor.join(); // run decision maker again new ConsumerJob().execute(null); assertItem(TestCollectorConstants.BRANCH_1, finalStatus, isDone); }
@Test public void testE2EWith2Items() throws Exception { createItem(TestCollectorConstants.BRANCH_1, true, false, false, true, false); createItem(TestCollectorConstants.BRANCH_2, true, false, false, false, true); // consume new ConsumerJob().execute(null); // wait for task in queue to finish SynchronizeableThreadPoolExecutor executor = (SynchronizeableThreadPoolExecutor) ExecutorServiceFactory.getCachedThreadPoolExecutor(); executor.join(); // run decision maker again new ConsumerJob().execute(null); assertItem(TestCollectorConstants.BRANCH_1, VerificationStatus.PASSED_AND_PUSHED, true); assertItem(TestCollectorConstants.BRANCH_2, VerificationStatus.PASSED_AND_PUSHED, true); }
@Test public void testE2EWith2ItemsSeparately() throws Exception { JenkinsVerifierMockFactory.setHangMock(); CommitItem item1 = createItem(TestCollectorConstants.BRANCH_1, true, false, false, true, true); // consume new ConsumerJob().execute(null); CommitItem item2 = createItem(TestCollectorConstants.BRANCH_2, true, false, false, true, true); new ConsumerJob().execute(null); item2 = CollectorApi.getCommitItemContainer().get(item2.getKey()); Assert.assertEquals(item2.getParent(), item1); // run decision maker again // wait for task in queue to finish SynchronizeableThreadPoolExecutor executor = (SynchronizeableThreadPoolExecutor) ExecutorServiceFactory.getCachedThreadPoolExecutor(); executor.join(); new ConsumerJob().execute(null); item1 = CollectorApi.getCommitItemContainer().get(item1.getKey()); item2 = CollectorApi.getCommitItemContainer().get(item2.getKey()); assertItem(TestCollectorConstants.BRANCH_1, VerificationStatus.TIMEOUT, true); assertItem(TestCollectorConstants.BRANCH_2, VerificationStatus.RUNNING, false); Assert.assertNull(item2.getParent()); }