|  | 
| 44 | 44 | import org.springframework.jms.config.JmsListenerContainerFactory; | 
| 45 | 45 | import org.springframework.jms.config.JmsListenerEndpoint; | 
| 46 | 46 | import org.springframework.jms.config.SimpleJmsListenerContainerFactory; | 
|  | 47 | +import org.springframework.jms.config.SimpleJmsListenerEndpoint; | 
| 47 | 48 | import org.springframework.jms.connection.CachingConnectionFactory; | 
| 48 | 49 | import org.springframework.jms.core.JmsMessagingTemplate; | 
| 49 | 50 | import org.springframework.jms.core.JmsTemplate; | 
| @@ -72,20 +73,18 @@ class JmsAutoConfigurationTests { | 
| 72 | 73 | 
 | 
| 73 | 74 | 	@Test | 
| 74 | 75 | 	void testDefaultJmsConfiguration() { | 
| 75 |  | -		this.contextRunner.withUserConfiguration(TestConfiguration.class).run(this::testDefaultJmsConfiguration); | 
| 76 |  | -	} | 
| 77 |  | - | 
| 78 |  | -	private void testDefaultJmsConfiguration(AssertableApplicationContext loaded) { | 
| 79 |  | -		assertThat(loaded).hasSingleBean(ConnectionFactory.class); | 
| 80 |  | -		assertThat(loaded).hasSingleBean(CachingConnectionFactory.class); | 
| 81 |  | -		CachingConnectionFactory factory = loaded.getBean(CachingConnectionFactory.class); | 
| 82 |  | -		assertThat(factory.getTargetConnectionFactory()).isInstanceOf(ActiveMQConnectionFactory.class); | 
| 83 |  | -		JmsTemplate jmsTemplate = loaded.getBean(JmsTemplate.class); | 
| 84 |  | -		JmsMessagingTemplate messagingTemplate = loaded.getBean(JmsMessagingTemplate.class); | 
| 85 |  | -		assertThat(factory).isEqualTo(jmsTemplate.getConnectionFactory()); | 
| 86 |  | -		assertThat(messagingTemplate.getJmsTemplate()).isEqualTo(jmsTemplate); | 
| 87 |  | -		assertThat(getBrokerUrl(factory)).startsWith("vm://"); | 
| 88 |  | -		assertThat(loaded.containsBean("jmsListenerContainerFactory")).isTrue(); | 
|  | 76 | +		this.contextRunner.withUserConfiguration(TestConfiguration.class).run((context) -> { | 
|  | 77 | +			assertThat(context).hasSingleBean(ConnectionFactory.class); | 
|  | 78 | +			assertThat(context).hasSingleBean(CachingConnectionFactory.class); | 
|  | 79 | +			CachingConnectionFactory factory = context.getBean(CachingConnectionFactory.class); | 
|  | 80 | +			assertThat(factory.getTargetConnectionFactory()).isInstanceOf(ActiveMQConnectionFactory.class); | 
|  | 81 | +			JmsTemplate jmsTemplate = context.getBean(JmsTemplate.class); | 
|  | 82 | +			JmsMessagingTemplate messagingTemplate = context.getBean(JmsMessagingTemplate.class); | 
|  | 83 | +			assertThat(factory).isEqualTo(jmsTemplate.getConnectionFactory()); | 
|  | 84 | +			assertThat(messagingTemplate.getJmsTemplate()).isEqualTo(jmsTemplate); | 
|  | 85 | +			assertThat(getBrokerUrl(factory)).startsWith("vm://"); | 
|  | 86 | +			assertThat(context.containsBean("jmsListenerContainerFactory")).isTrue(); | 
|  | 87 | +		}); | 
| 89 | 88 | 	} | 
| 90 | 89 | 
 | 
| 91 | 90 | 	@Test | 
| @@ -124,6 +123,30 @@ private void testJmsTemplateBackOffEverything(AssertableApplicationContext loade | 
| 124 | 123 | 		assertThat(messagingTemplate.getJmsTemplate()).isEqualTo(jmsTemplate); | 
| 125 | 124 | 	} | 
| 126 | 125 | 
 | 
|  | 126 | +	@Test | 
|  | 127 | +	void testDefaultJmsListenerConfiguration() { | 
|  | 128 | +		this.contextRunner.withUserConfiguration(TestConfiguration.class).run((loaded) -> { | 
|  | 129 | +			assertThat(loaded).hasSingleBean(CachingConnectionFactory.class); | 
|  | 130 | +			CachingConnectionFactory connectionFactory = loaded.getBean(CachingConnectionFactory.class); | 
|  | 131 | +			assertThat(loaded).hasSingleBean(DefaultJmsListenerContainerFactory.class); | 
|  | 132 | +			DefaultJmsListenerContainerFactory containerFactory = loaded | 
|  | 133 | +				.getBean(DefaultJmsListenerContainerFactory.class); | 
|  | 134 | +			SimpleJmsListenerEndpoint jmsListenerEndpoint = new SimpleJmsListenerEndpoint(); | 
|  | 135 | +			jmsListenerEndpoint.setMessageListener((message) -> { | 
|  | 136 | +			}); | 
|  | 137 | +			DefaultMessageListenerContainer container = containerFactory.createListenerContainer(jmsListenerEndpoint); | 
|  | 138 | +			assertThat(container.getClientId()).isNull(); | 
|  | 139 | +			assertThat(container.getConcurrentConsumers()).isEqualTo(1); | 
|  | 140 | +			assertThat(container.getConnectionFactory()).isSameAs(connectionFactory); | 
|  | 141 | +			assertThat(container.getMaxConcurrentConsumers()).isEqualTo(1); | 
|  | 142 | +			assertThat(container.getSessionAcknowledgeMode()).isEqualTo(Session.AUTO_ACKNOWLEDGE); | 
|  | 143 | +			assertThat(container.isAutoStartup()).isTrue(); | 
|  | 144 | +			assertThat(container.isPubSubDomain()).isFalse(); | 
|  | 145 | +			assertThat(container.isSubscriptionDurable()).isFalse(); | 
|  | 146 | +			assertThat(container).hasFieldOrPropertyWithValue("receiveTimeout", 1000L); | 
|  | 147 | +		}); | 
|  | 148 | +	} | 
|  | 149 | + | 
| 127 | 150 | 	@Test | 
| 128 | 151 | 	void testEnableJmsCreateDefaultContainerFactory() { | 
| 129 | 152 | 		this.contextRunner.withUserConfiguration(EnableJmsConfiguration.class) | 
|  | 
0 commit comments