【发布时间】:2018-11-22 12:39:43
【问题描述】:
如何防止 Guice 在测试中配置此模块?
class SnsModule extends AbstractModule {
override def configure(): Unit = {
val snsClient: AmazonSNSAsyncClient = AmazonSNSAsyncClientBuilder.standard().build().asInstanceOf[AmazonSNSAsyncClient]
bind(classOf[AmazonSNSAsyncClient]).toInstance(snsClient)
}
}
我尝试覆盖模块:
private val snsModule = new AbstractModule{
override def configure(): Unit = {
val snsClient: AmazonSNSAsyncClient = mock[AmazonSNSAsyncClient]
bind(classOf[AmazonSNSAsyncClient]).toInstance(snsClient)
}
}
override implicit lazy val app: Application = GuiceApplicationBuilder().overrides(new TestJwkModule(), snsModule).build()
但是SnsModule 中的configure() 仍然被调用,这是一个问题,因为在我的测试环境中,AmazonSNSAsyncClientBuilder 抛出了一个异常。
【问题讨论】:
标签: playframework guice