use of com.linkedin.kafka.cruisecontrol.executor.ExecutionTask.State in project cruise-control by linkedin.
the class ExecutionTaskManagerTest method changeTaskState.
private void changeTaskState(ExecutionTask.State state, ExecutionTask task, ExecutionTaskManager taskManager) {
switch(state) {
case IN_PROGRESS:
taskManager.markTasksInProgress(Collections.singletonList(task));
assertEquals(0, taskManager.remainingPartitionMovements().size());
assertEquals(0, taskManager.remainingLeaderMovements().size());
assertEquals(1, taskManager.inProgressTasks().size());
assertEquals(0, taskManager.abortingTasks().size());
assertEquals(0, taskManager.abortedTasks().size());
assertEquals(0, taskManager.deadTasks().size());
break;
case ABORTING:
taskManager.markTaskAborting(task);
assertEquals(0, taskManager.remainingPartitionMovements().size());
assertEquals(0, taskManager.remainingLeaderMovements().size());
assertEquals(0, taskManager.inProgressTasks().size());
assertEquals(1, taskManager.abortingTasks().size());
assertEquals(0, taskManager.abortedTasks().size());
assertEquals(0, taskManager.deadTasks().size());
break;
case DEAD:
taskManager.markTaskDead(task);
assertEquals(0, taskManager.remainingPartitionMovements().size());
assertEquals(0, taskManager.remainingLeaderMovements().size());
assertEquals(0, taskManager.inProgressTasks().size());
assertEquals(0, taskManager.abortingTasks().size());
assertEquals(0, taskManager.abortedTasks().size());
assertEquals(1, taskManager.deadTasks().size());
break;
case ABORTED:
case COMPLETED:
ExecutionTask.State origState = task.state();
taskManager.markTaskDone(task);
assertEquals(0, taskManager.remainingPartitionMovements().size());
assertEquals(0, taskManager.remainingLeaderMovements().size());
assertEquals(0, taskManager.inProgressTasks().size());
assertEquals(0, taskManager.abortingTasks().size());
assertEquals(origState == ExecutionTask.State.ABORTING ? 1 : 0, taskManager.abortedTasks().size());
assertEquals(0, taskManager.deadTasks().size());
break;
default:
throw new IllegalArgumentException("Invalid state " + state);
}
assertEquals(state, task.state());
}
Aggregations