4

我一直在关注这个博客条目,它展示了如何使用 Mockito 和 Retrofit 模拟请求。问题是我同时使用 Robospice,它不需要Callback在服务接口上提供 as 参数(因为它将是一个同步调用):

@GET("/foo/bar")
User foo(@Query("bar") String baz);

所以我不能以这种方式拦截我的测试中的回调:

Mockito.verify(mockApi).repositories(Mockito.anyString(), cb.capture());
User user = new User();
cb.getValue().success(user, null);

有什么办法可以做到这一点吗?谢谢!

4

1 回答 1

5

模拟服务接口,然后编写脚本以返回您想要的值。

doReturn(new User()).when(service).foo(anyString());

您可以稍后验证是否调用了此方法。

verify(service).foo(anyString())
于 2014-03-11T18:12:28.883 回答