[英]How to mock date in mockito?
这是我的情景
public int foo(int a) {
return new Bar().bar(a, new Date());
}
My test:
Bar barObj = mock(Bar.class)
when(barObj.bar(10, ??)).thenReturn(10)
我尝试插入任何(),anyObject()等。任何想法插入什么?
但是我一直得到例外:
.mockito.exceptions.misusing.InvalidUseOfMatchersException:
Invalid use of argument matchers!
3 matchers expected, 1 recorded:
This exception may occur if matchers are combined with raw values:
//incorrect:
someMethod(anyObject(), "raw String");
When using matchers, all arguments have to be provided by matchers.
For example:
//correct:
someMethod(anyObject(), eq("String by matcher"));
For more info see javadoc for Matchers class.
我们不使用powermocks。
你在那里传递原始值(如已经提到的错误)。 使用matcher代替:
import static org.mockito.Mockito.*;
...
when(barObj.bar(eq(10), any(Date.class))
.thenReturn(10)
如错误消息所示:
使用匹配器时,所有参数都必须由匹配器提供。
Bar bar = mock(Bar.class)
when(bar.bar(eq(10), anyObject())).thenReturn(10)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.