RunForeverTask callable = new RunForeverTask(2000);
assertFalse(callable.isAllDone());
assertEquals(0, defaultScheduler.getAllTasks().size());
final ScheduledTask<Integer> task = defaultScheduler.schedule("Test Task", callable, new ManualRunSchedule());
task.runNow();
callable.blockForStart();
final RunForeverTask blockedCallable = new RunForeverTask(2000);
final ScheduledTask<Integer> blockedTask =
defaultScheduler.schedule("Blocked Task", blockedCallable, new ManualRunSchedule());
blockedTask.runNow();
Utils.awaitTaskState(blockedTask, 1000, TaskState.SLEEPING);
assertFalse(blockedCallable.isStarted());