先日書いた、
JUnit mockito の return を遅らせたい(時間を掛けたい) - Oboe吹きプログラマの黙示録
よく考えたら thenAnswer は、lambda で書けましたね。。
Mockito.when(foo.getAgent(Mockito.contains("a"))).thenAnswer(new Answer<String>() { @Override public String answer(InvocationOnMock invocation){ System.out.println("invocation.getArgument(0) = "+invocation.getArgument(0)); return "A"; } });
というのを、
Mockito.when(foo.getAgent(Mockito.contains("a"))).thenAnswer(i->{ System.out.println("i.getArgument(0) = "+i.getArgument(0)); return "A"; });
下のようにここまで省略すると逆に意味がなく、
Mockito.when(foo.getAgent(Mockito.contains("a"))).thenAnswer(i->"A");
{ }で書いた方が if 制御文などを差し込める。