@Test(timeout = 100L)
public void Should_takeAndExecuteTasks()
        throws Exception {

    ITask taskMock = mock(ITask.class);
    when(queueMock.tryTake())
            .thenReturn(taskMock)
            .thenReturn(null);
    ExecutionTask executionTask = new ExecutionTask(dispatcherMock);
    when(dispatcherMock.getExecutionTask()).thenReturn(executionTask);
    executionTask.execute();
    verify(taskMock).execute();
}