add test for implicit consumer binding

This commit is contained in:
Oleg Zhurakousky
2019-08-22 20:41:22 +02:00
parent 0ad15247f6
commit 6bf1714374

View File

@@ -121,6 +121,25 @@ public class ImplicitFunctionBindingTests {
}
}
@Test
public void testSimpleConsumerWithoutDefinitionProperty() {
System.clearProperty("spring.cloud.stream.function.definition");
try (ConfigurableApplicationContext context = new SpringApplicationBuilder(
TestChannelBinderConfiguration.getCompleteConfiguration(
SingleConsumerConfiguration.class))
.web(WebApplicationType.NONE)
.run("--spring.jmx.enabled=false")) {
InputDestination inputDestination = context.getBean(InputDestination.class);
Message<byte[]> inputMessage = MessageBuilder
.withPayload("Hello".getBytes()).build();
inputDestination.send(inputMessage);
assertThat(System.getProperty("consumer")).isEqualTo("Hello");
System.clearProperty("consumer");
}
}
@Test
public void testConsumer() {
try (ConfigurableApplicationContext context = new SpringApplicationBuilder(
@@ -192,12 +211,16 @@ public class ImplicitFunctionBindingTests {
return x;
};
}
}
@EnableAutoConfiguration
public static class SingleConsumerConfiguration {
@Bean
public Consumer<String> consumer() {
return value -> {
System.out.println(value);
System.setProperty("consumer", value);
};
}
}