나는 두 개의 클래스가 폐쇄에 의해 선택적 매개 변수와 메소드를 대체 :Grails는
class Foo {
String doSomething(String a = 'Not working') {
return a
}
}
을 그리고 테스트에서 '해봐요'를 대체하고 싶지만 직장 dosent
@Test
void testMethodIWannaTest() {
Foo.metaClass.doSomething = {String a -> return 'Working'}
assert new Foo().doSomething() == 'Working' //THIS TEST FAIL, return 'Not Working'
}
내가 제거하는 경우 선택적 매개 변수, 그것은 작동합니다.
누군가이 문제를 해결하는 방법을 알고 있습니까? 정말 SENS가되지 않습니다 테스트를 알고 *
, 그냥 내 지점 내가 잘못합니까 무엇
을 보여이야? 'mockFor'를 사용하지 않고 그것을 할 수 있습니까? 기본 매개 변수를 설정
는
를 사용하는 경우가 Groovy 2.0 GMock을 metaprogramming보다는 mocking을 사용하는 것을 권하고 싶습니다. 현재 GMock은 Groovy> = 2.0에서 작동하지 않습니다. –