我有一个方法:
void putObject(<T extends BaseEntity> param)
在我模拟这个方法的地方进行一些测试,但我想知道如何验证使用特定类的参数调用该方法?尝试通过以下方式做到这一点:
verify(foo).putObject((SomeClass)anyObject());
------
verify(foo).putObject(any(SomeClass.class));
------
ArgumentCaptor<SomeClass> parameter = ArgumentCaptor
.forClass(SomeClass.class);
verify(foo).putObject(parametr);
仅适用于第二个变体any()
,但它没有t check class of
参数`。那么是否可以验证该方法获取特定类的任何对象?
用户匹配器文档 https://static.javadoc.io/org.mockito/mockito-core/1.10.19/org/mockito/Matchers.html isA() method.
public static <T> T isA(java.lang.Class<T> clazz)
那会解决你的问题。
verify(foo).putObject(isA(SomeClass.class));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)