Хорошо, это хороший вопрос, кстати. Прежде всего, вы также должны издеваться над моделью.
Второе: устроить что-нибудь: например, чтобы model.getCityList()
вернул ноль.
После этого вы можете проверить с помощью оператора mockitos verify
. Пример:
when(model.getCityList()).thenReturn(null);
citiesPresenter.getCityList();
verify(view).addCitiesToList(null);
Другой случай может быть таким же, но с пустым списком:
List<City> citiesList = new ArrayList<>();
when(model.getCityList()).thenReturn(citiesList );
citiesPresenter.getCityList();
verify(view).addCitiesToList(citiesList);
И еще один может быть таким же, с поддельным списком, который вы можете создать самостоятельно, просто чтобы проверить его:
List<City> citiesList = new ArrayList<>();
list.add(City("name", "something else", "i don't know what atributes you have"));
when(model.getCityList()).thenReturn(citiesList );
citiesPresenter.getCityList();
verify(view).addCitiesToList(citiesList);
Надеюсь, я помог.
Дополнительная информация: При модульном тестировании у вас в голове должно быть 3 основных шага: Сначала вы организуете: Итак, вы создаете свой собственный сценарий. Например, что если список пуст.
Второе: вы действуете: на этом этапе вы тестируете нужный метод.
Третье: Утвердить: здесь вы проверяете или утверждаете, что ваши ожидания совпадают с данным кодом.