DaggerMock 正在生成意外实例
DaggerMock is generating unexpected instances
我有以下单元测试class:
@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 class 测试中模拟对象的声明顺序有什么影响?
这是一个 DaggerMock 错误!我已经提交了一个修复程序(我会很快发布一个新版本),你可以在你的 gradle 配置中使用提交 a6d5925d76 作为 DaggerModk 版本来解决这个问题。
感谢您的报告
我有以下单元测试class:
@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 class 测试中模拟对象的声明顺序有什么影响?
这是一个 DaggerMock 错误!我已经提交了一个修复程序(我会很快发布一个新版本),你可以在你的 gradle 配置中使用提交 a6d5925d76 作为 DaggerModk 版本来解决这个问题。
感谢您的报告