私は、この試合を否定するので、サイズが2でない場合に一致し、MockitoのArgumentMatcherを否定する方法は?
Mockito.doReturn(false).when(mock).addAll(Mockito.argThat(AdditionalMatchers.not(new IsListOf2Elements())));
したい。しかし、これは正しくない、
private class IsListOf2Elements implements ArgumentMatcher<List<String>>{
@Override
public boolean matches(List<String> argument) {
return ((List<String>)argument).size()==2;
}
}
をArgumentMatcher
を作成しました。私はあなたがAdditionalMatchers.not
メソッドのパラメータとしてカスタム照合を使用することができないことであるように思わ
org.mockito.exceptions.misusing.InvalidUseOfMatchersException:
No matchers found for additional matcher Not(?)
-> at my.test.own.Mockito_aTest.test4e(Mockito_aTest.java:136)
いいえ、これは動作しません。 – ericj
奇妙な、それは私のためにうまくいった。たぶんバージョンの問題、私Mockitoのバージョン(1.9.5)でArgumentMatcherは抽象クラスではなく、あなたのOPのようにインターフェースですので。あなたはどのバージョンを使用していますか? – troig
私はそれを解決しました。 ; ' – ericj