Учитывая класс:
public class Foo {
@NotNull
@Valid
private Bar bar;
// plus getter/setter
}
Предположим, я хочу проверить, что после установки поля bar
класс теперь действителен.
В моем тесте я используя Mockito для получения поддельного экземпляра Bar
. Я хочу, чтобы этот mockBar
был действительным, и мне не приходилось беспокоиться о конкретных проверках полей, которые может содержать Bar
.
Есть ли способ Mockito сделать mockBar
пройти проверку? Вот как я вызываю валидацию в своем тесте:
Validator validator = Validation.buildDefaultValidatorFactory().getValidator();
assertTrue(new ArrayList<>(validator.validate(foo)).isEmpty());
javax.validation.Validator
будет рекурсивно проверять все поля foo, поэтому в какой-то момент валидатор что-то сделает с mockBar
. Что мне нужно высмеять, чтобы вернуть его как действительный?