Ну тоесть сервис кэша не может вернуть неверные данные. Это не его уровень ответственности. А сервис который обрабатывает какие-то значения не должен заниматься ошибками получения этих значений. Возвращаясь к первоначальном твоему сообщению - проблема множества моков это не проблема тестов, а твоего кода.
На сейчас же получается с твоей наркоманией ты тратишь уйму времени на написание тестов (описывать 2-3 мока на один сервис эт пипец), а как следствие того что ты параноидально тестишь все возможные варианты - у тебя хрупкие тесты. Получается ты очень много времени тратишь на тесты.
Да. Я трачу на тесты больше времени. Но это окупается меньшим количеством непредсказуемых ситуаций
На счёт похожести на репозиторий. Ну пусть там в сервисе будет спец алгоритм ранжирования входящий через интерфейс. И кеш для каких либо значений предгенерации или типа того. Вариантов можно придумать массы когда в сервис лезет 4-5 интерфейсов каждый из которых может иметь сайд эффекты при реализации. И если вы не хотите чтобы ваш сервис падал на каждый непонятный чих со стороны реализации интерфейсов вас просто необходимо предусматривать все ситуации.