Как я могу внедрить фиктивные объекты в шпионский экземпляр в Споке?
Пример:
TestClass
class Service {
@AutoWired
private Util util;
public void testMethod(int a, int b) {
int c = sum(a,b);
util.format(c);
}
private int sum(int a, int b) {
......
}
}
Спок:
def "testMethod with valid inputs"() {
given:
def serviceSpy = Spy(Service)
//spy.util = Mock(Util) I can't do this
spy.sum(_,_) >> 2
......
}
Итак, я сомневаюсь, как я могу внедрить фиктивный объект в шпионский экземпляр?
Я пытался шпионить за существующим экземпляром, но он не заглушает метод, который находится в тестовом классе.
Может ли кто-нибудь подсказать мне, что я могу здесь сделать?Или я могу решить это легко, используя Junit (Mockito)?