我正在尝试使用 Mockito。
我有一堂课
@Provider
public class SessionProvider implements InjectableProvider<Bind, Type>{
@Override
public ComponentScope getScope() {
return ComponentScope.PerRequest;
}
@Override
public Injectable getInjectable(ComponentContext ic, Bind bind, Type parameter) {
return new SessionInjectable();
}
}
并在调用 getInjectable 时尝试返回 null。
我的用例是这样的
public void addProvider(Class<?> klass) {
providers.add(klass);
}
addProvider(SessionProvider.class);
如何成功模拟 SessionProvider.class?
谢谢
编辑:
我的课是这样的:
@Path("message")
@Produces(MediaType.APPLICATION_JSON)
public class MessageResource {
@POST
@Path("post")
public String testPostMessage(@Bind Session session, Message message) {
return "posted";
}
}
绑定注释正在使用我的提供程序。但是我当前的框架不接受 SessionProvider 的实例。它正在利用 Class 实例。
顺便说一句,这是一个网络服务。它由我的客户端实现调用。我想用一个模拟会话来测试我的信息。对于每个请求,都会请求一个新请求。这就是该方法接受会话类而不是会话实例的原因。
我真的开始觉得有些不对劲,但在哪里?
谢谢