package de.otto.edison.jobs.repository.cleanup; public class ClearDeadLocksTest { /* public static final String JOB_TYPE = "someType"; public static final String JOB_ID = "someId"; @Mock private JobRepository jobRepository; @Mock private JobLockRepository jobLockRepository; private ClearDeadLocks subject; private Clock fixedClock; private OffsetDateTime now; @Before public void setUp() throws Exception { initMocks(this); fixedClock = Clock.fixed(Instant.now(), ZoneId.systemDefault()); subject = new ClearDeadLocks(jobLockRepository, jobRepository); when(jobLockRepository.runningJobs()).thenReturn(asList(new RunningJob(JOB_ID, JOB_TYPE))); now = OffsetDateTime.now(fixedClock); } @Test public void shouldFindAndRemoveLockOfStoppedJob() { JobInfo stoppedJob = jobInfo(Optional.of(this.now)); when(jobRepository.findOne(JOB_ID)).thenReturn(Optional.of(stoppedJob)); subject.clearLocks(); verify(jobLockRepository).releaseRunLock(JOB_TYPE); } @Test public void shouldNotClearLockOfStillRunningJob() { JobInfo runningJob = jobInfo(Optional.empty()); when(jobRepository.findOne(JOB_ID)).thenReturn(Optional.of(runningJob)); subject.clearLocks(); verify(jobLockRepository, never()).releaseRunLock(JOB_TYPE); } @Test public void shouldClearLockIfNoJobInfoExists() { when(jobRepository.findOne(JOB_ID)).thenReturn(Optional.empty()); subject.clearLocks(); verify(jobLockRepository).releaseRunLock(JOB_TYPE); } private JobInfo jobInfo(Optional<OffsetDateTime> stopped) { return JobInfo.newJobInfo(JOB_ID, JOB_TYPE, this.now, this.now, stopped, JobInfo.JobStatus.OK, Collections.emptyList(), fixedClock, "HOST"); } */ }