From 9ffce7748d288fde9e55d92367a858020e5a32fc Mon Sep 17 00:00:00 2001 From: rb7147 Date: Tue, 27 Feb 2018 12:09:16 -0500 Subject: Added Junits for Policy PAP-REST Issue-ID: POLICY-600 Change-Id: I1d42a3a880c9d81115d48794a77fadb89562e136 Signed-off-by: rb7147 --- .../org/onap/policy/pap/test/XACMLPAPTest.java | 197 ++++++++++++++++++++- .../controller/DictionaryImportControllerTest.java | 101 ++++++++++- .../rest/controller/SafePolicyControllerTest.java | 14 +- .../test/resources/dictionaryImport/ActionList.csv | 2 + .../dictionaryImport/ActionPolicyDictionary.csv | 2 + .../resources/dictionaryImport/AddressGroup.csv | 2 + .../test/resources/dictionaryImport/Attribute.csv | 6 + .../dictionaryImport/BRMSControllerDictionary.csv | 2 + .../dictionaryImport/BRMSDependencyDictionary.csv | 2 + .../dictionaryImport/BRMSParamDictionary.csv | 2 + .../dictionaryImport/ClosedLoopService.csv | 2 + .../resources/dictionaryImport/ClosedLoopSite.csv | 2 + .../dictionaryImport/MSPolicyDictionary.csv | 2 + .../test/resources/dictionaryImport/OnapName.csv | 2 + .../test/resources/dictionaryImport/PEPOptions.csv | 2 + .../test/resources/dictionaryImport/PrefixList.csv | 2 + .../resources/dictionaryImport/ProtocolList.csv | 2 + .../resources/dictionaryImport/SearchCriteria.csv | 2 + .../resources/dictionaryImport/SecurityZone.csv | 2 + .../resources/dictionaryImport/ServiceGroup.csv | 2 + .../resources/dictionaryImport/ServiceList.csv | 2 + .../test/resources/dictionaryImport/Settings.csv | 6 + .../test/resources/dictionaryImport/TermList.csv | 2 + .../test/resources/dictionaryImport/VNFType.csv | 2 + .../test/resources/dictionaryImport/VSCLAction.csv | 2 + .../dictionaryImport/VarbindDictionary.csv | 2 + .../src/test/resources/dictionaryImport/Zone.csv | 2 + 27 files changed, 355 insertions(+), 13 deletions(-) create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/ActionList.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/ActionPolicyDictionary.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/AddressGroup.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/Attribute.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/BRMSControllerDictionary.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/BRMSDependencyDictionary.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/BRMSParamDictionary.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/ClosedLoopService.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/ClosedLoopSite.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/MSPolicyDictionary.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/OnapName.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/PEPOptions.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/PrefixList.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/ProtocolList.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/SearchCriteria.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/SecurityZone.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/ServiceGroup.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/ServiceList.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/Settings.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/TermList.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/VNFType.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/VSCLAction.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/VarbindDictionary.csv create mode 100644 ONAP-PAP-REST/src/test/resources/dictionaryImport/Zone.csv (limited to 'ONAP-PAP-REST/src/test') diff --git a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/test/XACMLPAPTest.java b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/test/XACMLPAPTest.java index 53616aa7f..c44459690 100644 --- a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/test/XACMLPAPTest.java +++ b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/test/XACMLPAPTest.java @@ -22,6 +22,7 @@ package org.onap.policy.pap.test; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; +import static org.mockito.Mockito.when; import java.io.BufferedReader; import java.io.IOException; @@ -47,13 +48,21 @@ import org.junit.Before; import org.junit.Test; import org.mockito.Mockito; import org.onap.policy.pap.xacml.rest.XACMLPapServlet; +import org.onap.policy.pap.xacml.rest.controller.ActionPolicyDictionaryController; import org.onap.policy.pap.xacml.rest.controller.ClosedLoopDictionaryController; +import org.onap.policy.pap.xacml.rest.controller.DecisionPolicyDictionaryController; +import org.onap.policy.pap.xacml.rest.controller.DescriptiveDictionaryController; +import org.onap.policy.pap.xacml.rest.controller.DictionaryController; import org.onap.policy.pap.xacml.rest.controller.FirewallDictionaryController; +import org.onap.policy.pap.xacml.rest.controller.MicroServiceDictionaryController; +import org.onap.policy.pap.xacml.rest.controller.PolicyScopeDictionaryController; +import org.onap.policy.pap.xacml.rest.controller.SafePolicyController; import org.onap.policy.pap.xacml.rest.daoimpl.CommonClassDaoImpl; import org.onap.policy.pap.xacml.rest.policycontroller.PolicyCreation; import org.onap.policy.pap.xacml.rest.util.DictionaryUtils; import org.onap.policy.rest.dao.CommonClassDao; import org.onap.policy.rest.jpa.BRMSParamTemplate; +import org.onap.policy.rest.jpa.Category; import org.onap.policy.rest.jpa.PolicyEditorScopes; import org.onap.policy.rest.jpa.UserInfo; import org.onap.policy.utils.PolicyUtils; @@ -75,6 +84,7 @@ public class XACMLPAPTest { private ServletConfig servletConfig; private XACMLPapServlet pap; private SessionFactory sessionFactory; + private CommonClassDao commonClassDao; @Before public void setUp() throws ServletException { @@ -90,7 +100,7 @@ public class XACMLPAPTest { .thenReturn("src/test/resources/xacml.pap.properties"); pap = new XACMLPapServlet(); pap.init(servletConfig); - CommonClassDao commonClassDao = Mockito.mock(CommonClassDao.class); + commonClassDao = Mockito.mock(CommonClassDao.class); new DictionaryUtils(commonClassDao); DictionaryUtils.setDictionaryUtils(new DictionaryUtils()); Mockito.mock(DictionaryUtils.class); @@ -523,6 +533,170 @@ public class XACMLPAPTest { Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); } + @Test + public void testCommonCreateDictionary() throws IOException, SQLException, ServletException { + new DictionaryController(commonClassDao); + new ActionPolicyDictionaryController(commonClassDao); + new SafePolicyController(commonClassDao); + new DescriptiveDictionaryController(commonClassDao); + List object = new ArrayList<>(); + object.add(new Category()); + when(commonClassDao.getDataById(Category.class, "shortName", "resource")).thenReturn(object); + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + String json = "{\"dictionaryFields\": {\"onapName\": \"testMMRestAPI1\",\"description\": \"testing update response message\"}}"; + dictionaryTestSetup(false, "OnapName", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + json = "{\"dictionaryFields\": {\"xacmlId\": \"testMMRestAPI1\",\"datatypeBean\": {\"shortName\": \"string\"}, \"description\": \"testing update\",\"priority\": \"High\",\"userDataTypeValues\": [{\"attributeValues\": \"testAttr\"}, {\"attributeValues\": \"testAttr2\"}, {\"attributeValues\": \"testAttr3\"}]}}"; + dictionaryTestSetup(false, "Attribute", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + + + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + json = "{\"dictionaryFields\":{\"attributeName\":\"TestMMrestAPI1\",\"type\":\"REST\",\"url\":\"testsomeurl.com\",\"method\":\"GET\",\"description\":\"test create\",\"body\":\"Testing Create\",\"headers\":[{\"option\":\"test1\",\"number\":\"test\"},{\"option\":\"test2\",\"number\":\"test\"}]}}"; + dictionaryTestSetup(false, "Action", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + json = "{\"dictionaryFields\":{\"scopeName\":\"testMMRestAPI1\",\"description\":\"test\",\"attributes\":[{\"option\":\"test1\",\"number\":\"test\"},{\"option\":\"test2\",\"number\":\"test\"}]}}"; + dictionaryTestSetup(false, "DescriptiveScope", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + json = "{\"dictionaryFields\":{\"riskName\":\"testMMrestAPI1\",\"description\":\"test\"}}"; + dictionaryTestSetup(false, "RiskType", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + json = "{\"dictionaryFields\":{\"name\":\"testMMrestAPI1\",\"message\":\"test\",\"riskType\":\"testMMrestAPI1\"}}"; + dictionaryTestSetup(false, "SafePolicyWarning", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + } + + @Test + public void testDecisionCreateDictionary() throws IOException, SQLException, ServletException { + new DecisionPolicyDictionaryController(commonClassDao); + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + String json = "{\"dictionaryFields\":{\"xacmlId\":\"testMMRestAPI1\",\"datatypeBean\":{\"shortName\":\"string\"},\"description\":\"test\",\"priority\":\"High\"}}"; + dictionaryTestSetup(false, "Settings", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + json = "{\"dictionaryFields\":{\"bbid\":\"BB1\",\"workstep\":\"1\",\"treatments\":\"Manual Handling,Abort,Retry\"}}"; + dictionaryTestSetup(false, "RainyDayTreatments", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + } + + @Test + public void testMSCreateDictionary() throws IOException, SQLException, ServletException { + new MicroServiceDictionaryController(commonClassDao); + new PolicyScopeDictionaryController(commonClassDao); + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + String json = "{\"dictionaryFields\":{\"name\":\"testMMrestAPI1\",\"descriptionValue\":\"test\"}}"; + dictionaryTestSetup(false, "MicroServiceLocation", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + json = "{\"dictionaryFields\":{\"name\":\"testMMrestAPI1\",\"descriptionValue\":\"test\"}}"; + dictionaryTestSetup(false, "MicroServiceConfigName", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + json = "{\"dictionaryFields\":{\"name\":\"testMMrestAPI1\",\"description\":\"test\"}}"; + dictionaryTestSetup(false, "DCAEUUID", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + json = "{\"dictionaryFields\":{\"name\":\"testApiANY\",\"descriptionValue\":\"default test\"}}"; + dictionaryTestSetup(false, "PolicyScopeService", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + json = "{\"dictionaryFields\":{\"name\":\"testApiANY\",\"descriptionValue\":\"default test\"}}"; + dictionaryTestSetup(false, "PolicyScopeResource", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + json = "{\"dictionaryFields\":{\"name\":\"testApiANY\",\"descriptionValue\":\"default test\"}}"; + dictionaryTestSetup(false, "PolicyScopeType", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + json = "{\"dictionaryFields\":{\"name\":\"testApiANY\",\"descriptionValue\":\"default test\"}}"; + dictionaryTestSetup(false, "PolicyScopeClosedLoop", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + json = "{\"dictionaryFields\":{\"groupName\":\"testMMrestAPI1\",\"description\":\"testing\"},\"groupPolicyScopeListData1\":{\"resource\":\"ANY\",\"type\":\"ANY\",\"service\":\"ANY\",\"closedloop\":\"ANY\"}}"; + dictionaryTestSetup(false, "GroupPolicyScopeList", json); + // send Request to PAP + pap.service(httpServletRequest, httpServletResponse); + // Verify + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + } + private void dictionaryTestSetup(Boolean updateFlag, String dictionaryType, String json) throws IOException, SQLException { Mockito.when(httpServletRequest.getHeader(ENVIRONMENT_HEADER)).thenReturn("DEVL"); Mockito.when(httpServletRequest.getHeader("ClientScope")).thenReturn("dictionaryItem"); @@ -565,6 +739,27 @@ public class XACMLPAPTest { PolicyCreation.setCommonClassDao(new CommonClassDaoImpl()); } + @Test + public void getDictionary() throws ServletException, IOException{ + String[] dictionarys = new String[]{"Attribute", "OnapName", "Action", "BRMSParamTemplate","VSCLAction" + ,"VNFType","PEPOptions","Varbind","Service","Site", "Settings", "RainyDayTreatments", + "DescriptiveScope", "ActionList", "ProtocolList", "Zone", "SecurityZone", + "PrefixList", "AddressGroup", "ServiceGroup", "ServiceList", "TermList", + "MicroServiceLocation", "MicroServiceConfigName", "DCAEUUID", "MicroServiceModels", + "PolicyScopeService", "PolicyScopeResource", "PolicyScopeType", "PolicyScopeClosedLoop", + "GroupPolicyScopeList", "RiskType", "SafePolicyWarning", "MicroServiceDictionary"}; + for(String dictionary : dictionarys){ + httpServletRequest = Mockito.mock(HttpServletRequest.class); + httpServletResponse = new MockHttpServletResponse(); + Mockito.when(httpServletRequest.getHeader(ENVIRONMENT_HEADER)).thenReturn("DEVL"); + Mockito.when(httpServletRequest.getMethod()).thenReturn("GET"); + Mockito.when(httpServletRequest.getParameter("apiflag")).thenReturn("api"); + Mockito.when(httpServletRequest.getParameter("dictionaryType")).thenReturn(dictionary); + pap.service(httpServletRequest, httpServletResponse); + assertTrue(HttpServletResponse.SC_OK == httpServletResponse.getStatus()); + } + } + @Test public void testDummy() throws ServletException, IOException { diff --git a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/controller/DictionaryImportControllerTest.java b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/controller/DictionaryImportControllerTest.java index e8d602ce5..7c1c507c2 100644 --- a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/controller/DictionaryImportControllerTest.java +++ b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/controller/DictionaryImportControllerTest.java @@ -20,20 +20,46 @@ package org.onap.policy.pap.xacml.rest.controller; import static org.junit.Assert.assertTrue; -import org.onap.policy.pap.xacml.rest.controller.DictionaryImportController; -import org.junit.After; +import static org.junit.Assert.fail; + +import java.io.ByteArrayOutputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.util.ArrayList; +import java.util.List; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + import org.junit.Before; import org.junit.Test; +import org.mockito.Mockito; import org.onap.policy.common.logging.flexlogger.FlexLogger; import org.onap.policy.common.logging.flexlogger.Logger; +import org.onap.policy.rest.dao.CommonClassDao; +import org.springframework.mock.web.MockHttpServletResponse; -public class DictionaryImportControllerTest { +public class DictionaryImportControllerTest extends Mockito{ private static Logger logger = FlexLogger.getLogger(DictionaryImportController.class); + private static CommonClassDao commonClassDao; + private HttpServletRequest request = null; + private HttpServletResponse response = null; + private DictionaryImportController controller = null; + @Before public void setUp() throws Exception { logger.info("setUp: Entering"); + commonClassDao = Mockito.mock(CommonClassDao.class); + doNothing().when(commonClassDao).save(new Object()); + controller = new DictionaryImportController(); + new DictionaryImportController(commonClassDao); + request = Mockito.mock(HttpServletRequest.class); + response = new MockHttpServletResponse(); } @Test @@ -45,8 +71,69 @@ public class DictionaryImportControllerTest { assertTrue(cotroller.isValidDictionaryName("ActionList")); } - @After - public void destroy(){ - - } + @Test + public void testImportDictionaryData() throws ServletException, IOException{ + List fileNames = new ArrayList<>(); + fileNames.add("Attribute.csv"); + fileNames.add("ActionPolicyDictionary.csv"); + fileNames.add("OnapName.csv"); + fileNames.add("MSPolicyDictionary.csv"); + fileNames.add("ClosedLoopService.csv"); + fileNames.add("ClosedLoopSite.csv"); + fileNames.add("VarbindDictionary.csv"); + fileNames.add("BRMSParamDictionary.csv"); + fileNames.add("BRMSControllerDictionary.csv"); + fileNames.add("BRMSDependencyDictionary.csv"); + fileNames.add("PrefixList.csv"); + fileNames.add("SecurityZone.csv"); + fileNames.add("ServiceList.csv"); + fileNames.add("ServiceGroup.csv"); + fileNames.add("AddressGroup.csv"); + fileNames.add("ProtocolList.csv"); + fileNames.add("TermList.csv"); + fileNames.add("SearchCriteria.csv"); + fileNames.add("VNFType.csv"); + fileNames.add("VSCLAction.csv"); + fileNames.add("PEPOptions.csv"); + fileNames.add("Settings.csv"); + fileNames.add("Zone.csv"); + fileNames.add("ActionList.csv"); + for(int i =0; i < fileNames.size(); i++){ + File file = new File("src/test/resources/dictionaryImport/"+fileNames.get(i)); + try(FileInputStream targetStream = new FileInputStream(file)){ + PushPolicyControllerTest pushController = new PushPolicyControllerTest(); + when(request.getInputStream()).thenReturn(pushController.getInputStream(getBytes(targetStream))); + when(request.getParameter("userId")).thenReturn("demo"); + when(request.getParameter("dictionaryName")).thenReturn(fileNames.get(i)); + controller.importDictionaryData(request, response); + assertTrue(HttpServletResponse.SC_OK == response.getStatus()); + } catch (IOException e) { + fail(); + } + } + when(request.getParameter("dictionaryName")).thenReturn("WrongName"); + controller.importDictionaryData(request, response); + assertTrue(HttpServletResponse.SC_OK == response.getStatus()); + + when(request.getParameter("dictionaryName")).thenReturn(""); + controller.importDictionaryData(request, response); + assertTrue(HttpServletResponse.SC_BAD_REQUEST == response.getStatus()); + + when(request.getInputStream()).thenReturn(null); + when(request.getParameter("dictionaryName")).thenReturn("Attribute.csv"); + controller.importDictionaryData(request, response); + assertTrue(HttpServletResponse.SC_INTERNAL_SERVER_ERROR == response.getStatus()); + } + + public static byte[] getBytes(InputStream is) throws IOException { + int len; + int size = 1024; + byte[] buf; + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + buf = new byte[size]; + while ((len = is.read(buf, 0, size)) != -1) + bos.write(buf, 0, len); + buf = bos.toByteArray(); + return buf; + } } diff --git a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/controller/SafePolicyControllerTest.java b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/controller/SafePolicyControllerTest.java index 48af2442c..7d23475a1 100644 --- a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/controller/SafePolicyControllerTest.java +++ b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/controller/SafePolicyControllerTest.java @@ -22,6 +22,7 @@ package org.onap.policy.pap.xacml.rest.controller; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; import static org.mockito.Mockito.doNothing; +import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import java.io.BufferedReader; @@ -36,6 +37,7 @@ import org.junit.Test; import org.mockito.Mockito; import org.onap.policy.common.logging.flexlogger.FlexLogger; import org.onap.policy.common.logging.flexlogger.Logger; +import org.onap.policy.pap.xacml.rest.util.DictionaryUtils; import org.onap.policy.rest.dao.CommonClassDao; import org.onap.policy.rest.jpa.RiskType; import org.onap.policy.rest.jpa.SafePolicyWarning; @@ -57,20 +59,22 @@ public class SafePolicyControllerTest { public void setUp() throws Exception { logger.info("setUp: Entering"); commonClassDao = Mockito.mock(CommonClassDao.class); - + data = new ArrayList<>(); data.add("Test"); - + userInfo = new UserInfo(); userInfo.setUserLoginId("Test"); userInfo.setUserName("Test"); - + doNothing().when(commonClassDao).delete(new RiskType()); doNothing().when(commonClassDao).save(new RiskType()); - + controller = new SafePolicyController(); controller.setCommonClassDao(commonClassDao); - + new DictionaryUtils(commonClassDao); + DictionaryUtils.setDictionaryUtils(new DictionaryUtils()); + mock(DictionaryUtils.class); request = Mockito.mock(HttpServletRequest.class); response = new MockHttpServletResponse(); logger.info("setUp: exit"); diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/ActionList.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/ActionList.csv new file mode 100644 index 000000000..4e1760532 --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/ActionList.csv @@ -0,0 +1,2 @@ +"Id","Action Name","Description" +104443,"1234","43234" \ No newline at end of file diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/ActionPolicyDictionary.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/ActionPolicyDictionary.csv new file mode 100644 index 000000000..4c447d63f --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/ActionPolicyDictionary.csv @@ -0,0 +1,2 @@ +Id,Attribute Name,Type,Url,Method,Headers,Description,Created By,Modified By,Created Date,Modified Date,,body +10051,AttribName5,REST,www.testitc.com,PUT,TestHeader=TestHeaderVal,Action policy attribute for GET method ,demo,demo ,Mon Jun 20 2016 11:10:05 GMT-0400 (Eastern Daylight Time),Mon Jun 20 2016 11:10:05 GMT-0400 (Eastern Daylight Time),,"{""a"":""b""}" diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/AddressGroup.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/AddressGroup.csv new file mode 100644 index 000000000..9225592be --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/AddressGroup.csv @@ -0,0 +1,2 @@ +"Id","Group Name","Prefix List","Description" +66782,"Group_1702_Address0Group_37_new","testMMRestAPI1,testMMRestAPI2","testing" \ No newline at end of file diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/Attribute.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/Attribute.csv new file mode 100644 index 000000000..e51e4d2d2 --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/Attribute.csv @@ -0,0 +1,6 @@ +Id,Attribute ID,Data Type,Attribute Value,Description,Priority,Created By,Modified By,Created Date,Modified Date +7,Test,string,"test,test",test,High,Demo,Demo,Mon Feb 26 2018 23:26:24 GMT-0500 (Eastern Standard Time),Mon Feb 26 2018 23:26:37 GMT-0500 (Eastern Standard Time) +1,Test,integer,,,,,,, +2,Test,double,,,,,,, +3,Test,boolean,,,,,,, +4,Test,user,,,,,,, diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/BRMSControllerDictionary.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/BRMSControllerDictionary.csv new file mode 100644 index 000000000..81e6da1b2 --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/BRMSControllerDictionary.csv @@ -0,0 +1,2 @@ +Id,Controller Name,Description,Created By,Created Date,Modified By,Modified Date,controller +2833,BRMSController_GA_21_New_2018_02_23_20_13_15,BRMSTest,demo,Fri Feb 23 2018 09:43:23 GMT-0500 (Eastern Standard Time),demo,Fri Feb 23 2018 09:43:23 GMT-0500 (Eastern Standard Time),test diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/BRMSDependencyDictionary.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/BRMSDependencyDictionary.csv new file mode 100644 index 000000000..dfd5b2fa0 --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/BRMSDependencyDictionary.csv @@ -0,0 +1,2 @@ +Id,Dependency Name,Description,Created By,Created Date,Modified By,Modified Date,dependency +391,BRMSDependency_GA_02,BRMSDependenctTest01,demo,Thu Sep 07 2017 14:36:36 GMT-0400 (Eastern Daylight Time),demo,Thu Sep 07 2017 14:36:36 GMT-0400 (Eastern Daylight Time),test diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/BRMSParamDictionary.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/BRMSParamDictionary.csv new file mode 100644 index 000000000..c3e3c3dd8 --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/BRMSParamDictionary.csv @@ -0,0 +1,2 @@ +Id,Rule Name,Description,Created By,Created Date,rule +58537,CLeNodeB,BRMS template for eNodeB guard 1802.48.3-1,demo,Fri Feb 02 2018 12:47:54 GMT-0500 (Eastern Standard Time),test diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/ClosedLoopService.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/ClosedLoopService.csv new file mode 100644 index 000000000..42394254b --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/ClosedLoopService.csv @@ -0,0 +1,2 @@ +Id,Service Name,Description,Created By,Modified By,Created Date,Modified Date +10952,vSCP,,demo,demo,Tue Jun 28 2016 14:42:17 GMT-0400 (Eastern Daylight Time),Tue Jun 28 2016 14:42:17 GMT-0400 (Eastern Daylight Time) diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/ClosedLoopSite.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/ClosedLoopSite.csv new file mode 100644 index 000000000..c3bda5607 --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/ClosedLoopSite.csv @@ -0,0 +1,2 @@ +Id,Site Name,Description,Created By,Modified By,Created Date,Modified Date +5651,Default,,demo,demo,Thu Mar 17 2016 17:45:20 GMT-0400 (Eastern Daylight Time),Thu Mar 17 2016 17:45:20 GMT-0400 (Eastern Daylight Time) diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/MSPolicyDictionary.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/MSPolicyDictionary.csv new file mode 100644 index 000000000..cce394237 --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/MSPolicyDictionary.csv @@ -0,0 +1,2 @@ +Id,Micro Service Model,Description,Model Version,Imported By,dependency,attributes,enumValues,Ref Attributes,Sub Attributes +16857,PolicyBody,PolicyBody,0.1.0-SNAPSHOT,demo,test,test,test,test,test diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/OnapName.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/OnapName.csv new file mode 100644 index 000000000..52600442a --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/OnapName.csv @@ -0,0 +1,2 @@ +Id,Onap Name,Description,Created By,Modified By,Created Date,Modified Date +19369,PDPD,for PDPD,demo,demo,Wed Aug 30 2017 10:50:18 GMT-0400 (Eastern Daylight Time),Wed Aug 30 2017 10:50:18 GMT-0400 (Eastern Daylight Time) diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/PEPOptions.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/PEPOptions.csv new file mode 100644 index 000000000..61adca140 --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/PEPOptions.csv @@ -0,0 +1,2 @@ +"Id","PEP Name","Actions","Description","Created By","Modified By","Created Date","Modified Date" +108274,"PEPoptions_110920172059","test1=#@test:#@test2=#@test","testing create","API","API","Mon Sep 11 2017 11:29:48 GMT-0400 (Eastern Daylight Time)","Mon Sep 11 2017 11:29:48 GMT-0400 (Eastern Daylight Time)" \ No newline at end of file diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/PrefixList.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/PrefixList.csv new file mode 100644 index 000000000..bacfe85a4 --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/PrefixList.csv @@ -0,0 +1,2 @@ +"Id","PrefixList Name","Description","PrefixList Value" +122155,"221120170105","testing","12.81.230.32/27" \ No newline at end of file diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/ProtocolList.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/ProtocolList.csv new file mode 100644 index 000000000..8ef655515 --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/ProtocolList.csv @@ -0,0 +1,2 @@ +"Id","Protocol Name","Description" +5497,"221120170105","test" \ No newline at end of file diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/SearchCriteria.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/SearchCriteria.csv new file mode 100644 index 000000000..b8bf7af68 --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/SearchCriteria.csv @@ -0,0 +1,2 @@ +Id,Descriptive Scope Name,Search Criteria,Description,Created By,Modified By,Created Date,Modified Date +108925,check_8901,12:test,,demo,demo,Wed Oct 25 2017 17:39:01 GMT-0400 (Eastern Daylight Time),Wed Oct 25 2017 17:39:01 GMT-0400 (Eastern Daylight Time) diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/SecurityZone.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/SecurityZone.csv new file mode 100644 index 000000000..edb09a02d --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/SecurityZone.csv @@ -0,0 +1,2 @@ +"Id","Zone Name","Zone Value" +105205,"check_new","Description" \ No newline at end of file diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/ServiceGroup.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/ServiceGroup.csv new file mode 100644 index 000000000..2fe18d95f --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/ServiceGroup.csv @@ -0,0 +1,2 @@ +"Id","Group Name","Service List" +66589,"Group_Group2017","telnet" \ No newline at end of file diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/ServiceList.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/ServiceList.csv new file mode 100644 index 000000000..e4fd75f7b --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/ServiceList.csv @@ -0,0 +1,2 @@ +"Id","Service Name","Description","Service Type","Transport Protocol","APP Protocol","Ports" +100024,"BillTesting1","BillTesting","SERVICE","IP2","","80" \ No newline at end of file diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/Settings.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/Settings.csv new file mode 100644 index 000000000..b73db2df1 --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/Settings.csv @@ -0,0 +1,6 @@ +Id,Settings ID,Data Type,Description,Created By,Modified By,Created Date,Modified Date,priority +7681,2.2112E+11,string,test,API,API,Tue Nov 21 2017 14:33:28 GMT-0500 (Eastern Standard Time),Tue Nov 21 2017 14:33:28 GMT-0500 (Eastern Standard Time),high +1,test,integer,,,,,, +2,test,double,,,,,, +3,test,boolean,,,,,, +4,test,user,,,,,, diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/TermList.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/TermList.csv new file mode 100644 index 000000000..06338a26f --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/TermList.csv @@ -0,0 +1,2 @@ +Id,Term-Name,Term-Description,From Zone,To Zone,Source-IP-List,Destination-IP-List,Source-Port-List,Destination-Port-List,Action List,Created By,Modified By,Created Date,Modified Date +118837,basicRule,BasicRule,Trusted,UnTrusted,PL_Astra,PL_CCE,,snmp,deny,demo,demo,Fri Dec 01 2017 10:30:45 GMT-0500 (Eastern Standard Time),Fri Dec 01 2017 10:30:45 GMT-0500 (Eastern Standard Time) diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/VNFType.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/VNFType.csv new file mode 100644 index 000000000..8dca6b7ff --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/VNFType.csv @@ -0,0 +1,2 @@ +"Id","VNF Type","Description","Created By","Modified By","Created Date","Modified Date" +108043,"221120170101","testing create","API","API","Tue Nov 21 2017 14:31:24 GMT-0500 (Eastern Standard Time)","Tue Nov 21 2017 14:31:24 GMT-0500 (Eastern Standard Time)" \ No newline at end of file diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/VSCLAction.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/VSCLAction.csv new file mode 100644 index 000000000..b0d7d86c2 --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/VSCLAction.csv @@ -0,0 +1,2 @@ +"Id","VSCL Action","Description","Created By","Modified By","Created Date","Modified Date" +56419,"221120170102","default test","API","API","Tue Nov 21 2017 14:32:14 GMT-0500 (Eastern Standard Time)","Tue Nov 21 2017 14:32:33 GMT-0500 (Eastern Standard Time)" \ No newline at end of file diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/VarbindDictionary.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/VarbindDictionary.csv new file mode 100644 index 000000000..61166a07d --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/VarbindDictionary.csv @@ -0,0 +1,2 @@ +Id,Varbind Name,Varbind Description,Varbind OID,Created By,Modified By,Created Date,Modified Date +15760,A1,test,test,demo,demo,Mon Sep 26 2016 12:37:25 GMT-0400 (Eastern Daylight Time),Mon Sep 26 2016 12:37:25 GMT-0400 (Eastern Daylight Time) diff --git a/ONAP-PAP-REST/src/test/resources/dictionaryImport/Zone.csv b/ONAP-PAP-REST/src/test/resources/dictionaryImport/Zone.csv new file mode 100644 index 000000000..d563a6be6 --- /dev/null +++ b/ONAP-PAP-REST/src/test/resources/dictionaryImport/Zone.csv @@ -0,0 +1,2 @@ +"Id","Zone Name","Zone Value" +57889,"2017","2017" \ No newline at end of file -- cgit 1.2.3-korg