電話帳:
MyStreamClass mock = mock(MyStreamClass.class);
when(mock.streamMethod()).thenReturn(Stream.of("A", "B"));
System.out.println(""+mock.streamMethod().findFirst());
System.out.println(""+mock.streamMethod().findFirst());
この関数は、FindFirstの2回目の呼び出しはjava.lang.IllegalStateExceptionをスローします:ストリームがすでに時に操作またはクローズされています
マチェイコワルスキー:
試してみてくださいthenAnswer
代わりにthenReturn
:
Answer<Stream> answer = new Answer<Stream>() {
public Stream answer(InvocationOnMock invocation) throws Throwable {
return Stream.of("A", "B");
}
};
when(mock.streamMethod()).thenAnswer(answer);
今、新しいストリームへの各呼び出しのために作成されますstreamMethod
。
また、読み取り:
ここで私は上に書いた記事ですMockitoの動的留守番相補的であるかもしれません。