Hi,
sure...

*@RunWith(CamelSpringBootRunner.class)*
*@UseAdviceWith*
@ActiveProfiles("test")
@DirtiesContext
public class MyRouteBuilderTest extends AbstractRouteBuilderTest {

    @Autowired
    private MyRouteBuilder routeBuilder;

    @Test
    public void testMyRoute() throws Exception {

        *////* *camelContext is here already started !!!!!! :( //////*
*        //// therefore the following customization does not take place ///*

camelContext.getRouteDefinition(routeBuilder.getMainRouteId()).adviceWith(camelContext,
new AdviceWithRouteBuilder() {
            @Override
            public void configure() throws Exception {
                interceptSendToEndpoint("direct:my-direct-endpoint")
                        .skipSendToOriginalEndpoint()
                        .to("mock:advised");
            }
        });

        // Because of @UseAdviceWith, the context must be started manually
        camelContext.start();
        .............
        .............
    }
}

As mentioned before, the CamelSpringBootExecutionListener in 2.20.0 starts
already the camelContext which was earlier not the case:

public class CamelSpringBootExecutionListener extends
AbstractTestExecutionListener {

    @Override
    public void prepareTestInstance(TestContext testContext) throws Exception {

        .........

        SpringCamelContext.setNoStart(false);
        CamelContext camelContext = context.getBean(CamelContext.class);

        // after our customizations we should start the CamelContext
        camelContext.start();

    }

    ...........

}


2017-10-27 9:05 GMT+02:00 Claus Ibsen <[email protected]>:

> Hi
>
> Can you post sample code, and have you added the @UseAdviceWith annotation
>
> On Tue, Oct 24, 2017 at 2:58 PM, Boris Stanojević
> <[email protected]> wrote:
> > When using CamelSpringBootRunner (camel 2.20) for my tests I'm not able
> to
> > "adviceWith" my Routes any more since CamelContext is already started by
> "
> > CamelSpringBootExecutionListener" and therefore adviceWith doesn't take
> > place.
> >
> > Any suggestions?
> >
> > Many thanks!!
>
>
>
> --
> Claus Ibsen
> -----------------
> http://davsclaus.com @davsclaus
> Camel in Action 2: https://www.manning.com/ibsen2
>

Reply via email to