0

我试图在 Scala 的测试中设置一个模拟期望。模拟在 Hibernate Query 对象上。它有以下方法:

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])

我的 Scala 模拟期望应该是什么样的?

4

1 回答 1

2

您可以使用asInstanceOf演员表并编写:

when(query.list.asInstanceOf[ArrayList[Any]]).thenReturn(new ArrayList[Any])
于 2012-11-19T03:28:55.533 回答