私はmockito引数マッチャで最も簡単なテストなぜ私のArgumentMatcherは呼び出されませんか?
を実行しよう:私のマッチャーが呼び出されることはありませんが
import org.mockito.ArgumentMatcher;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static org.hamcrest.Matchers.*;
import static org.junit.Assert.*;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyObject;
import static org.mockito.Matchers.anyString;
import static org.mockito.Matchers.argThat;
import static org.mockito.Mockito.*;
@Test
public void test123() throws Exception {
MyClient cofmanClient = mock(MyClient.class);
cofmanClient.holy("zigzag");
MyClient verify = verify(cofmanClient);
verify.holy(argThat(new MyMatcher()));
}
private static class MyClient {
public void holy(String s) {
System.out.println("Called with: " + s);
}
}
private static class MyMatcher extends ArgumentMatcher<String> {
@Override
public boolean matches(Object argument) {
System.out.println("Deadly cow! s=" + argument.getClass().getName());
return argument.getClass() == Class.class;
}
}
。
何が欠けていますか?
周囲の 'argThat()'メソッド呼び出しを削除するとどうなりますか? –
MyClientがverify = verify(cofmanClient)とは何ですか?行う? – kuhajeyan
@TimothyTruckle 'エラー:(158,21)java:互換性のない型:mytype.MyMatcherをjava.lang.Stringに変換できません。 ' –