在泽西资源中嘲弄春豆

时间:2013-09-27 09:53:38

标签: java spring rest mocking jersey

我在Jerse Resources和Spring interation中使用@Autowire。现在我希望能够使用mock 自动装配字段上的对象。,

我能够在Jersey 1.17中做到这一点,但在2.2上我找不到任何文件。

我已经厌倦了这样的事情 Jersey 2.*. How to replace InjectableProvider and AbstractHttpContextInjectable of Jersey 1.*

在设置容器时提供了自己的SpringComponent。但是这可以工作。

Example: 
@Path("/myresource")
public class MyResource {

 @Autowired
 private ConfigurationApi configurationApi;

 @GET
 @Produces("text/plain")
 public String getIt() {
 boolean isTrue = configurationApi.isEnabled("aconfig");
 return "Hi there!: configuration is " + isTrue;
}

在球衣1.17中,我可以做这样的事情:

return new WebAppDescriptor.Builder("rest.resource")
                .contextPath("application")
                .servletClass(SpringServlet.class)
                .servletPath("api")
                .contextParam("contextClass", "rest.resource.test.spring.MockableContext")
                .contextParam(SpringServlet.CONTEXT_CONFIG_LOCATION, "context.poc-test.xml")
                .contextListenerClass(ContextLoaderListener.class)
                .build();

然后在实际测试中,我可以通过哈希映射将模拟对象添加到上下文类中。

任何帮助都是适当的。

0 个答案:

没有答案