在我的视图中我有一个函数,它从演示者调用我的对象,我编写了一个单元测试,它检查该函数中到达对象的类型,但是如何检查到达对象中的项目(MyModel)。
例如,我想检查我对象中的列表是否有2个项目?
模拟视图类中的
final Action1<MyModel> myAction = mock(Action1.class);
@Override
public Func1<Observable<MyModel>, Subscription> invalidAppWidgetIdWidgetModal() {
return RxUi.ui(myAction, Schedulers.immediate());
}
测试方法
verify(mViewMock.myAction()).call(any(MyModel.class));
答案 0 :(得分:0)
我找到了解决方案,需要使用 ArgumentCaptor
ArgumentCaptor<MyModel> viewModelCapture = ArgumentCaptor.forClass(MyModel.class);
verify(mViewMock. myAction()).call(viewModelCapture.capture());
assertThat(viewModelCapture.getValue().getListData().size(), is(2));
答案 1 :(得分:-1)
验证(mViewMock.myAction())。call(any(MyModel.class).getListData()。size(),is(2));