我有一个CustomApplicationLoader扩展了GuiceApplicationLoader,我在其中加载环境特定的conf文件。当我在ApplicationSpec中运行测试时,缺少从特定于环境的conf文件中获取的值,这可能意味着尚未执行我的CustomApplicationLoader。
知道如何在测试过程中将CustomApplicationLoader传递给FakeApplication或任何其他方法来从conf文件中读取值吗?甚至不应该开箱即用?
最佳答案
因此,我发现可以通过将自定义GuiceApplicationLoader作为参数传递给WithApplicationLoader来注入它,如下所示:
@RunWith(classOf[JUnitRunner])
class ApplicationSpec extends Specification {
"My component" should {
"load environment specific conf values loaded in by CustomApplicationLoader" in new WithApplicationLoader(new CustomApplicationLoader) {
...
}
}
}