Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Duplicate
-
2.18.0
-
None
-
None
-
Unknown
Description
I have the following unit test which demonstrate the problem
@RunWith(CamelSpringBootRunner.class) @SpringBootTest @MockEndpointsAndSkip("direct:b") @DirtiesContext(classMode = ClassMode.AFTER_EACH_TEST_METHOD) public class MockTest { @Produce(uri = "direct:a") private ProducerTemplate producer; @EndpointInject(uri = "mock:end") private MockEndpoint end; @EndpointInject(uri = "mock:direct:b") private MockEndpoint directB; @Autowired private CamelContext context; @Configuration @EnableAutoConfiguration public static class Config extends SpringRouteBuilder { @Override public void configure() throws Exception { from("direct:a").to("direct:b"); from("direct:b").to("mock:end"); } } @Test public void testMock() throws InterruptedException { end.expectedMessageCount(0); directB.expectedBodiesReceived("hello"); producer.sendBody("hello"); MockEndpoint.assertIsSatisfied(context); } @Test public void testMock2() throws InterruptedException { end.expectedMessageCount(0); directB.expectedBodiesReceived("hello"); producer.sendBody("hello"); MockEndpoint.assertIsSatisfied(context); } }
testMock and testMock2 are exactly the same and if run individually, they pass. However if you run both, the second one will always fail. Running them both inside eclipse and from maven command line exhibit the same behaviour.
The error I get is
java.lang.AssertionError: mock://end Received message count. Expected: <0> but was: <1>
Which must mean that the skipping isn’t working. Here’s the tracer output to confirm
org.apache.camel.processor.interceptor.Tracer - ID-minhmac-local-51406-1470352938165-1-2 >>> (route3) from(direct://a) --> direct://b <<< Pattern:InOnly, Headers:{breadcrumbId=ID-minhmac-local-51406-1470352938165-1-1}, BodyType:String, Body:hello org.apache.camel.processor.interceptor.Tracer - ID-minhmac-local-51406-1470352938165-1-2 >>> (route4) direct://b --> mock://end <<< Pattern:InOnly, Headers:{breadcrumbId=ID-minhmac-local-51406-1470352938165-1-1}, BodyType:String, Body:hello
Attachments
Issue Links
- duplicates
-
CAMEL-10241 MockEndpointAndSkip and DirtiesContext not working
- Resolved