@Test public void testCheckpointCallsInOrder() { try { Task task = createTask(); task.startTaskThread(); awaitLatch.await(); for (int i = 1; i <= NUM_CALLS; i++) { task.triggerCheckpointBarrier(i, 156865867234L); } triggerLatch.await(); assertFalse(task.isCanceledOrFailed()); ExecutionState currentState = task.getExecutionState(); if (currentState != ExecutionState.RUNNING && currentState != ExecutionState.FINISHED) { fail("Task should be RUNNING or FINISHED, but is " + currentState); } task.cancelExecution(); task.getExecutingThread().join(); } catch (Exception e) { e.printStackTrace(); fail(e.getMessage()); } }