我无法模拟Option类。
我的伪代码是:
PowerMockito.when(stream.findAny()).thenReturn("Mock Of Optional class");
但每次我运行此代码时 - 我都会收到Optional.empty
。
我正在使用1.5版本的PowerMock
答案 0 :(得分:2)
你无法模拟mockito版本1中的最终类,而Optional是最终类。
public final class Optional<T> {
在mockito的第2版中,你可以这样做。
答案 1 :(得分:2)
无需模拟Future
和Optional
等原始类。只需将要返回的模拟数据包装在真实的Optional
:
MyData myData = Mockito.mock(MyData.class)
when(repository.getData()).thenReturn(Optional.of(myData));
嘲笑缺席:
when(repository.getData()).thenReturn(Optional.<MyData>empty());