public JobStateTransition getTransition(JobState state) { return stateTransitions.byState(state); }
public Date getStartedDateFor(JobState state) { JobStateTransition transition = this.stateTransitions.byState(state); return transition == null ? null : transition.getStateChangeTime(); }
@Test public void shouldReturnMostRecentCompletedTransitionAsCompletedDateIfLatestTransitionIdIsNot() { firstJob.assign("AGENT-1", time1.toDate()); firstJob.completing(JobResult.Passed, time2.toDate()); firstJob.completed(time2.toDate()); secondJob.assign("AGENT-2", time3.toDate()); secondJob.completing(JobResult.Passed, time4.toDate()); secondJob.completed(time4.toDate()); secondJob.getTransitions().byState(JobState.Completed).setId(1); stage.calculateResult(); assertThat(stage.completedDate(), is(time4.toDate())); }
@Test public void shouldChangeStatus() throws Exception { JobInstance instance = JobInstanceMother.scheduled("jobConfig1"); instance.assign("1234", timeProvider.currentTime()); assertThat(instance.getState(), is(JobState.Assigned)); assertThat(instance.getTransitions().byState(JobState.Assigned), not(nullValue())); }
private void assertCopiedJob(JobInstance newJava, final long originalId) { assertThat(newJava.getId(), is(-1l)); assertThat(newJava.getTransitions().isEmpty(), is(false)); assertThat(newJava.getResult(), is(Passed)); assertThat(newJava.getState(), is(Completed)); assertThat(newJava.getTransitions().byState(Scheduled).getId(), is(-1l)); assertThat(newJava.getTransitions().byState(Completed).getId(), is(-1l)); assertThat(newJava.getOriginalJobId(), is(originalId)); assertThat(newJava.isRerun(), is(false)); assertThat(newJava.isCopy(), is(true)); }
private JobStateTransition assertNewJob(JobInstance newRails) { assertThat(newRails.getId(), is(-1l)); assertThat(newRails.getTransitions().size(), is(1)); JobStateTransition newSchedulingTransition = newRails.getTransitions().byState(JobState.Scheduled); assertThat(newSchedulingTransition.getId(), is(-1l)); assertThat(newRails.getResult(), is(Unknown)); assertThat(newRails.getState(), is(Scheduled)); assertThat(newRails.isRerun(), is(true)); return newSchedulingTransition; }