@Test
public void Should_interruptThread_When_putToQueueIsInterrupted()
        throws Exception {

    IMessageReceiver messageReceiverMock1 = mock(IMessageReceiver.class);
    when(messageProcessingSequenceMock.getCurrentReceiver()).thenReturn(messageReceiverMock1);
    doThrow(new InterruptedException()).when(taskQueueMock).put(any());
    MessageProcessor messageProcessor = new MessageProcessor(taskQueueMock, messageProcessingSequenceMock, configurationMock);
    when(IOC.resolve(KEY_FOR_NEW_IOBJECT))
            .thenReturn(responseMock);
    messageProcessor.process(messageMock, contextMock);
    verify(taskQueueMock).put(same(messageProcessor));
    assertTrue(Thread.interrupted());
}