Additional unit tests 10/92010/2
authorTomasz Golabek <tomasz.golabek@nokia.com>
Thu, 25 Jul 2019 12:22:53 +0000 (14:22 +0200)
committerOfir Sonsino <ofir.sonsino@intl.att.com>
Mon, 5 Aug 2019 10:46:18 +0000 (10:46 +0000)
Some tests for catalog-fe

Change-Id: I383021c7d1e85131adebd559e4763e12e36cba67
Issue-ID: SDC-2326
Signed-off-by: Tomasz Golabek <tomasz.golabek@nokia.com>
catalog-fe/src/main/java/org/openecomp/sdc/fe/impl/HttpRequestInfo.java
catalog-fe/src/main/java/org/openecomp/sdc/fe/listen/MyObjectMapperProvider.java
catalog-fe/src/test/java/org/openecomp/sdc/fe/impl/HttpRequestInfoTest.java
catalog-fe/src/test/java/org/openecomp/sdc/fe/listen/MyObjectMapperProviderTest.java
catalog-fe/src/test/java/org/openecomp/sdc/fe/servlets/ConfigMgrServletTest.java [new file with mode: 0644]

index de8ebe3..05e6103 100644 (file)
@@ -20,6 +20,7 @@
 
 package org.openecomp.sdc.fe.impl;
 
+import com.google.common.annotations.VisibleForTesting;
 import javax.servlet.http.HttpServletRequest;
 import java.io.ByteArrayInputStream;
 import java.io.InputStream;
