Files
spring-cloud-stream-samples/testing-samples/test-embedded-kafka
Soby Chacko e94de0d535 Refactoring samples
Restructuring the samples repository
Add more docker support
Add acceptance tests for the apps
Adding sensor average processor sample
Remove aggregate samples
2018-03-09 10:47:22 -05:00
..
2018-03-09 10:47:22 -05:00
2018-03-09 10:47:22 -05:00
2018-03-09 10:47:22 -05:00
2018-03-09 10:47:22 -05:00
2018-03-09 10:47:22 -05:00
2018-03-09 10:47:22 -05:00
2018-03-09 10:47:22 -05:00

Spring Cloud Stream Testing with Embedded Kafka Broker Sample
==============================================================

In this *Spring Cloud Stream* sample, an embedded kafka broker is used for testing.

## Requirements

To run this sample, you will need to have installed:

* Java 8 or Above

## Code Tour

This sample is a Spring Boot application that uses Spring Cloud Stream to receive a `String` message and forward an upper case version of that String; it uses the Kafka binder.

* EmbeddedKafkaApplication - the Spring Boot Main Application
* EmbeddedKafkaApplicationTests - the test case

The `spring-kafka-test` dependency added to the `pom.xml` puts the `KafkaEmbedded` JUnit `@Rule` on the class path.
Refer to the [Spring for Apache Kafka Reference Manual](http://docs.spring.io/spring-kafka/reference/htmlsingle/#testing) for more information about this.
Notice how the `@BeforeClass` method sets up the Boot and binder properties to locate the servers.

See the test method for the details on interacting with Embedded Kafka.
The test method starts by sending a message to the input destination.
It then creates a consumer to consume from the output destination; gets the output message and asserts that it's an upper case version of the sent message.

## Building with Maven

Build the sample and run the test by executing:

`./mvnw clean package`

or run the test in your favorite IDE.