Hi I created a ticket https://issues.apache.org/jira/browse/CAMEL-22396
However we may be able to see if we can correct this and make both kind of interceptors work together as previously (appears to be) but with a deterministic functionality that works going forward. Thanks for reporting. On Mon, Sep 1, 2025 at 10:15 AM Claus Ibsen <claus.ib...@gmail.com> wrote: > Hi > > This is because you use BOTH @MockEndpoints("*") and > interceptSendToEndpoint in your routes - then you end up with that dual > mocking that causes problems. > The old code was appearing to working but there are problems and going > forward this will not be supported. > We will let Camel throw a failure when it detects this dual mocking > (@MockEndpoints is a special kind of interceptSendToEndpoint). > > > > On Sun, Aug 31, 2025 at 7:33 PM <alla...@post8.tele.dk.invalid> wrote: > >> >> Hi Camel Support >> >> All endpoints are not always mocked with Camel 4.14.0. >> The problem did start in Camel 3.22.2. The attached JUnit test did work >> on versions before 3.22.2 >> >> If you write a JUnit test using: >> >> @CamelSpringBootTest >> @ShutdownTimeout(5) >> @SpringBootTest >> @ExtendWith(SpringExtension.class) >> @MockEndpoints("*") >> @Transactional >> @UseAdviceWith >> >> containing some advices and a custom RouteBuilder having an >> interceptSendToEndpoint. >> >> Something like this: >> >> >> public abstract class BaseRoute extends RouteBuilder { >> >> public BaseRoute() { >> this.interceptSendToEndpoint("*").process((exchange) -> >> System.out.println("Intercept send to")); >> } >> >> } >> >> then MockEndpoint.assertIsSatisfied(context)fails most of the time – >> occasionally it succeeds. >> >> The reason is, that alle the endpoints are not mocked. >> >> The problem might be related to the changes in AbstractCamelContext >> between version 3.22.2 and 3.22.1: >> >> @Override >> public void registerEndpointCallback(EndpointStrategy strategy) { >> if (!endpointStrategies.contains(strategy)) { >> // let it be invoked for already registered endpoints so it can >> // catch-up. >> endpointStrategies.add(strategy); >> >> has been changed to: >> >> @Override >> public void registerEndpointCallback(EndpointStrategy strategy) { >> if (endpointStrategies.add(strategy)) { >> // let it be invoked for already registered endpoints so it can >> // catch-up. >> >> >> I have attached the files BaseRoute.java, MyRoute.java and >> CamelAdviceMockTest.java. >> It should be possible to reproduce the problem with these files. >> >> The test works with Camel version 3.10.0 The test fails with Camel >> version 4.14.0 >> >> >> >> Best regards, >> >> Allan Petersen > > > > -- > Claus Ibsen > -- Claus Ibsen