Здравствуйте, Pauel, Вы писали:
Б>>А вот ваш подход не понял.
Б>>Если для каждого будет своя лямбда, то что произойдет, если добавится четвертый вызов get? Придется тесты переписывать?
Б>>А если код порефакторят и изменят вызовы?
P>То же самое, что и у вас. Добавили 4й вызов — ваши моки, коих по количеству тестов, отвалятся.
Тебе уже раз тысячу написали, что НЕ НАДО ПИСАТЬ МОКИ по количеству. Моки (стабы?) пишутся по параметрам и условиям вызова.
when(repo.get(v1)).thenReturn(r1); when(repo.get(v2)).thenReturn(r2);. Такой код
OnCall(3) — это дичь полная. Так, мне кажется, писали может быть на заре изобретения фреймворков тестирования, лет 20-30 назад.
P>Все что можно сделать — свести к минимуму код тестов. Я это сделал через лямбды.
Любопытно, а что если "repo.get" дёргается в цикле? Заведёшь массив лямд?!