From 7ee5df40330af61701ecbc20ac2496a848122287 Mon Sep 17 00:00:00 2001 From: Gary Russell Date: Fri, 18 Dec 2015 20:41:01 -0500 Subject: [PATCH] RabbitMQ Cleanup (New Tests). Simple polishing. --- .../integration/RabbitBinderModuleTests.java | 26 +++++++++++++------ .../RabbitAndRedisBinderApplicationTests.java | 17 ++++++++++-- 2 files changed, 33 insertions(+), 10 deletions(-) diff --git a/spring-cloud-stream-binders/spring-cloud-stream-binder-rabbit/src/test/java/org/springframework/cloud/stream/binder/rabbit/integration/RabbitBinderModuleTests.java b/spring-cloud-stream-binders/spring-cloud-stream-binder-rabbit/src/test/java/org/springframework/cloud/stream/binder/rabbit/integration/RabbitBinderModuleTests.java index 2b576984b..bf237c426 100644 --- a/spring-cloud-stream-binders/spring-cloud-stream-binder-rabbit/src/test/java/org/springframework/cloud/stream/binder/rabbit/integration/RabbitBinderModuleTests.java +++ b/spring-cloud-stream-binders/spring-cloud-stream-binder-rabbit/src/test/java/org/springframework/cloud/stream/binder/rabbit/integration/RabbitBinderModuleTests.java @@ -31,6 +31,7 @@ import org.mockito.Mockito; import org.springframework.amqp.rabbit.connection.CachingConnectionFactory; import org.springframework.amqp.rabbit.connection.ConnectionFactory; +import org.springframework.amqp.rabbit.core.RabbitAdmin; import org.springframework.beans.DirectFieldAccessor; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @@ -45,6 +46,7 @@ import org.springframework.context.annotation.Bean; /** * @author Marius Bogoevici + * @author Gary Russell */ public class RabbitBinderModuleTests { @@ -53,7 +55,8 @@ public class RabbitBinderModuleTests { private ConfigurableApplicationContext context = null; - public static final ConnectionFactory MOCK_CONNECTION_FACTORY = Mockito.mock(ConnectionFactory.class, Mockito.RETURNS_MOCKS); + public static final ConnectionFactory MOCK_CONNECTION_FACTORY = + Mockito.mock(ConnectionFactory.class, Mockito.RETURNS_MOCKS); @After public void tearDown() { @@ -61,13 +64,18 @@ public class RabbitBinderModuleTests { context.close(); context = null; } + RabbitAdmin admin = new RabbitAdmin(rabbitTestSupport.getResource()); + admin.deleteQueue("binder.input"); + admin.deleteQueue("binder.output"); + admin.deleteExchange("binder.input"); + admin.deleteExchange("binder.output"); } @Test public void testParentConnectionFactoryInheritedByDefault() { context = SpringApplication.run(SimpleProcessor.class); - BinderFactory binderFactory = context.getBean(BinderFactory.class); - Binder binder = binderFactory.getBinder(null); + BinderFactory binderFactory = context.getBean(BinderFactory.class); + Binder binder = binderFactory.getBinder(null); assertThat(binder, instanceOf(RabbitMessageChannelBinder.class)); DirectFieldAccessor binderFieldAccessor = new DirectFieldAccessor(binder); ConnectionFactory binderConnectionFactory = @@ -80,8 +88,8 @@ public class RabbitBinderModuleTests { @Test public void testParentConnectionFactoryInheritedIfOverridden() { context = new SpringApplication(SimpleProcessor.class, ConnectionFactoryConfiguration.class).run(); - BinderFactory binderFactory = context.getBean(BinderFactory.class); - Binder binder = binderFactory.getBinder(null); + BinderFactory binderFactory = context.getBean(BinderFactory.class); + Binder binder = binderFactory.getBinder(null); assertThat(binder, instanceOf(RabbitMessageChannelBinder.class)); DirectFieldAccessor binderFieldAccessor = new DirectFieldAccessor(binder); ConnectionFactory binderConnectionFactory = @@ -98,9 +106,9 @@ public class RabbitBinderModuleTests { params.add("--spring.cloud.stream.output.binder=custom"); params.add("--spring.cloud.stream.binders.custom.type=rabbit"); params.add("--spring.cloud.stream.binders.custom.environment.foo=bar"); - context = SpringApplication.run(SimpleProcessor.class, params.toArray(new String[]{})); - BinderFactory binderFactory = context.getBean(BinderFactory.class); - Binder binder = binderFactory.getBinder(null); + context = SpringApplication.run(SimpleProcessor.class, params.toArray(new String[params.size()])); + BinderFactory binderFactory = context.getBean(BinderFactory.class); + Binder binder = binderFactory.getBinder(null); assertThat(binder, instanceOf(RabbitMessageChannelBinder.class)); DirectFieldAccessor binderFieldAccessor = new DirectFieldAccessor(binder); ConnectionFactory binderConnectionFactory = @@ -121,5 +129,7 @@ public class RabbitBinderModuleTests { public ConnectionFactory connectionFactory() { return MOCK_CONNECTION_FACTORY; } + } + } diff --git a/spring-cloud-stream-samples/multibinder/src/test/java/multibinder/RabbitAndRedisBinderApplicationTests.java b/spring-cloud-stream-samples/multibinder/src/test/java/multibinder/RabbitAndRedisBinderApplicationTests.java index 7ebfbe922..6d8981831 100644 --- a/spring-cloud-stream-samples/multibinder/src/test/java/multibinder/RabbitAndRedisBinderApplicationTests.java +++ b/spring-cloud-stream-samples/multibinder/src/test/java/multibinder/RabbitAndRedisBinderApplicationTests.java @@ -20,11 +20,13 @@ import java.util.UUID; import org.hamcrest.CoreMatchers; import org.hamcrest.Matchers; +import org.junit.After; import org.junit.Assert; import org.junit.ClassRule; import org.junit.Test; import org.junit.runner.RunWith; +import org.springframework.amqp.rabbit.core.RabbitAdmin; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.SpringApplicationConfiguration; import org.springframework.cloud.stream.binder.BinderFactory; @@ -39,6 +41,10 @@ import org.springframework.test.annotation.DirtiesContext; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; import org.springframework.test.context.web.WebAppConfiguration; +/** + * @author Marius Bogoevici + * @author Gary Russell + */ @RunWith(SpringJUnit4ClassRunner.class) @SpringApplicationConfiguration(classes = MultibinderApplication.class) @WebAppConfiguration @@ -54,6 +60,13 @@ public class RabbitAndRedisBinderApplicationTests { @Autowired private BinderFactory binderFactory; + @After + public void cleanUp() { + RabbitAdmin admin = new RabbitAdmin(rabbitTestSupport.getResource()); + admin.deleteQueue("binder.dataOut"); + admin.deleteExchange("binder.dataOut"); + } + @Test public void contextLoads() { } @@ -61,11 +74,11 @@ public class RabbitAndRedisBinderApplicationTests { @Test public void messagingWorks() { DirectChannel dataProducer = new DirectChannel(); - binderFactory.getBinder("redis").bindProducer("dataIn", dataProducer,null); + binderFactory.getBinder("redis").bindProducer("dataIn", dataProducer, null); QueueChannel dataConsumer = new QueueChannel(); binderFactory.getBinder("rabbit").bindPubSubConsumer("dataOut", dataConsumer, - UUID.randomUUID().toString(),null); + UUID.randomUUID().toString(), null); String testPayload = "testFoo" + UUID.randomUUID().toString(); dataProducer.send(MessageBuilder.withPayload(testPayload).build());