这里是Apache的骆驼航线:阿帕奇骆驼测试。删除RoutePolicy
ZooKeeperRoutePolicy routePolicy = new ZooKeeperRoutePolicy("zookeeper:localhost:2181/fuse-example/routePolicy", 1);
from("file:camelInpit").routeId("systemARoute")
.routePolicy(routePolicy)
.log(LoggingLevel.ERROR, "Starting route")
[...]
我想删除routePolicy在我的测试,因为在测试环境中没有ZooKeeper的,但因为它似乎
context.getRouteDefinition("systemARoute").adviceWith(context, new AdviceWithRouteBuilder() {
@Override
public void configure() throws Exception {
replaceFromWith("direct:aaa");
weaveByType(RouteDefinition.class).selectIndex(1).remove();
}
});
这是不容易weaveById("policy")
并设置编号routePolicy(...).id("policy")
没有帮助。
如何在测试时动态删除RoutePolicies
?
我正在使用'RouteBuilder'。是否可以将测试参数传递给RouteBuilder? –
对不起,我不完全明白你的意思。 – soilworker
据我所知,'prodEnvironmentExpression'应该是一些配置参数,它在测试开始时自动启用。我如何将测试参数传递到路由以使此表达式评估为true? –