@@ -27,6 +28,10 @@ import java.util.Map;
 
 public class HttpRequestInfo {
 
+    @VisibleForTesting
+    HttpRequestInfo() {
+    }
+
     public HttpRequestInfo(HttpServletRequest request, Map<String, String> headersMap, String data) {
         headers = headersMap;
         requestURL = request.getRequestURI();
index b46ca4c..e7a09b4 100644 (file)
@@ -42,7 +42,6 @@ public class MyObjectMapperProvider implements ContextResolver<ObjectMapper> {
     private static ObjectMapper createDefaultMapper() {
         final ObjectMapper result = new ObjectMapper();
         result.configure(SerializationFeature.INDENT_OUTPUT, true);
-
         return result;
     }
 
index 72a2284..bfc4552 100644 (file)
  * See the License for the specific language governing permissions and
  * limitations under the License.
  * ============LICENSE_END=========================================================
+ * Modifications copyright (c) 2019 Nokia
+ * ================================================================================
  */
 
 package org.openecomp.sdc.fe.impl;
 
-import org.junit.Test;
+import static com.google.code.beanmatchers.BeanMatchers.hasValidGettersAndSetters;
 
-import javax.servlet.*;
-import javax.servlet.http.*;
-import java.io.BufferedReader;
 import java.io.IOException;
-import java.io.InputStream;
-import java.security.Principal;
-import java.util.Collection;
-import java.util.Enumeration;
-import java.util.Locale;
+import java.util.HashMap;
 import java.util.Map;
+import javax.servlet.http.HttpServletRequest;
+import org.apache.commons.io.IOUtils;
+import org.junit.Assert;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.junit.MockitoJUnitRunner;
 
+@RunWith(MockitoJUnitRunner.class)
 public class HttpRequestInfoTest {
 
-    private HttpRequestInfo createTestSubject() {
-        return new HttpRequestInfo(new HttpServletRequestTest(), null, "");
-    }
-
-    @Test
-    public void testGetHeaders() {
-        HttpRequestInfo testSubject;
-        Map<String, String> result;
-
-        // default test
-        testSubject = createTestSubject();
-        result = testSubject.getHeaders();
-    }
-
-    @Test
-    public void testSetHeaders() {
-        HttpRequestInfo testSubject;
-        Map<String, String> headers = null;
-
-        // default test
-        testSubject = createTestSubject();
-        testSubject.setHeaders(headers);
-    }
-
-    @Test
-    public void testGetRequestURL() {
-        HttpRequestInfo testSubject;
-        String result;
-
-        // default test
-        testSubject = createTestSubject();
-        result = testSubject.getRequestURL();
-    }
-
-    @Test
-    public void testSetRequestURL() {
-        HttpRequestInfo testSubject;
-        String requestURL = "";
-
-        // default test
-        testSubject = createTestSubject();
-        testSubject.setRequestURL(requestURL);
-    }
-
-    @Test
-    public void testGetRequestData() throws IOException {
-        HttpRequestInfo testSubject;
-
-        // default test
-        testSubject = createTestSubject();
-        InputStream result = testSubject.getRequestData();
-        if (result != null) {
-            result.close();
-        }
-    }
-
-    @Test
-    public void testSetRequestData() {
-        HttpRequestInfo testSubject;
-        InputStream requestData = null;
-
-        // default test
-        testSubject = createTestSubject();
-        testSubject.setRequestData(requestData);
-    }
+    @Mock
+    private HttpServletRequest request;
+    private Map<String, String> headersMap = new HashMap<>();
 
     @Test
-    public void testGetOriginServletContext() {
-        HttpRequestInfo testSubject;
-        String result;
-
-        // default test
-        testSubject = createTestSubject();
-        result = testSubject.getOriginServletContext();
+    public void shouldHaveGettersAndSetters() {
+        Assert.assertThat(HttpRequestInfo.class, hasValidGettersAndSetters());
     }
 
     @Test
-    public void testSetOriginServletContext() {
-        HttpRequestInfo testSubject;
-        String originServletContext = "";
-
-        // default test
-        testSubject = createTestSubject();
-        testSubject.setOriginServletContext(originServletContext);
-    }
-    
-    private class HttpServletRequestTest implements HttpServletRequest {
-        
-        private HttpServletRequestTest() {
-            
-        }
-        @Override
-        public Object getAttribute(String name) {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public Enumeration getAttributeNames() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getCharacterEncoding() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public void setCharacterEncoding(String env) {
-            // TODO Auto-generated method stub
-            
-        }
-
-        @Override
-        public int getContentLength() {
-            // TODO Auto-generated method stub
-            return 0;
-        }
-
-        @Override
-        public long getContentLengthLong() {
-            return 0;
-        }
-
-        @Override
-        public String getContentType() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public ServletInputStream getInputStream() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getParameter(String name) {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public Enumeration getParameterNames() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String[] getParameterValues(String name) {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public Map getParameterMap() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getProtocol() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getScheme() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getServerName() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public int getServerPort() {
-            // TODO Auto-generated method stub
-            return 0;
-        }
-
-        @Override
-        public BufferedReader getReader() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getRemoteAddr() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getRemoteHost() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public void setAttribute(String name, Object o) {
-            // TODO Auto-generated method stub
-            
-        }
-
-        @Override
-        public void removeAttribute(String name) {
-            // TODO Auto-generated method stub
-            
-        }
-
-        @Override
-        public Locale getLocale() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public Enumeration getLocales() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public boolean isSecure() {
-            // TODO Auto-generated method stub
-            return false;
-        }
-
-        @Override
-        public RequestDispatcher getRequestDispatcher(String path) {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getRealPath(String path) {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public int getRemotePort() {
-            // TODO Auto-generated method stub
-            return 0;
-        }
-
-        @Override
-        public String getLocalName() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getLocalAddr() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public int getLocalPort() {
-            // TODO Auto-generated method stub
-            return 0;
-        }
-
-        @Override
-        public ServletContext getServletContext() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public AsyncContext startAsync() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public AsyncContext startAsync(ServletRequest servletRequest, ServletResponse servletResponse) {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public boolean isAsyncStarted() {
-            // TODO Auto-generated method stub
-            return false;
-        }
-
-        @Override
-        public boolean isAsyncSupported() {
-            // TODO Auto-generated method stub
-            return false;
-        }
-
-        @Override
-        public AsyncContext getAsyncContext() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public DispatcherType getDispatcherType() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getAuthType() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public Cookie[] getCookies() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public long getDateHeader(String name) {
-            // TODO Auto-generated method stub
-            return 0;
-        }
-
-        @Override
-        public String getHeader(String name) {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public Enumeration getHeaders(String name) {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public Enumeration getHeaderNames() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public int getIntHeader(String name) {
-            // TODO Auto-generated method stub
-            return 0;
-        }
-
-        @Override
-        public String getMethod() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getPathInfo() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getPathTranslated() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getContextPath() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getQueryString() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getRemoteUser() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public boolean isUserInRole(String role) {
-            // TODO Auto-generated method stub
-            return false;
-        }
-
-        @Override
-        public Principal getUserPrincipal() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getRequestedSessionId() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getRequestURI() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public StringBuffer getRequestURL() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String getServletPath() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public HttpSession getSession(boolean create) {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public HttpSession getSession() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public String changeSessionId() {
-            return null;
-        }
-
-        @Override
-        public boolean isRequestedSessionIdValid() {
-            // TODO Auto-generated method stub
-            return false;
-        }
-
-        @Override
-        public boolean isRequestedSessionIdFromCookie() {
-            // TODO Auto-generated method stub
-            return false;
-        }
-
-        @Override
-        public boolean isRequestedSessionIdFromURL() {
-            // TODO Auto-generated method stub
-            return false;
-        }
-
-        @Override
-        public boolean isRequestedSessionIdFromUrl() {
-            // TODO Auto-generated method stub
-            return false;
-        }
-
-        @Override
-        public boolean authenticate(HttpServletResponse httpServletResponse) {
-            // TODO Auto-generated method stub
-            return false;
-        }
-
-        @Override
-        public void login(String s, String s1) {
-            // TODO Auto-generated method stub
-        }
-
-        @Override
-        public void logout() {
-            // TODO Auto-generated method stub
-        }
-
-        @Override
-        public Collection<Part> getParts() {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public Part getPart(String s) {
-            // TODO Auto-generated method stub
-            return null;
-        }
-
-        @Override
-        public <T extends HttpUpgradeHandler> T upgrade(Class<T> aClass) throws IOException, ServletException {
-            return null;
-        }
-
+    public void shouldHaveValidConstructor() throws IOException {
+        String any_url = "ANY_URL";
+        Mockito.when(request.getRequestURI()).thenReturn(any_url);
+        String context = "PATH";
+        Mockito.when(request.getContextPath()).thenReturn(context);
+        String data = "ABC";
+        HttpRequestInfo httpRequestInfo = new HttpRequestInfo(request, headersMap, data);
+        byte[] requestData = IOUtils.toByteArray(httpRequestInfo.getRequestData());
+        Assert.assertArrayEquals(requestData, data.getBytes());
+        Assert.assertEquals(httpRequestInfo.getRequestURL(), any_url);
+        Assert.assertEquals(httpRequestInfo.getOriginServletContext(), context);
     }
 }
index 9b6acd6..4a390d3 100644 (file)
  * See the License for the specific language governing permissions and
  * limitations under the License.
  * ============LICENSE_END=========================================================
+ * Modifications copyright (c) 2019 Nokia
+ * ================================================================================
  */
 
 package org.openecomp.sdc.fe.listen;
 
+import com.fasterxml.jackson.core.JsonProcessingException;
+import java.io.Serializable;
+import org.junit.Assert;
 import org.junit.Test;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
 
-
 public class MyObjectMapperProviderTest {
 
-       private MyObjectMapperProvider createTestSubject() {
-               return new MyObjectMapperProvider();
+       private class AnyModel implements Serializable {
+               private String field1;
+
+               AnyModel(String field1) {
+                       this.field1 = field1;
+               }
+
+               public String getField1() {
+                       return field1;
+               }
        }
 
-       
        @Test
-       public void testGetContext() throws Exception {
-               MyObjectMapperProvider testSubject;
-               Class<?> type = null;
-               ObjectMapper result;
-
-               // default test
-               testSubject = createTestSubject();
-               result = testSubject.getContext(type);
+       public void shouldSerializeItPretty() throws JsonProcessingException {
+               String prettyJson = "{\n"
+                       + "  \"field1\" : \"Field1\"\n"
+                       + "}";
+
+               ObjectMapper objectMapper = new MyObjectMapperProvider().getContext(MyObjectMapperProviderTest.class);
+               String serialized = objectMapper.writeValueAsString(new AnyModel("Field1"));
+               Assert.assertEquals(serialized, prettyJson);
        }
-
-       
-
 }
diff --git a/catalog-fe/src/test/java/org/openecomp/sdc/fe/servlets/ConfigMgrServletTest.java b/catalog-fe/src/test/java/org/openecomp/sdc/fe/servlets/ConfigMgrServletTest.java
new file mode 100644 (file)
index 0000000..5406863
--- /dev/null
@@ -0,0 +1,100 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * SDC
+ * ================================================================================
+ * Copyright (C) 2019 Nokia Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+package org.openecomp.sdc.fe.servlets;
+
+import javax.servlet.ServletContext;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpSession;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.Mockito;
+import org.mockito.junit.MockitoJUnitRunner;
+import org.openecomp.sdc.common.api.Constants;
+import org.openecomp.sdc.common.rest.api.RestConfigurationInfo;
+import org.openecomp.sdc.fe.config.Configuration;
+import org.openecomp.sdc.fe.config.ConfigurationManager;
+
+@RunWith(MockitoJUnitRunner.class)
+public class ConfigMgrServletTest {
+
+    private static final String VERSION_1 = "VERSION 1";
+    private static final String PROTOCOL = "PROTO";
+    @Mock
+    private HttpServletRequest request;
+    @Mock
+    private HttpSession session;
+    @Mock
+    private ServletContext context;
+    @Mock
+    private ConfigurationManager configManager;
+
+    @Before
+    public void setUp() {
+        Mockito.when(request.getSession()).thenReturn(session);
+        Mockito.when(session.getServletContext()).thenReturn(context);
+        Mockito.when(context.getAttribute(Constants.CONFIGURATION_MANAGER_ATTR)).thenReturn(configManager);
+    }
+
+    @Test
+    public void shouldGetConfigForRestType() {
+        String wantedResult = "{\n"
+            + "  \"connectionPoolSize\": 5\n"
+            + "}";
+        RestConfigurationInfo restConfiguration = new RestConfigurationInfo();
+        restConfiguration.setConnectionPoolSize(5);
+        Mockito.when(configManager.getRestClientConfiguration()).thenReturn(restConfiguration);
+
+        ConfigMgrServlet configMgrServlet = new ConfigMgrServlet();
+        String config = configMgrServlet.getConfig(request, "rest");
+        Assert.assertEquals(wantedResult, config);
+    }
+
+    @Test
+    public void shouldGetConfigForConfigurationType() {
+        checkForConfigurationTypeOrEmpty("configuration");
+    }
+
+    @Test
+    public void shouldGetConfigForNullType() {
+        checkForConfigurationTypeOrEmpty(null);
+    }
+
+    private void checkForConfigurationTypeOrEmpty(String type) {
+        String wantedResult = "{\n"
+            + "  \"beProtocol\": \"PROTO\",\n"
+            + "  \"version\": \"VERSION 1\",\n"
+            + "  \"threadpoolSize\": 0,\n"
+            + "  \"requestTimeout\": 0\n"
+            + "}";
+
+        Configuration configuration = new Configuration();
+        configuration.setVersion(VERSION_1);
+        configuration.setBeProtocol(PROTOCOL);
+        Mockito.when(configManager.getConfiguration()).thenReturn(configuration);
+
+        ConfigMgrServlet configMgrServlet = new ConfigMgrServlet();
+        String config = configMgrServlet.getConfig(request, type);
+        Assert.assertEquals(wantedResult, config);
+    }
+
+}
\ No newline at end of file