使用Mockito,我想验证()在其参数列表中使用byte[]的方法调用,但我不知道如何编写这个。
myMethod( byte[] )
我只是想要一些像anyByteArray(),如何做到与Mockito ?
使用Mockito,我想验证()在其参数列表中使用byte[]的方法调用,但我不知道如何编写这个。
myMethod( byte[] )
我只是想要一些像anyByteArray(),如何做到与Mockito ?
当前回答
试试这个:
AdditionalMatchers.aryEq(array);
其他回答
你总是可以使用argThat创建一个自定义的Matcher
Mockito.verify(yourMockHere).methodCallToBeVerifiedOnYourMockHere(ArgumentMatchers.argThat(new ArgumentMatcher<Object>() {
@Override
public boolean matches(Object argument) {
YourTypeHere[] yourArray = (YourTypeHere[]) argument;
// Do whatever you like, here is an example:
if (!yourArray[0].getStringValue().equals("first_arr_val")) {
return false;
}
return true;
}
}));
我将尝试any(byte[].class)
试试这个:
AdditionalMatchers.aryEq(array);
我宁愿使用匹配器。<byte[]>any()。这对我很管用。
当参数也是数组时,也可以使用Mockito.any()。 我是这样用的:
verify(myMock, times(0)).setContents(any(), any());