MockEndpoints с CamelSpringRunner и JavaConfig - PullRequest
0 голосов
/ 09 марта 2019

Это работает для меня, используя устаревший CamelSpringDelegatingTestContextLoader, который, я думаю, не следует использовать, потому что он дублирует работу CamelTestContextBootstrapper.Если я опущу CamelSpringDelegatingTestContextLoader, тест не сможет автоматически связать CamelContext (bean-компонент не найден, если я комментирую CamelContext, ввод будет нулевым), поэтому внедрение не будет работать.Но это рекомендуемый способ реализации тестирования (например, CamelSpringRunnerPlainTest).Моя верблюжья версия 2.21.2.CamelBootSpringRunner также будет работать, но я не хочу запускать тест с Spring Boot без необходимости.Также я не хотел бы расширять класс как SpringTestSupport.

    @RunWith(CamelSpringRunner.class)
@BootstrapWith(CamelTestContextBootstrapper.class)
@MockEndpoints
@DirtiesContext(
        classMode = DirtiesContext.ClassMode.AFTER_CLASS)
@ContextConfiguration(loader = CamelSpringDelegatingTestContextLoader.class,
    classes = MyTest.TestConfig.class)
public class MyTest {

    @Autowired
    protected CamelContext camelContext;

    @Produce(uri = "direct:in")
    private ProducerTemplate input;
...
@Configuration
static class TestConfig extends CamelConfiguration {
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...