lim*_*nal 3 android dagger dagger-2
我正在从 Dagger 2.0.2 迁移到 Dagger 2.12 并计划使用dagger.androidAPI。
我的问题是关于迁移测试代码。目前,我有一个AppModule和一个TestAppModule,它扩展了它并使用@Override注释覆盖了一些依赖项。下面是一个例子:
@Module
public class TestAppModule extends AppModule {
@Override
public UserDao provideUserDao() {
return mock(UserDao.class);
}
}
Run Code Online (Sandbox Code Playgroud)
现在使用 Dagger 2.12,如果我尝试覆盖 中的依赖项
TestAppModule,则会引发错误:error: @Provides methods may not be overridden in modules.
使用原样定义的其余依赖项在一段TestModule时间内覆盖和模拟某些依赖项的推荐方法AppModule是什么?
如果人们认为有必要,我可以发布我的 Dagger 设置的精简版本。
我最终通过简单地不注释TestAppModulewith来解决它@Module。这实现了部分模拟。
public class TestAppModule extends AppModule {
@Override
public UserDao provideUserDao() {
return mock(UserDao.class);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
573 次 |
| 最近记录: |