diff --git a/spring-rabbit/src/test/java/org/springframework/amqp/rabbit/config/ListenerContainerParserTests.java b/spring-rabbit/src/test/java/org/springframework/amqp/rabbit/config/ListenerContainerParserTests.java
index 168164b7..6112527f 100644
--- a/spring-rabbit/src/test/java/org/springframework/amqp/rabbit/config/ListenerContainerParserTests.java
+++ b/spring-rabbit/src/test/java/org/springframework/amqp/rabbit/config/ListenerContainerParserTests.java
@@ -36,6 +36,7 @@ import org.springframework.beans.DirectFieldAccessor;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.context.expression.StandardBeanExpressionResolver;
import org.springframework.core.io.ClassPathResource;
+import org.springframework.test.util.ReflectionTestUtils;
/**
* @author Mark Fisher
@@ -73,12 +74,17 @@ public final class ListenerContainerParserTests {
@Test
public void testParseWithAdviceChain() throws Exception {
SimpleMessageListenerContainer container = beanFactory.getBean("container3", SimpleMessageListenerContainer.class);
- DirectFieldAccessor accessor = new DirectFieldAccessor(container);
- Object adviceChain = accessor.getPropertyValue("adviceChain");
+ Object adviceChain = ReflectionTestUtils.getField(container, "adviceChain");
assertNotNull(adviceChain);
assertEquals(3, ((Advice[]) adviceChain).length);
}
+ @Test
+ public void testParseWithDefaults() throws Exception {
+ SimpleMessageListenerContainer container = beanFactory.getBean("container4", SimpleMessageListenerContainer.class);
+ assertEquals(1, ReflectionTestUtils.getField(container, "concurrentConsumers"));
+ }
+
static class TestBean {
public void handle(String s) {
}
diff --git a/spring-rabbit/src/test/java/org/springframework/amqp/rabbit/listener/SimpleMessageListenerContainerTests.java b/spring-rabbit/src/test/java/org/springframework/amqp/rabbit/listener/SimpleMessageListenerContainerTests.java
index 149e8170..0aa8fae7 100644
--- a/spring-rabbit/src/test/java/org/springframework/amqp/rabbit/listener/SimpleMessageListenerContainerTests.java
+++ b/spring-rabbit/src/test/java/org/springframework/amqp/rabbit/listener/SimpleMessageListenerContainerTests.java
@@ -12,12 +12,15 @@
*/
package org.springframework.amqp.rabbit.listener;
+import static org.junit.Assert.assertEquals;
+
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
import org.springframework.amqp.core.AcknowledgeMode;
import org.springframework.amqp.rabbit.connection.SingleConnectionFactory;
import org.springframework.amqp.rabbit.listener.adapter.MessageListenerAdapter;
+import org.springframework.test.util.ReflectionTestUtils;
import org.springframework.transaction.TransactionDefinition;
import org.springframework.transaction.TransactionException;
import org.springframework.transaction.support.AbstractPlatformTransactionManager;
@@ -55,6 +58,16 @@ public class SimpleMessageListenerContainerTests {
container.afterPropertiesSet();
}
+ @Test
+ public void testDefaConsumerCount() throws Exception {
+ SimpleMessageListenerContainer container = new SimpleMessageListenerContainer(new SingleConnectionFactory());
+ container.setMessageListener(new MessageListenerAdapter(this));
+ container.setQueueNames("foo");
+ container.setAutoStartup(false);
+ container.afterPropertiesSet();
+ assertEquals(1, ReflectionTestUtils.getField(container, "concurrentConsumers"));
+ }
+
@SuppressWarnings("serial")
private class TestTransactionManager extends AbstractPlatformTransactionManager {
diff --git a/spring-rabbit/src/test/resources/org/springframework/amqp/rabbit/config/ListenerContainerParserTests-context.xml b/spring-rabbit/src/test/resources/org/springframework/amqp/rabbit/config/ListenerContainerParserTests-context.xml
index a254d427..edc86df6 100644
--- a/spring-rabbit/src/test/resources/org/springframework/amqp/rabbit/config/ListenerContainerParserTests-context.xml
+++ b/spring-rabbit/src/test/resources/org/springframework/amqp/rabbit/config/ListenerContainerParserTests-context.xml
@@ -24,6 +24,10 @@
+
+
+
+