Bael-1965: using awaitility in test (#4691)

* how to trigger and stop scheduled batch job

* Replace thread.sleep to awaitility tool in integration testing
This commit is contained in:
mmchsusan
2018-07-12 13:22:05 -04:00
committed by maibin
parent 6335e28a9e
commit 34f4a6bdb9
3 changed files with 37 additions and 29 deletions
@@ -6,7 +6,7 @@ import java.util.List;
import java.util.Map;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicInteger;
import org.baeldung.batchscheduler.model.Book;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -45,7 +45,7 @@ public class SpringBatchScheduler {
private AtomicBoolean enabled = new AtomicBoolean(true);
private Date currentLaunchDate;
private AtomicInteger batchRunCounter = new AtomicInteger(0);
private final Map<Object, ScheduledFuture<?>> scheduledTasks = new IdentityHashMap<>();
@@ -60,18 +60,14 @@ public class SpringBatchScheduler {
Date date = new Date();
logger.debug("scheduler starts at " + date);
if (enabled.get()) {
currentLaunchDate = date;
JobExecution jobExecution = jobLauncher().run(job(), new JobParametersBuilder().addDate("launchDate", currentLaunchDate)
JobExecution jobExecution = jobLauncher().run(job(), new JobParametersBuilder().addDate("launchDate", date)
.toJobParameters());
batchRunCounter.incrementAndGet();
logger.debug("Batch job ends with status as " + jobExecution.getStatus());
}
logger.debug("scheduler ends ");
}
public Date getCurrentLaunchDate() {
return currentLaunchDate;
}
public void stop() {
enabled.set(false);
}
@@ -169,4 +165,8 @@ public class SpringBatchScheduler {
};
}
public AtomicInteger getBatchRunCounter() {
return batchRunCounter;
}
}