我有以下单元测试类:
@Rule
public DaggerMockRule<RouteRepositoryComponent> daggerMockRule = new DaggerMockRule<>(RouteRepositoryComponent.class, new RouteRepositoryModule())
.addComponentDependency(ApplicationComponent.class, new ApplicationModule(RuntimeEnvironment.application));
@Mock
@Local
RouteDataSource mRouteLocalDataSource;
@Mock
@Remote
RouteDataSource mRouteRemoteDataSource;
@Mock
RouteDataSource.LoadRouteCallback mLoadRouteCallback;
@InjectFromComponent
RouteRepository mRouteRepository;当mRouteLocalDataSource在mRouteRemoteDataSource之前声明时,其中一个测试方法失败。但是,当mRouteRemoteDataSource在mRouteLocalDataSource之前声明时,同样的测试方法也会通过。
DaggerMock测试类中模拟对象的声明顺序有什么影响?
发布于 2017-01-06 21:13:10
这是一个DaggerMock错误!我已经提交了一个修复程序(我很快就会发布一个新版本),您可以在gradle配置中使用提交a6d5925d76作为DaggerModk版本来修复这个问题。
谢谢你的报告
https://stackoverflow.com/questions/41486936
复制相似问题