我想模拟JsonArray对象的迭代器功能。 JsonArray
是一个自定义的最终类,其迭代器函数返回一个Iterator<JsonElement>
。这是我尝试过的
JsonElement row = ["City1","Date1","Expense1"];
JsonArray jsonArray = row.getAsJsonArray();
final Iterator<JsonElement> iterator = jsonArray.iterator();
JsonElement entry = iterator.next();
if (entry == null || entry.isJsonNull()) {
return null;
}
我想以使条目变为null的方式模拟迭代器。 这是我尝试过的方法,但是当我调试时,我看到迭代器仍然可以正常工作,好像没有被模拟一样。
Iterator iterator = Mockito.mock(Iterator.class);
PowerMockito.when(iterator.next()).thenReturn(null);
答案 0 :(得分:1)
您要测试的方法能否以row
作为参数? (看起来应该如此)
然后,您可以仅使用[null]
来调用它,而不必嘲笑它。