Dependencies

		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-stream-rabbit</artifactId>
			<version>3.1.3</version>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-stream-test-support</artifactId>
			<version>3.1.3</version>
			<scope>test</scope>
		</dependency>

Application Code

The programming models are:

Test Code

@DirtiesContext
@SpringBootTest(classes = DemoApplication.class)
class DemoApplicationTests {

	@Autowired
	private Processor pipe;

	@Autowired
	private MessageCollector messageCollector;

	@Test
	void whenSendMessage_thenResponseShouldUpdateText() {
		Message<String> message = MessageBuilder.withPayload("This is my message").build();
		pipe.input().send(message);

		Object payload = messageCollector
				.forChannel(pipe.output())
				.poll()
				.getPayload();

		assertEquals("[1]: This is my message", payload.toString());
	}
}

Resources