特定の文字列以外の文字列に一致するMockitoを使用してマッチャーを作成するにはどうすればよいですか?
いくつかのハムクレストマッチャーを使用して他のマッチャーを無効にして結合しようとしましたが、ハムクレストマッチャーはすべてタイプMatcher<T>
の値を返し、Mockitoマッチャーではうまく機能しません。
私が使用したソリューション:
argThat(not("ExceptionString"))
argThat
がMockitoマッチャーである場合、
そしてnot
はハムクレストマッチャーです
Mockito
を使用すると、 AdditionalMatchers および ArgumentMatchers も使用できることを指摘してください。
import static org.mockito.AdditionalMatchers.not;
import static org.mockito.ArgumentMatchers.eq;
//anything but not "ejb"
mock.someMethod(not(eq("ejb")));
そのドキュメントによると:
論理and()、not()、または()マッチャーの使用例:
//「ejb」以外のもの
mock.someMethod(not(eq( "ejb")));
この他の情報がもっとあります SO質問
それが役に立てば幸い