我想在部署时用spring上下文初始化一个verticle实例(都是基于@Configurations等的注释),然后能够在集成测试中测试它,
我的垂直:
public class MyServiceVerticle extends AbstractVerticle {
final VerticleStringContextLoader verticleStringContextLoader = new VerticleStringContextLoader(
"com.my.config",
MyConfig.class
);
@Override
public void start(Future<Void> startFuture) {
verticleStringContextLoader.connectWithVertx(vertx);
verticleStringContextLoader.onStart(startFuture);
}
@Override
public void stop() {
verticleStringContextLoader.onStop();
}
}
在
VerticleStringContextLoader
我装的是弹簧豆,它本身就装了竖轴。
这样地:
sharedContext = new AnnotationConfigApplicationContext();
sharedContext.register(VertxConfig.class);
...
sharedContext.scan(componentScanPackages);
sharedContext.refresh();
在测试中,
我想控制spring上下文,以便能够访问已加载的bean。
在集成测试中:
当我展开垂直时:
@RunWith(VertxUnitRunner.class)
....
vertx.deployVerticle(
MyServiceVerticle.class.getName(),
deploymentOptions,
testContext.asyncAssertSuccess( id -> {
...
})
);
问题是。。我想我就是这样:
通过部署垂直体并初始化spring的测试,我可以访问/引用加载的spring bean
?