63 lines
2.3 KiB
Java
63 lines
2.3 KiB
Java
|
package dynamicrouter;
|
||
|
|
||
|
import com.baeldung.dynamicrouter.DynamicRouterRoute;
|
||
|
import org.apache.camel.RoutesBuilder;
|
||
|
import org.apache.camel.component.mock.MockEndpoint;
|
||
|
import org.apache.camel.test.junit5.CamelTestSupport;
|
||
|
import org.junit.jupiter.api.Test;
|
||
|
|
||
|
public class DynamicRouterRouteUnitTest extends CamelTestSupport {
|
||
|
|
||
|
@Override
|
||
|
protected RoutesBuilder createRouteBuilder() {
|
||
|
return new DynamicRouterRoute();
|
||
|
}
|
||
|
|
||
|
@Test
|
||
|
void givenDynamicRouter_whenMockEndpointExpectedMessageCountOneAndMockAsMessageBody_thenMessageSentToDynamicRouter() throws InterruptedException {
|
||
|
|
||
|
MockEndpoint mockDynamicEndpoint = getMockEndpoint("mock:dynamicRouter");
|
||
|
mockDynamicEndpoint.expectedMessageCount(1);
|
||
|
|
||
|
template.send("direct:dynamicRouter", exchange -> exchange.getIn()
|
||
|
.setBody("mock"));
|
||
|
context.start();
|
||
|
MockEndpoint.assertIsSatisfied(context);
|
||
|
}
|
||
|
|
||
|
@Test
|
||
|
void givenDynamicRouter_whenMockEndpointExpectedMessageCountOneAndDirectAsMessageBody_thenMessageSentToDynamicRouter() throws InterruptedException {
|
||
|
|
||
|
MockEndpoint mockDynamicEndpoint = context.getEndpoint("mock:directDynamicRouter", MockEndpoint.class);
|
||
|
mockDynamicEndpoint.expectedMessageCount(1);
|
||
|
|
||
|
template.send("direct:dynamicRouter", exchange -> exchange.getIn()
|
||
|
.setBody("direct"));
|
||
|
|
||
|
MockEndpoint.assertIsSatisfied(context);
|
||
|
}
|
||
|
|
||
|
@Test
|
||
|
void givenDynamicRouter_whenMockEndpointExpectedMessageCountOneAndSedaAsMessageBody_thenMessageSentToDynamicRouter() throws InterruptedException {
|
||
|
|
||
|
MockEndpoint mockDynamicEndpoint = context.getEndpoint("mock:sedaDynamicRouter", MockEndpoint.class);
|
||
|
mockDynamicEndpoint.expectedMessageCount(1);
|
||
|
|
||
|
template.send("direct:dynamicRouter", exchange -> exchange.getIn()
|
||
|
.setBody("seda"));
|
||
|
|
||
|
MockEndpoint.assertIsSatisfied(context);
|
||
|
}
|
||
|
|
||
|
@Test
|
||
|
void givenDynamicRouter_whenMockEndpointExpectedMessageCountOneAndBookAsMessageBody_thenMessageSentToDynamicRouter() throws InterruptedException {
|
||
|
|
||
|
MockEndpoint mockDynamicEndpoint = getMockEndpoint("mock:bookDynamicRouter");
|
||
|
mockDynamicEndpoint.expectedMessageCount(1);
|
||
|
|
||
|
template.send("direct:dynamicRouter", exchange -> exchange.getIn()
|
||
|
.setBody("book"));
|
||
|
MockEndpoint.assertIsSatisfied(context);
|
||
|
}
|
||
|
|
||
|
}
|