对于我的测试,我需要模拟我的光标的 hasNext() 方法。但是,要完全测试我的代码,我需要 250 次迭代才能发送到 bulkRequest。因此,我最后需要 250 x true 和 1 x false。我创建了一个布尔数组,里面有 250 个真和 1 个假我得到了什么@Mockprivate Cursor<Record> cursor;public void myTest(){ when(cursor.hasNext()).thenReturn(true, false);}但现在我需要 250 个光标条件,所以我创建了一个布尔数组,但显然它无法编译final boolean[] cursorsResponses = fillCursors();when(cursor.hasNext()).thenReturn(cursorsResponses);
1 回答
慕码人8056858
TA贡献1803条经验 获得超6个赞
所以在你的情况下:
when(cursor.hasNext()).thenAnswer(new Answer() {
private int count = 0;
public Object answer(InvocationOnMock invocation) {
return (count++ < 250);
}
});
添加回答
举报
0/150
提交
取消