我有这个类,它只是将 http 调用委托给第三方库:
public class HttpService
{
Gson gson = new Gson();
public <T> T fromJson(String json, Class<T> classOfT)
{
return gson.fromJson(json, classOfT);
}
}
我正在尝试存根 fromJson 方法,如下所示:
ExampleObject exampleObject = new ExampleObject("value1", "value2");
HttpService _testHttpService = Mockito.mock(HttpService.class);
Mockito.when(_testHttpService.fromJson(Matchers.anyString(), Matchers.eq(ExampleObject.class))).thenReturn(exampleObject);
现在,当我像这样从模拟的 HttpService 对象调用 fromJson 方法时......
ExampleObject obj = _testhttpService.fromJson("blahblahblah" , ExampleObject.class);
... null 值分配给 obj。为什么是这样?我试图让 exampleObject 返回。我尝试了几种不同的 Matcher 方法将类参数发送到模拟构造函数(即除了 Matchers.eq(),我还尝试了 Matchers.same() 和其他一些方法)。任何见解将不胜感激!