QueuedExecutions { public void dequeue(final int executionId) { if (this.queuedFlowMap.containsKey(executionId)) { this.queuedFlowList.remove(this.queuedFlowMap.get(executionId)); this.queuedFlowMap.remove(executionId); } } QueuedExecutions(final long capacity); Pair<ExecutionReference, ExecutableFlow> fetchHead(); void dequeue(final int executionId); void enqueue(final ExecutableFlow exflow, final ExecutionReference ref); void enqueueAll(
      final Collection<Pair<ExecutionReference, ExecutableFlow>> collection); Collection<Pair<ExecutionReference, ExecutableFlow>> getAllEntries(); boolean hasExecution(final int executionId); ExecutableFlow getFlow(final int executionId); ExecutionReference getReference(final int executionId); long size(); boolean isFull(); boolean isEmpty(); void clear();  }
@Test public void testDequeue() throws IOException, ExecutorManagerException { final QueuedExecutions queue = new QueuedExecutions(5); final List<Pair<ExecutionReference, ExecutableFlow>> dataList = getDummyData(); queue.enqueueAll(dataList); queue.dequeue(dataList.get(0).getFirst().getExecId()); Assert.assertEquals(queue.size(), 1); Assert.assertTrue(queue.getAllEntries().contains(dataList.get(1))); }