Как смоделировать метод итератора JsonArray, используя mockito и powermockito - PullRequest
0 голосов
/ 03 мая 2019

Я хочу смоделировать функцию итератора объекта 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;
}

Я хочу смоделировать итератор так, чтобы запись стала нулевой.вот что я попробовал, но когда я отлаживаюсь, я вижу, что итератор все еще работает, как будто не подвергается насмешкам.

Iterator iterator = Mockito.mock(Iterator.class);
PowerMockito.when(iterator.next()).thenReturn(null);

1 Ответ

1 голос
/ 03 мая 2019

Может ли тестируемый метод принять row в качестве аргумента?(похоже, так и должно быть)

Тогда вы можете просто позвонить по номеру [null] вместо насмешки.

...