2016-05-07 2 views
0

У меня довольно сложный тест, где я решил пойти с приближением частичного ступени тестируемого класса. в моем тесте у меня есть что-то вроде этого:Проблемы с stubbing spy'ed object в scala

val srv = new Service() 
val srvSpy = spy(srv) 
doReturn(now).when(srvSpy).getRunDateInTimeZone(futureChecklist) 
doReturn("boo").when(srvSpy).interpolateChecklistName("name", now) 
val returnTuple = (createdChlRev, createdChl) 
doReturn(returnTuple).when(srvSpy).create(fChlCreatorId, 
     fChlCreatorEmail, 
     "username", 
     true, 
     templateId, 
     "boo", 
     optDueDate)(connection) 

val (chlRev, chl) = srv.createFromFutureChecklist(futureChecklist)(connection) 

В приведенном выше коде, первые два погасил методы работы, как и ожидалось. Тем не менее, последний выдает ошибку:

[error] Tuple2 cannot be returned by create$default$8() [error]
create$default$8() should return JsObject [error] *** [error] If you're unsure why you're getting above error read on. [error] Due to the nature of the syntax above problem might occur because: [error] 1. This exception might occur in wrongly written multi-threaded tests. [error] Please refer to Mockito FAQ on limitations of concurrency testing. [error] 2. A spy is stubbed using when(spy.foo()).then() syntax. It is safer to stub spies - [error]
- with doReturn|Throw() family of methods. More in javadocs for Mockito.spy() method.

Я пытался кучу разных приближались из гася и все еще получаю ту же ошибку. На данный момент я понятия не имею, где искать. Что я делаю неправильно?

Любой совет будет полезен.

Благодаря

ответ

0

К сожалению, это была моя собственная немой ошибка. Я занимался шпионом класса, но назвал его оригинальным: (

Thanks,