@Test
public void testGetQueueWithCustomConfiguration() {

    when(configuration.getIntProperty(eq("workflow.event.queues.sqs.batchSize"), anyInt())).thenReturn(10);
    when(configuration.getIntProperty(eq("workflow.event.queues.sqs.pollTimeInMS"), anyInt())).thenReturn(50);
    when(configuration.getIntProperty(eq("workflow.event.queues.sqs.visibilityTimeoutInSeconds"), anyInt())).thenReturn(30);
    ListQueuesResult listQueuesResult = new ListQueuesResult().withQueueUrls("test_queue_1");
    when(amazonSQSClient.listQueues(any(ListQueuesRequest.class))).thenReturn(listQueuesResult);
    SQSEventQueueProvider sqsEventQueueProvider = new SQSEventQueueProvider(amazonSQSClient, configuration, Schedulers.from(Executors.newSingleThreadExecutor()));
    SQSObservableQueue sqsObservableQueue = (SQSObservableQueue) sqsEventQueueProvider.getQueue("test_queue_1");
    assertNotNull(sqsObservableQueue);
    assertEquals(10, sqsObservableQueue.getBatchSize());
    assertEquals(50, sqsObservableQueue.getPollTimeInMS());
    assertEquals(30, sqsObservableQueue.getVisibilityTimeoutInSeconds());
}