Вы слишком далеко зашли с этими тестами.Похоже, что ваш метод заключается в правильной настройке и отправке ответа (судя по кодам - наименование может быть лучше, например, какие транзакции это перечисление сейчас?).И это то, что должно быть проверено здесь.
Редактировать:
На второй взгляд кажется, что большая часть работы выполняется responseBuilder
- оставшийся код просто устанавливаетэто до.Итак, что вы действительно можете проверить здесь, так это то, предоставлены ли ему ожидаемые данные (это один или два теста) и, наконец, отправлен ли ответ (второй / третий тест).Обратите внимание, что проверка того, вызывается ли .build
, не является необходимой, так как его отсутствие может не пройти проверку отправки ответа.
Это означает, что вам нужно будет смоделировать и проверить ожидания в responseBuilder
(метод .add
)и response
(.send
).Тестовый формат ответа относится к responseBuilder
test, точно так же, как проверка правильности выбора транзакций относится к service
tests.
(Вы также можете проверить, что service
вызывается с правильным параметром какэто жестко закодировано, но это только если вы хотите быть очень осторожными)
В целом, я бы вычеркнул тесты № 1 и № 4 и сосредоточился бы на оставшихся.
И вЧтобы проверить эти ожидания, вам придется заглушить оставшиеся зависимости.Там нет реального способа обойти это.Вам нужно найти точку между решением, сколько кода вы хотите написать, чтобы протестировать одну строку кода (и стоит ли это того).