У меня есть два класса:
class Foo {
String doSomething(String a, String b) {
return 'Not Working'
}
}
class Bar {
String methodIWannaTest() {
return new Foo().doSomething('val1', 'val2')
}
}
И я хочу заменить 'doSomething' в тесте, но это не работает
class BarTests {
@Test
void testMethodIWannaTest() {
Foo.metaClass.doSomething {String a, String b -> return 'Working'}
assert new Bar().methodIWannaTest() == 'Working' //THIS TEST FAIL, return 'Not Working'
}
}
*Я знаю, что тест на самом деле не имеет смысла, он просто показывает мою точку зрения
Что я делаю неправильно? Можно ли это сделать без использования mockFor?