2012-11-15 7 views
0

스칼라의 테스트에서 모의 ​​기대를 설정하려고합니다. 모의 객체는 Hibernate Query 객체에있다. 방법은 다음과 같습니다.스칼라에서 unparameterised Java 목록과 일치하는 유형

List list() throws HibernateException; 

목록에 매개 변수가 없습니다.

내가 이것을 조롱하려고하면 유형을 올바르게 얻을 수 없습니다. 예 :

when(query.list).thenReturn(new ArrayList) 
when(query.list).thenReturn(new ArrayList[Any]) 
// and other variations 

보고서 :

overloaded method value thenReturn with alternatives: 
(java.util.List[?0],<repeated...>[java.util.List[?0]])org.mockito.stubbing.OngoingStubbing[java.util.List[?0]] <and> 
(java.util.List[?0])org.mockito.stubbing.OngoingStubbing[java.util.List[?0]] 
cannot be applied to (java.util.ArrayList[java.lang.Object]) 

무엇 내 스칼라 모의 기대가 같이해야합니까?

+1

를 메모리에서 사용자가 작성해야합니다.'때 (query.list.asInstanceOf [ArrayList를 [모든]]) thenReturn (새로운 ArrayList를 [모든])' 하지만 지금은 확인할 수 없어서 대답으로 제안하지는 않습니다. – Eric

+0

그것은 작동합니다. 제안해라! – Synesso

답변

2

당신은 asInstanceOf 캐스트를 사용하여 작성할 수 있습니다

when(query.list.asInstanceOf[ArrayList[Any]]).thenReturn(new ArrayList[Any]) 
관련 문제