1 package org.openecomp.sdc.be.servlets;
3 import org.glassfish.hk2.utilities.binding.AbstractBinder;
4 import org.glassfish.jersey.server.ResourceConfig;
5 import org.glassfish.jersey.test.JerseyTest;
6 import org.glassfish.jersey.test.TestProperties;
7 import org.junit.BeforeClass;
8 import org.springframework.context.ApplicationContext;
9 import org.springframework.context.annotation.AnnotationConfigApplicationContext;
11 import javax.servlet.http.HttpServletRequest;
13 import static org.mockito.Mockito.mock;
15 public class JerseySpringBaseTest extends JerseyTest {
17 protected static HttpServletRequest request;
20 public static void initBaseClass() {
21 request = mock(HttpServletRequest.class);
24 protected ResourceConfig configure() {
25 return configure(BaseTestConfig.class);
28 protected ResourceConfig configure(Class<?> springConfig) {
29 ApplicationContext context = new AnnotationConfigApplicationContext(springConfig);
30 forceSet(TestProperties.CONTAINER_PORT, "0");
31 return new ResourceConfig()
32 .register(new AbstractBinder() {
34 protected void configure() {
35 bind(request).to(HttpServletRequest.class);
38 .register(DefaultExceptionMapper.class)
39 .register(ComponentExceptionMapper.class)
40 .register(StorageExceptionMapper.class)
41 .property("jersey.config.server.provider.classnames", "org.openecomp.sdc.be.view.MixinModelWriter")
42 .property("contextConfig", context);