如何使用mockito捕获特定类型的列表

问题:

有没有办法使用mockitos ArgumentCaptore捕获特定类型的列表。这不行:

ArgumentCaptor<ArrayList<SomeType>> argument = ArgumentCaptor.forClass(ArrayList.class);

回答:

使用@Captor annotation可以避免嵌套的泛型问题

@RunWith(MockitoJUnitRunner.class)
public class Test{

    @Mock
    private Service service;

    @Captor
    private ArgumentCaptor<ArrayList<SomeType>> captor;

    @Test 
    public void shouldDoStuffWithListValues() {
        //...
        verify(service).doStuff(captor.capture()));
    }
}

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: How to capture a list of specific type with mockito

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

62 − 55 =