首页 > 解决方案 > Mockito anyListOf Pair 类

问题描述

A 类——有一个方法“doSomething”,它接受一个 Pair 列表

B 类——有一个内部调用 A 类方法的方法。

我正在尝试为 Class B 编写 Junit ,我需要验证 Mocked Class A 的 mentod 是用 Pair 类型调用的。

verify(a,times(1)).doSomething(Mockito.anyListOf(Pair.class))

我需要一种方法来指定类似的东西

verify(a,times(1)).doSomething(Mockito.anyListOf(Pair<CustomClass1,CustomClass2>.class))

标签: javajunitmockito

解决方案


Java 不会让一个类有两个具有相同擦除的方法;所以提供了doSomething(List)被调用,它将带有一个List<Pair<CustomClass1,CustomClass2>>.

因此,您应该能够简单地使用:

verify(a,times(1)).doSomething(Mockito.anyList());

或者,如果没有其他单参数重载doSomething

verify(a,times(1)).doSomething(Mockito.any());

推荐阅读