Използвам клас Groovy MockFor, за да тествам нещо като това.
Имам AClass с public AClass aMethod()
, който трябва да върне някакъв екземпляр на AClass. (същото или не, няма значение.) В моя макет клас искам да върна точно същия прокси екземпляр за правилна и лесна проверка за проверка.
Но не мога да намеря начин да направя това.
MockFor mock = new MockFor(AClass)
mock.demand.aMethod { ... ->
log.info("aMethod was called!")
// Here I want to return same mock proxy instance!
return //<this???>
}
def instance = mock.proxyDelegateInstance()
instance = instance.aMethod(...) // Call to demanded method. In AClass aMethod returns AClass instance!
// so, I will be able to demand aMethod multiple times, and then ask
mock.verify(instance) // Will check, how many times method was called for same instance.
Мисля, че мога да задам делегат за затваряне и след това да го поискам, но не изглеждаше като добро решение.
Така че моля за съвет.
return mock.proxyDelegateInstance()
? - person tim_yates   schedule 21.11.2013