X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=POLICY-SDK-APP%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Fpolicy%2Fadmin%2FPolicyRestControllerTest.java;h=6c47b3955762658c3ae3dc3cbc6c62c2d713d341;hb=HEAD;hp=912f4d9ce89aa2767801991d1e21d58834348226;hpb=b831c6a3df8e1dc9017ae5e8ad002dc3b1002aab;p=policy%2Fengine.git diff --git a/POLICY-SDK-APP/src/test/java/org/onap/policy/admin/PolicyRestControllerTest.java b/POLICY-SDK-APP/src/test/java/org/onap/policy/admin/PolicyRestControllerTest.java index 912f4d9ce..6c47b3955 100644 --- a/POLICY-SDK-APP/src/test/java/org/onap/policy/admin/PolicyRestControllerTest.java +++ b/POLICY-SDK-APP/src/test/java/org/onap/policy/admin/PolicyRestControllerTest.java @@ -2,7 +2,7 @@ * ============LICENSE_START======================================================= * ONAP Policy Engine * ================================================================================ - * Copyright (C) 2017, 2019 AT&T Intellectual Property. All rights reserved. + * Copyright (C) 2017, 2019-2020 AT&T Intellectual Property. All rights reserved. * ================================================================================ * Modifications Copyright (C) 2019 Samsung * ================================================================================ @@ -22,27 +22,37 @@ package org.onap.policy.admin; +import static org.assertj.core.api.Assertions.assertThatExceptionOfType; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; import static org.junit.Assert.fail; +import static org.mockito.Mockito.atLeast; import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.reset; +import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import java.io.BufferedReader; import java.io.IOException; +import java.io.InputStream; +import java.io.PrintWriter; import java.io.StringReader; +import java.net.HttpURLConnection; import java.util.ArrayList; import java.util.List; - import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; - import org.junit.Before; import org.junit.Test; +import org.junit.runner.RunWith; import org.mockito.Mockito; import org.onap.policy.controller.CreateFirewallController; +import org.onap.policy.controller.PolicyController; import org.onap.policy.rest.dao.CommonClassDao; import org.onap.policy.rest.jpa.ActionList; import org.onap.policy.rest.jpa.AddressGroup; -import org.onap.policy.rest.jpa.FWTagPicker; +import org.onap.policy.rest.jpa.FwTagPicker; import org.onap.policy.rest.jpa.GroupServiceList; import org.onap.policy.rest.jpa.PrefixList; import org.onap.policy.rest.jpa.SecurityZone; @@ -50,8 +60,16 @@ import org.onap.policy.rest.jpa.ServiceList; import org.onap.policy.rest.jpa.TermList; import org.onap.portalsdk.core.domain.User; import org.onap.portalsdk.core.util.SystemProperties; +import org.onap.portalsdk.core.web.support.UserUtils; +import org.powermock.api.mockito.PowerMockito; +import org.powermock.core.classloader.annotations.PowerMockIgnore; +import org.powermock.core.classloader.annotations.PrepareForTest; +import org.powermock.modules.junit4.PowerMockRunner; +import org.powermock.reflect.Whitebox; import org.springframework.mock.web.MockHttpServletResponse; +@RunWith(PowerMockRunner.class) +@PowerMockIgnore({"com.sun.org.apache.xerces.*", "javax.xml.*", "org.xml.*", "com.sun.org.apache.xalan.*"}) public class PolicyRestControllerTest { private String clRequestString; @@ -69,10 +87,15 @@ public class PolicyRestControllerTest { private List tagListData; private List termListData; + /** + * Before. + * + * @throws Exception exception + */ @Before public void setUp() throws Exception { commonClassDao = mock(CommonClassDao.class); - HttpSession mockSession = mock(HttpSession.class); + final HttpSession mockSession = mock(HttpSession.class); request = mock(HttpServletRequest.class); response = new MockHttpServletResponse(); User user = new User(); @@ -161,7 +184,7 @@ public class PolicyRestControllerTest { ServiceList serviceList = new ServiceList(); serviceList.setServiceName("Test"); serviceList.setServiceType("SERVICE"); - serviceList.setServiceTransProtocol("Test"); + serviceList.setServiceTransportProtocol("Test"); serviceList.setServiceAppProtocol("Test"); serviceList.setServicePorts("8080"); serviceListData.add(serviceList); @@ -189,19 +212,19 @@ public class PolicyRestControllerTest { when(commonClassDao.getData(GroupServiceList.class)).thenReturn(serviceGroupData); tagListData = new ArrayList<>(); - FWTagPicker fwPicker = new FWTagPicker(); + FwTagPicker fwPicker = new FwTagPicker(); fwPicker.setTagPickerName("Test"); fwPicker.setTagValues("Test:8080"); tagListData.add(fwPicker); - when(commonClassDao.getData(FWTagPicker.class)).thenReturn(tagListData); + when(commonClassDao.getData(FwTagPicker.class)).thenReturn(tagListData); termListData = new ArrayList<>(); TermList termList = new TermList(); termList.setTermName("Test"); - termList.setFromZones("Test"); - termList.setToZones("Test"); - termList.setSrcIPList("Test"); - termList.setDestIPList("Test"); + termList.setFromZone("Test"); + termList.setToZone("Test"); + termList.setSrcIpList("Test"); + termList.setDestIpList("Test"); termList.setSrcPortList("Test"); termList.setDestPortList("Test"); termList.setAction("Test"); @@ -212,6 +235,10 @@ public class PolicyRestControllerTest { @Test public final void testPolicyCreationController() { + assertNull(PolicyRestController.getCommonClassDao()); + PolicyRestController.setCommonClassDao(commonClassDao); + assertNotNull(PolicyRestController.getCommonClassDao()); + PolicyRestController controller = new PolicyRestController(); BufferedReader reader = new BufferedReader(new StringReader(clRequestString)); try { @@ -222,6 +249,7 @@ public class PolicyRestControllerTest { } PolicyRestController controller1 = new PolicyRestController(); CreateFirewallController.setCommonClassDao(commonClassDao); + assertNotNull(CreateFirewallController.getCommonClassDao()); BufferedReader reader1 = new BufferedReader(new StringReader(fwRequestString)); try { Mockito.when(request.getReader()).thenReturn(reader1); @@ -241,6 +269,27 @@ public class PolicyRestControllerTest { } } + @Test + public final void testSearchPolicy() throws IOException { + PolicyController.setjUnit(true); + PolicyController.setPapUrl("http://localhost:8070/pap/"); + PolicyRestController controller = new PolicyRestController(); + BufferedReader reader = new BufferedReader(new StringReader("{\"foo\":\"bar\"}")); + Mockito.when(request.getReader()).thenReturn(reader); + Mockito.when(request.getRequestURI()).thenReturn("/pap/foo/"); + assertThatExceptionOfType(NullPointerException.class) + .isThrownBy(() -> controller.searchPolicy(request, response)); + } + + @Test + public final void testSearchDictionaryController() throws IOException { + PolicyRestController controller = new PolicyRestController(); + BufferedReader reader = new BufferedReader(new StringReader("{\"foo\":\"bar\"}")); + Mockito.when(request.getReader()).thenReturn(reader); + Mockito.when(request.getRequestURI()).thenReturn("/pap/foo/"); + assertNull(controller.searchDictionaryController(request, response)); + } + @Test public final void testDeleteElasticData() { PolicyRestController controller = new PolicyRestController(); @@ -250,4 +299,101 @@ public class PolicyRestControllerTest { fail(); } } + + @Test + public final void testNotifyOtherPaps() { + PolicyRestController controller = new PolicyRestController(); + String strReturn = controller.notifyOtherPapsToUpdateConfigurations("mode", "newName", "oldName"); + assertNull(strReturn); + } + + @SuppressWarnings("unchecked") + @Test + public void testGetDictionaryController() throws IOException { + PolicyRestController controller = new PolicyRestController(); + HttpServletRequest mockRequest = Mockito.mock(HttpServletRequest.class); + HttpServletResponse mockResponse = Mockito.mock(HttpServletResponse.class); + PrintWriter mockPrintWriter = Mockito.mock(PrintWriter.class); + + when(mockRequest.getRequestURI()).thenReturn("//testRequestURI///getDictionary"); + when(mockResponse.getWriter()).thenThrow(IOException.class); + controller.getDictionaryController(mockRequest, mockResponse); + verify(mockRequest, atLeast(1)).getRequestURI(); + verify(mockResponse, atLeast(1)).getWriter(); + + reset(mockResponse); + when(mockRequest.getRequestURI()).thenReturn("testRequestURI///getDictionary"); + when(mockResponse.getWriter()).thenReturn(mockPrintWriter); + controller.getDictionaryController(mockRequest, mockResponse); + verify(mockRequest, atLeast(1)).getRequestURI(); + verify(mockResponse, atLeast(1)).getWriter(); + } + + @PrepareForTest(UserUtils.class) + @Test + public void testdeletetDictionaryController() throws IOException { + HttpServletRequest mockRequest = Mockito.mock(HttpServletRequest.class); + HttpServletResponse mockResponse = Mockito.mock(HttpServletResponse.class); + PolicyRestController controller = new PolicyRestController(); + User mockUser = Mockito.mock(User.class); + PowerMockito.mockStatic(UserUtils.class); + PrintWriter mockPrintWriter = Mockito.mock(PrintWriter.class); + + when(mockRequest.getRequestURI()).thenReturn("//testRequestURI///deleteDictionary"); + when(mockResponse.getWriter()).thenReturn(mockPrintWriter); + when(UserUtils.getUserSession(mockRequest)).thenReturn(mockUser); + when(mockUser.getOrgUserId()).thenReturn("testUserId"); + + controller.deletetDictionaryController(mockRequest, mockResponse); + verify(mockRequest).getRequestURI(); + verify(mockResponse).getWriter(); + verify(mockUser).getOrgUserId(); + + when(mockRequest.getRequestURI()).thenReturn("testRequestURI///deleteDictionary"); + controller.deletetDictionaryController(mockRequest, mockResponse); + verify(mockRequest, atLeast(1)).getRequestURI(); + } + + @PrepareForTest(UserUtils.class) + @Test + public void testSaveDictionaryController() throws IOException { + HttpServletRequest mockRequest = Mockito.mock(HttpServletRequest.class); + HttpServletResponse mockResponse = Mockito.mock(HttpServletResponse.class); + PolicyRestController controller = new PolicyRestController(); + User mockUser = Mockito.mock(User.class); + PowerMockito.mockStatic(UserUtils.class); + PrintWriter mockPrintWriter = Mockito.mock(PrintWriter.class); + + when(mockRequest.getRequestURI()).thenReturn("//testRequestURI///saveDictionary//import_dictionary"); + when(mockResponse.getWriter()).thenReturn(mockPrintWriter); + when(UserUtils.getUserSession(mockRequest)).thenReturn(mockUser); + when(mockUser.getOrgUserId()).thenReturn("testUserId"); + + controller.saveDictionaryController(mockRequest, mockResponse); + verify(mockRequest).getRequestURI(); + verify(mockResponse).getWriter(); + verify(mockUser).getOrgUserId(); + + when(mockRequest.getRequestURI()).thenReturn("testRequestURI///saveDictionary"); + controller.saveDictionaryController(mockRequest, mockResponse); + verify(mockRequest, atLeast(1)).getRequestURI(); + } + + @Test + public void testDoConnect() throws Exception { + HttpURLConnection mockConnection = Mockito.mock(HttpURLConnection.class); + PolicyRestController controller = new PolicyRestController(); + Mockito.doNothing().when(mockConnection).connect(); + InputStream mockInputStream = Mockito.mock(InputStream.class); + + when(mockConnection.getResponseCode()).thenReturn(200); + when(mockConnection.getInputStream()).thenReturn(mockInputStream); + + Whitebox.invokeMethod(controller, "doConnect", mockConnection); + verify(mockConnection).getResponseCode(); + verify(mockConnection).getInputStream(); + + when(mockConnection.getResponseCode()).thenReturn(201); + assertNull(Whitebox.invokeMethod(controller, "doConnect", mockConnection)); + } }