@Test public void testJmsListenerContainerFactoryBackOff() { this.context = createContext(TestConfiguration6.class, EnableJmsConfiguration.class); JmsListenerContainerFactory<?> jmsListenerContainerFactory = this.context.getBean("jmsListenerContainerFactory", JmsListenerContainerFactory.class); assertThat(jmsListenerContainerFactory.getClass()) .isEqualTo(SimpleJmsListenerContainerFactory.class); }
@Test public void testEnableJmsCreateDefaultContainerFactory() { load(EnableJmsConfiguration.class); JmsListenerContainerFactory<?> jmsListenerContainerFactory = this.context.getBean("jmsListenerContainerFactory", JmsListenerContainerFactory.class); assertThat(jmsListenerContainerFactory.getClass()) .isEqualTo(DefaultJmsListenerContainerFactory.class); }
@Test public void testDefaultContainerFactoryNoTransactionManager() { this.context = createContext(EnableJmsConfiguration.class); JmsListenerContainerFactory<?> jmsListenerContainerFactory = this.context.getBean("jmsListenerContainerFactory", JmsListenerContainerFactory.class); assertThat(jmsListenerContainerFactory.getClass()) .isEqualTo(DefaultJmsListenerContainerFactory.class); DefaultMessageListenerContainer listenerContainer = ((DefaultJmsListenerContainerFactory) jmsListenerContainerFactory) .createListenerContainer(mock(JmsListenerEndpoint.class)); assertThat(listenerContainer.isSessionTransacted()).isTrue(); assertThat(new DirectFieldAccessor(listenerContainer).getPropertyValue("transactionManager")) .isNull(); }
@Test public void testJmsListenerContainerFactoryWithCustomSettings() { load( EnableJmsConfiguration.class, "spring.jms.listener.autoStartup=false", "spring.jms.listener.acknowledgeMode=client", "spring.jms.listener.concurrency=2", "spring.jms.listener.maxConcurrency=10"); JmsListenerContainerFactory<?> jmsListenerContainerFactory = this.context.getBean("jmsListenerContainerFactory", JmsListenerContainerFactory.class); assertThat(jmsListenerContainerFactory.getClass()) .isEqualTo(DefaultJmsListenerContainerFactory.class); DefaultMessageListenerContainer listenerContainer = ((DefaultJmsListenerContainerFactory) jmsListenerContainerFactory) .createListenerContainer(mock(JmsListenerEndpoint.class)); assertThat(listenerContainer.isAutoStartup()).isFalse(); assertThat(listenerContainer.getSessionAcknowledgeMode()).isEqualTo(Session.CLIENT_ACKNOWLEDGE); assertThat(listenerContainer.getConcurrentConsumers()).isEqualTo(2); assertThat(listenerContainer.getMaxConcurrentConsumers()).isEqualTo(10); }