@Test public void getNextTaskExecuteOnlyTest() { OneTimeTaskWrapper task = new OneTimeTaskWrapper(DoNothingRunnable.instance(), null, Clock.accurateForwardProgressingMillis() + DELAY_TIME); queueSet.executeQueue.add(task); assertTrue(queueSet.getNextTask() == task); }
@Test public void getNextTaskScheduleFirstTest() { OneTimeTaskWrapper executeTask = new OneTimeTaskWrapper(DoNothingRunnable.instance(), null, Clock.accurateForwardProgressingMillis() + DELAY_TIME); OneTimeTaskWrapper scheduleTask = new OneTimeTaskWrapper(DoNothingRunnable.instance(), null, Clock.lastKnownForwardProgressingMillis()); queueSet.executeQueue.add(executeTask); queueSet.scheduleQueue.add(scheduleTask); assertTrue(queueSet.getNextTask() == scheduleTask); }
@Test public void getNextTaskExecuteFirstTest() { OneTimeTaskWrapper executeTask = new OneTimeTaskWrapper(DoNothingRunnable.instance(), null, Clock.accurateForwardProgressingMillis()); OneTimeTaskWrapper scheduleTask = new OneTimeTaskWrapper(new TestRunnable(), null, Clock.accurateForwardProgressingMillis() + DELAY_TIME); queueSet.executeQueue.add(executeTask); queueSet.scheduleQueue.add(scheduleTask); assertTrue(queueSet.getNextTask() == executeTask); }
TaskWrapper nextHighPriorityTask = highPriorityQueueSet.getNextTask(); TaskWrapper nextLowPriorityTask = lowPriorityQueueSet.getNextTask(); if (nextLowPriorityTask == null) { nextTask = nextHighPriorityTask; return starvablePriorityQueueSet.getNextTask(); } else { long nextTaskDelay = nextTask.getScheduleDelay(); if (nextTaskDelay > 0) { TaskWrapper nextStarvableTask = starvablePriorityQueueSet.getNextTask(); if (nextStarvableTask != null && nextStarvableTask.getPureRunTime() < nextTask.getPureRunTime()) {
TaskWrapper nextHighPriorityTask = highPriorityQueueSet.getNextTask(); TaskWrapper nextLowPriorityTask = lowPriorityQueueSet.getNextTask(); if (nextLowPriorityTask == null) { nextTask = nextHighPriorityTask; return starvablePriorityQueueSet.getNextTask(); } else { long nextTaskDelay = nextTask.getScheduleDelay(); if (nextTaskDelay > 0) { TaskWrapper nextStarvableTask = starvablePriorityQueueSet.getNextTask(); if (nextStarvableTask != null && nextStarvableTask.getPureRunTime() < nextTask.getPureRunTime()) {
@Test public void getNextTaskEmptyTest() { assertNull(queueSet.getNextTask()); }
@Test public void getNextTaskScheduleOnlyTest() { OneTimeTaskWrapper task = new OneTimeTaskWrapper(DoNothingRunnable.instance(), null, Clock.accurateForwardProgressingMillis() + DELAY_TIME); queueSet.scheduleQueue.add(task); assertTrue(queueSet.getNextTask() == task); }