У меня есть этот метод для проверки юнитов. Я отправляю значения полей и внутри него создаю новую модель, а затем возвращаю эту модель через интерфейс.
public void validate(String unitNumber, Integer unitTypeId, String notes) {
if(!TextUtils.isEmpty(unitNumber)) {
Unit unit = new Unit();
unit.setUnitNumber(unitNumber);
unit.setFlatTypeId(unitTypeId);
unit.setNotes(notes);
view.displayUnitValid(unit);
} else {
view.displayUnitNotValid();
}
}
Теперь я хочу провести модульное тестирование этого метода со следующим кодом.
@Test public void shouldValidateSinceUnitNumberIsValid() {
// Given
String unitNumber = "1";
// When
presenter.validate(unitNumber, null, null);
// Then
Mockito.verify(view).displayUnitValid(new Unit());
}
Я получаю следующее сообщение об ошибке:
Argument(s) are different! Wanted:
view.displayUnitValid(
com.rwar.domain.customers.Unit@57cf54e1
);
-> at com.rwar.presentation.work_orders.AddUnitPresenterTest.shouldValidateSinceUnitNumberIsValid(AddUnitPresenterTest.java:73)
Очевидно, что существует проблема, поскольку я создаю новый экземпляр модуля здесь:
Mockito.verify(view).displayUnitValid(new Unit());
И внутри validate () метод Я создаю еще один экземпляр Unit.
Как я могу это исправить?