X-Git-Url: https://gerrit.onap.org/r/gitweb?p=policy%2Fengine.git;a=blobdiff_plain;f=POLICY-SDK-APP%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Fpolicy%2Fadmin%2FPolicyManagerServletTest.java;h=244901a3fc3c2337d095b172c5da34b82983d97d;hp=a034c8ae9abbd9a8c1332ce4e9b69c38504fa77d;hb=1e61676b77dd09659027b8984f050df7e8538526;hpb=6065432f5eb35d70466e1eead8c78124ec3cf62e diff --git a/POLICY-SDK-APP/src/test/java/org/onap/policy/admin/PolicyManagerServletTest.java b/POLICY-SDK-APP/src/test/java/org/onap/policy/admin/PolicyManagerServletTest.java index a034c8ae9..244901a3f 100644 --- a/POLICY-SDK-APP/src/test/java/org/onap/policy/admin/PolicyManagerServletTest.java +++ b/POLICY-SDK-APP/src/test/java/org/onap/policy/admin/PolicyManagerServletTest.java @@ -2,14 +2,16 @@ * ============LICENSE_START======================================================= * ONAP Policy Engine * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * Copyright (C) 2017-2019 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Modifications Copyright (C) 2019 Samsung * ================================================================================ * 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. @@ -17,8 +19,10 @@ * limitations under the License. * ============LICENSE_END========================================================= */ + package org.onap.policy.admin; +import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; import java.io.BufferedReader; @@ -28,10 +32,9 @@ import java.util.ArrayList; import java.util.Collections; import java.util.List; -import javax.script.SimpleBindings; import javax.servlet.ServletConfig; import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; import org.apache.commons.io.IOUtils; import org.junit.Before; @@ -41,6 +44,7 @@ import org.onap.policy.common.logging.flexlogger.FlexLogger; import org.onap.policy.common.logging.flexlogger.Logger; import org.onap.policy.controller.CreateDcaeMicroServiceController; import org.onap.policy.controller.PolicyController; +import org.onap.policy.model.Roles; import org.onap.policy.rest.dao.CommonClassDao; import org.onap.policy.rest.jpa.ActionBodyEntity; import org.onap.policy.rest.jpa.ConfigurationDataEntity; @@ -49,59 +53,77 @@ import org.onap.policy.rest.jpa.PolicyEditorScopes; import org.onap.policy.rest.jpa.PolicyEntity; import org.onap.policy.rest.jpa.PolicyVersion; import org.onap.policy.rest.jpa.UserInfo; -import org.openecomp.policy.model.Roles; - -public class PolicyManagerServletTest extends Mockito{ - - private static Logger logger = FlexLogger.getLogger(PolicyManagerServletTest.class); - private List headers = new ArrayList(); - - private static List rolesdata; - private static List basePolicyData; - private static List policyEditorScopes; - private static List policyVersion; - private static CommonClassDao commonClassDao; - - @Before - public void setUp() throws Exception{ - logger.info("setUp: Entering"); - UserInfo userinfo = new UserInfo(); - userinfo.setUserLoginId("Test"); - userinfo.setUserName("Test"); - //Roles Data +import org.onap.portalsdk.core.domain.User; +import org.onap.portalsdk.core.util.SystemProperties; +import org.springframework.mock.web.MockHttpServletResponse; + +public class PolicyManagerServletTest extends Mockito { + + private static Logger logger = FlexLogger.getLogger(PolicyManagerServletTest.class); + private List headers = new ArrayList(); + + private static List rolesdata; + private static List basePolicyData; + private static List policyEditorScopes; + private static List policyVersion; + private static CommonClassDao commonClassDao; + private ConfigurationDataEntity configurationEntity; + private HttpServletRequest request; + private MockHttpServletResponse response; + + /** + * setUp. + * + * @throws Exception should not get one + */ + @Before + public void setUp() throws Exception { + logger.info("setUp: Entering"); + + request = mock(HttpServletRequest.class); + response = new MockHttpServletResponse(); + + PolicyController.setjUnit(true); + UserInfo userinfo = new UserInfo(); + userinfo.setUserLoginId("Test"); + userinfo.setUserName("Test"); + // Roles Data rolesdata = new ArrayList<>(); Roles roles = new Roles(); roles.setLoginId("Test"); roles.setRole("super-admin"); Roles roles1 = new Roles(); + roles1.setId(1); + roles1.setName("Test"); + assertTrue("Test".equals(roles1.getName())); roles1.setLoginId("Test"); roles1.setRole("admin"); roles1.setScope("['com','Test']"); rolesdata.add(roles); rolesdata.add(roles1); - - //PolicyEntity Data + + // PolicyEntity Data basePolicyData = new ArrayList<>(); String policyContent = ""; try { - ClassLoader classLoader = getClass().getClassLoader(); - policyContent = IOUtils.toString(classLoader.getResourceAsStream("Config_SampleTest1206.1.xml")); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - } + ClassLoader classLoader = getClass().getClassLoader(); + policyContent = IOUtils.toString(classLoader.getResourceAsStream("Config_SampleTest1206.1.xml")); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + } PolicyEntity entity = new PolicyEntity(); entity.setPolicyName("Config_SampleTest.1.xml"); entity.setPolicyData(policyContent); entity.setScope("com"); - ConfigurationDataEntity configurationEntity = new ConfigurationDataEntity(); + configurationEntity = new ConfigurationDataEntity(); configurationEntity.setConfigBody("Sample Test"); configurationEntity.setConfigType("OTHER"); configurationEntity.setConfigurationName("com.Config_SampleTest1206.1.txt"); configurationEntity.setDescription("test"); entity.setConfigurationData(configurationEntity); basePolicyData.add(entity); - - //PolicyEditorScopes data + + // PolicyEditorScopes data policyEditorScopes = new ArrayList<>(); PolicyEditorScopes scopes = new PolicyEditorScopes(); scopes.setScopeName("com"); @@ -113,8 +135,8 @@ public class PolicyManagerServletTest extends Mockito{ scopes1.setUserModifiedBy(userinfo); policyEditorScopes.add(scopes); policyEditorScopes.add(scopes1); - - //PolicyVersion data + + // PolicyVersion data policyVersion = new ArrayList<>(); PolicyVersion policy = new PolicyVersion(); policy.setPolicyName("com\\Config_SampleTest1206"); @@ -123,110 +145,157 @@ public class PolicyManagerServletTest extends Mockito{ policy.setCreatedBy("Test"); policy.setModifiedBy("Test"); policyVersion.add(policy); - } - - @Test - public void testInit(){ - PolicyManagerServlet servlet = new PolicyManagerServlet(); - ServletConfig servletConfig = mock(ServletConfig.class); + + HttpSession mockSession = mock(HttpSession.class); + User user = new User(); + user.setOrgUserId("Test"); + Mockito.when(mockSession.getAttribute(SystemProperties.getProperty("user_attribute_name"))).thenReturn(user); + Mockito.when(request.getSession(false)).thenReturn(mockSession); + commonClassDao = mock(CommonClassDao.class); + + } + + @Test + public void testInit() { + PolicyManagerServlet servlet = new PolicyManagerServlet(); + ServletConfig servletConfig = mock(ServletConfig.class); + try { + when(servletConfig.getInitParameterNames()).thenReturn(Collections.enumeration(headers)); + when(servletConfig.getInitParameter("XACML_PROPERTIES_NAME")).thenReturn("xacml.admin.properties"); + System.setProperty("xacml.rest.admin.closedLoopJSON", + new File(".").getCanonicalPath() + File.separator + "src" + File.separator + "test" + File.separator + + "resources" + File.separator + "JSONConfig.json"); + servlet.init(servletConfig); + + assertTrue(PolicyManagerServlet.getServiceTypeNamesList().size() > 0); + assertTrue(PolicyManagerServlet.getPolicyNames().size() > 0); + + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } + } + + @Test + public void testBadInitJson() { + PolicyManagerServlet servlet = new PolicyManagerServlet(); + ServletConfig servletConfig = mock(ServletConfig.class); try { - when(servletConfig.getInitParameterNames()).thenReturn(Collections.enumeration(headers)); - when(servletConfig.getInitParameter("XACML_PROPERTIES_NAME")).thenReturn("xacml.admin.properties"); - System.setProperty("xacml.rest.admin.closedLoopJSON", new File(".").getCanonicalPath() + File.separator + "src"+ File.separator + "test" + File.separator + "resources" + File.separator + "JSONConfig.json"); - servlet.init(servletConfig); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - fail(); - } - } - - @SuppressWarnings("static-access") - @Test - public void testDescribePolicy(){ - PolicyManagerServlet servlet = new PolicyManagerServlet(); - HttpServletRequest request = mock(HttpServletRequest.class); - HttpServletResponse response = mock(HttpServletResponse.class); + when(servletConfig.getInitParameterNames()).thenReturn(Collections.enumeration(headers)); + when(servletConfig.getInitParameter("XACML_PROPERTIES_NAME")).thenReturn("xacml.admin.properties"); + System.setProperty("xacml.rest.admin.closedLoopJSON", + new File(".").getCanonicalPath() + File.separator + "src" + File.separator + "test" + File.separator + + "resources" + File.separator + "JSONConfig.foo"); + servlet.init(servletConfig); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } + } + + @Test + public void testBadInitJsonInvalidFile() { + PolicyManagerServlet servlet = new PolicyManagerServlet(); + ServletConfig servletConfig = mock(ServletConfig.class); + try { + when(servletConfig.getInitParameterNames()).thenReturn(Collections.enumeration(headers)); + when(servletConfig.getInitParameter("XACML_PROPERTIES_NAME")).thenReturn("xacml.admin.properties"); + System.setProperty("xacml.rest.admin.closedLoopJSON", + new File(".").getCanonicalPath() + File.separator + "src" + File.separator + "test" + File.separator + + "resources" + File.separator + "IDonotExist.json"); + servlet.init(servletConfig); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } + } + + @SuppressWarnings("static-access") + @Test + public void testDescribePolicy() { + PolicyManagerServlet servlet = new PolicyManagerServlet(); PolicyController controller = mock(PolicyController.class); - - BufferedReader reader = new BufferedReader(new StringReader("{params: { mode: 'DESCRIBEPOLICYFILE', path: 'com.Config_SampleTest1206.1.xml'}}")); + BufferedReader reader = new BufferedReader( + new StringReader("{params: { mode: 'DESCRIBEPOLICYFILE', path: 'com.Config_SampleTest1206.1.xml'}}")); try { - when(request.getReader()).thenReturn(reader); - when(controller.getDataByQuery("FROM PolicyEntity where policyName = 'Config_SampleTest1206.1.xml' and scope ='com'", new SimpleBindings())).thenReturn(basePolicyData); - servlet.setPolicyController(controller); - servlet.doPost(request, response); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - fail(); - } - } - - - @SuppressWarnings("static-access") - @Test - public void testPolicyScopeList(){ - PolicyManagerServlet servlet = new PolicyManagerServlet(); - HttpServletRequest request = mock(HttpServletRequest.class); - HttpServletResponse response = mock(HttpServletResponse.class); + when(request.getReader()).thenReturn(reader); + String query = "FROM PolicyEntity where policyName = :split_1 and scope = :split_0"; + when(controller.getDataByQuery(query, null)).thenReturn(basePolicyData); + servlet.setPolicyController(controller); + servlet.doPost(request, response); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } + } + + @SuppressWarnings("static-access") + @Test + public void testPolicyScopeList() { + PolicyManagerServlet servlet = new PolicyManagerServlet(); PolicyController controller = mock(PolicyController.class); List list = new ArrayList<>(); list.add("{params: { mode: 'LIST', path: '/', onlyFolders: false}}"); list.add("{params: { mode: 'LIST', path: '/com', onlyFolders: false}}"); - for(int i =0; i < list.size(); i++){ - BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); + for (int i = 0; i < list.size(); i++) { + BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); try { - when(request.getReader()).thenReturn(reader); - when(controller.getRoles("Test")).thenReturn(rolesdata); - when(controller.getDataByQuery("from PolicyEditorScopes", new SimpleBindings())).thenReturn(policyEditorScopes); - when(controller.getDataByQuery("from PolicyEditorScopes where SCOPENAME like 'com%'", new SimpleBindings())).thenReturn(policyEditorScopes); - when(controller.getDataByQuery("from PolicyVersion where POLICY_NAME like 'com%'", new SimpleBindings())).thenReturn(policyVersion); - servlet.setPolicyController(controller); - servlet.setTestUserId("Test"); - servlet.doPost(request, response); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - fail(); - } + when(request.getReader()).thenReturn(reader); + when(controller.getRoles("Test")).thenReturn(rolesdata); + when(controller.getDataByQuery("from PolicyEditorScopes", null)).thenReturn(policyEditorScopes); + when(controller.getDataByQuery("from PolicyEditorScopes where SCOPENAME like :scopeName", null)) + .thenReturn(policyEditorScopes); + when(controller.getDataByQuery("from PolicyVersion where POLICY_NAME like :scopeName", null)) + .thenReturn(policyVersion); + servlet.setPolicyController(controller); + servlet.setTestUserId("Test"); + servlet.doPost(request, response); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } } - } - - @SuppressWarnings("static-access") - @Test - public void editBasePolicyTest(){ - PolicyManagerServlet servlet = new PolicyManagerServlet(); - HttpServletRequest request = mock(HttpServletRequest.class); - HttpServletResponse response = mock(HttpServletResponse.class); + } + + @SuppressWarnings("static-access") + @Test + public void editBasePolicyTest() { + PolicyManagerServlet servlet = new PolicyManagerServlet(); PolicyController controller = mock(PolicyController.class); List list = new ArrayList<>(); list.add("{params: { mode: 'EDITFILE', path: '/com/Config_SampleTest1206.1.xml', onlyFolders: false}}"); - for(int i =0; i < list.size(); i++){ - BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); + for (int i = 0; i < list.size(); i++) { + BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); try { - when(request.getReader()).thenReturn(reader); - when(controller.getRoles("Test")).thenReturn(rolesdata); - when(controller.getDataByQuery("FROM PolicyEntity where policyName = 'Config_SampleTest1206.1.xml' and scope ='com'", new SimpleBindings())).thenReturn(basePolicyData); - servlet.setPolicyController(controller); - servlet.setTestUserId("Test"); - servlet.doPost(request, response); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - fail(); - } + when(request.getReader()).thenReturn(reader); + when(controller.getRoles("Test")).thenReturn(rolesdata); + when(controller.getDataByQuery("FROM PolicyEntity where policyName = :split_1 and scope = :split_0", + null)).thenReturn(basePolicyData); + servlet.setPolicyController(controller); + servlet.setTestUserId("Test"); + servlet.doPost(request, response); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } } - } - - @SuppressWarnings("static-access") - @Test - public void editBRMSParamPolicyTest(){ - List policyData = new ArrayList<>(); + } + + @SuppressWarnings("static-access") + @Test + public void editBRMSParamPolicyTest() { + List policyData = new ArrayList<>(); String policyContent = ""; String configData = ""; try { - ClassLoader classLoader = getClass().getClassLoader(); - policyContent = IOUtils.toString(classLoader.getResourceAsStream("Config_BRMS_Param_BRMSParamvFWDemoPolicy.1.xml")); - configData = IOUtils.toString(classLoader.getResourceAsStream("com.Config_BRMS_Param_BRMSParamvFWDemoPolicy.1.txt")); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - } + ClassLoader classLoader = getClass().getClassLoader(); + policyContent = + IOUtils.toString(classLoader.getResourceAsStream("Config_BRMS_Param_BRMSParamvFWDemoPolicy.1.xml")); + configData = IOUtils + .toString(classLoader.getResourceAsStream("com.Config_BRMS_Param_BRMSParamvFWDemoPolicy.1.txt")); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + } PolicyEntity entity = new PolicyEntity(); entity.setPolicyName("Config_BRMS_Param_BRMSParamvFWDemoPolicy.1.xml"); entity.setPolicyData(policyContent); @@ -238,41 +307,43 @@ public class PolicyManagerServletTest extends Mockito{ configurationEntity.setDescription("test"); entity.setConfigurationData(configurationEntity); policyData.add(entity); - PolicyManagerServlet servlet = new PolicyManagerServlet(); - HttpServletRequest request = mock(HttpServletRequest.class); - HttpServletResponse response = mock(HttpServletResponse.class); + PolicyManagerServlet servlet = new PolicyManagerServlet(); PolicyController controller = mock(PolicyController.class); List list = new ArrayList<>(); - list.add("{params: { mode: 'EDITFILE', path: '/com/Config_BRMS_Param_BRMSParamvFWDemoPolicy.1.xml', onlyFolders: false}}"); - for(int i =0; i < list.size(); i++){ - BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); + list.add("{params: { mode: 'EDITFILE', path: '/com/Config_BRMS_Param_BRMSParamvFWDemoPolicy.1.xml'," + + " onlyFolders: false}}"); + for (int i = 0; i < list.size(); i++) { + BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); try { - when(request.getReader()).thenReturn(reader); - when(controller.getRoles("Test")).thenReturn(rolesdata); - when(controller.getDataByQuery("FROM PolicyEntity where policyName = 'Config_BRMS_Param_BRMSParamvFWDemoPolicy.1.xml' and scope ='com'", new SimpleBindings())).thenReturn(policyData); - servlet.setPolicyController(controller); - servlet.setTestUserId("Test"); - servlet.doPost(request, response); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - fail(); - } + when(request.getReader()).thenReturn(reader); + when(controller.getRoles("Test")).thenReturn(rolesdata); + when(controller.getDataByQuery("FROM PolicyEntity where policyName = :split_1 and scope = :split_0", + null)).thenReturn(policyData); + servlet.setPolicyController(controller); + servlet.setTestUserId("Test"); + servlet.doPost(request, response); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } } - } + } - @SuppressWarnings("static-access") - @Test - public void editBRMSRawPolicyTest(){ - List policyData = new ArrayList<>(); + @SuppressWarnings("static-access") + @Test + public void editBRMSRawPolicyTest() { + List policyData = new ArrayList<>(); String policyContent = ""; String configData = ""; try { - ClassLoader classLoader = getClass().getClassLoader(); - policyContent = IOUtils.toString(classLoader.getResourceAsStream("Config_BRMS_Raw_TestBRMSRawPolicy.1.xml")); - configData = IOUtils.toString(classLoader.getResourceAsStream("com.Config_BRMS_Raw_TestBRMSRawPolicy.1.txt")); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - } + ClassLoader classLoader = getClass().getClassLoader(); + policyContent = + IOUtils.toString(classLoader.getResourceAsStream("Config_BRMS_Raw_TestBRMSRawPolicy.1.xml")); + configData = + IOUtils.toString(classLoader.getResourceAsStream("com.Config_BRMS_Raw_TestBRMSRawPolicy.1.txt")); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + } PolicyEntity entity = new PolicyEntity(); entity.setPolicyName("Config_BRMS_Raw_TestBRMSRawPolicy.1.xml"); entity.setPolicyData(policyContent); @@ -284,41 +355,43 @@ public class PolicyManagerServletTest extends Mockito{ configurationEntity.setDescription("test"); entity.setConfigurationData(configurationEntity); policyData.add(entity); - PolicyManagerServlet servlet = new PolicyManagerServlet(); - HttpServletRequest request = mock(HttpServletRequest.class); - HttpServletResponse response = mock(HttpServletResponse.class); + PolicyManagerServlet servlet = new PolicyManagerServlet(); PolicyController controller = mock(PolicyController.class); List list = new ArrayList<>(); - list.add("{params: { mode: 'EDITFILE', path: '/com/Config_BRMS_Raw_TestBRMSRawPolicy.1.xml', onlyFolders: false}}"); - for(int i =0; i < list.size(); i++){ - BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); + list.add("{params: { mode: 'EDITFILE', path: '/com/Config_BRMS_Raw_TestBRMSRawPolicy.1.xml'," + + " onlyFolders: false}}"); + for (int i = 0; i < list.size(); i++) { + BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); try { - when(request.getReader()).thenReturn(reader); - when(controller.getRoles("Test")).thenReturn(rolesdata); - when(controller.getDataByQuery("FROM PolicyEntity where policyName = 'Config_BRMS_Raw_TestBRMSRawPolicy.1.xml' and scope ='com'", new SimpleBindings())).thenReturn(policyData); - servlet.setPolicyController(controller); - servlet.setTestUserId("Test"); - servlet.doPost(request, response); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - fail(); - } + when(request.getReader()).thenReturn(reader); + when(controller.getRoles("Test")).thenReturn(rolesdata); + when(controller.getDataByQuery("FROM PolicyEntity where policyName = :split_1 and scope = :split_0", + null)).thenReturn(policyData); + servlet.setPolicyController(controller); + servlet.setTestUserId("Test"); + servlet.doPost(request, response); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } } - } - - @SuppressWarnings("static-access") - @Test - public void editClosedLoopFaultPolicyTest(){ - List policyData = new ArrayList<>(); + } + + @SuppressWarnings("static-access") + @Test + public void editClosedLoopFaultPolicyTest() { + List policyData = new ArrayList<>(); String policyContent = ""; String configData = ""; try { - ClassLoader classLoader = getClass().getClassLoader(); - policyContent = IOUtils.toString(classLoader.getResourceAsStream("Config_Fault_TestClosedLoopPolicy.1.xml")); - configData = IOUtils.toString(classLoader.getResourceAsStream("com.Config_Fault_TestClosedLoopPolicy.1.json")); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - } + ClassLoader classLoader = getClass().getClassLoader(); + policyContent = + IOUtils.toString(classLoader.getResourceAsStream("Config_Fault_TestClosedLoopPolicy.1.xml")); + configData = + IOUtils.toString(classLoader.getResourceAsStream("com.Config_Fault_TestClosedLoopPolicy.1.json")); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + } PolicyEntity entity = new PolicyEntity(); entity.setPolicyName("Config_Fault_TestClosedLoopPolicy.1.xml"); entity.setPolicyData(policyContent); @@ -330,41 +403,42 @@ public class PolicyManagerServletTest extends Mockito{ configurationEntity.setDescription("test"); entity.setConfigurationData(configurationEntity); policyData.add(entity); - PolicyManagerServlet servlet = new PolicyManagerServlet(); - HttpServletRequest request = mock(HttpServletRequest.class); - HttpServletResponse response = mock(HttpServletResponse.class); + PolicyManagerServlet servlet = new PolicyManagerServlet(); PolicyController controller = mock(PolicyController.class); List list = new ArrayList<>(); - list.add("{params: { mode: 'EDITFILE', path: '/com/Config_Fault_TestClosedLoopPolicy.1.xml', onlyFolders: false}}"); - for(int i =0; i < list.size(); i++){ - BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); + list.add("{params: { mode: 'EDITFILE', path: '/com/Config_Fault_TestClosedLoopPolicy.1.xml'," + + " onlyFolders: false}}"); + for (int i = 0; i < list.size(); i++) { + BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); try { - when(request.getReader()).thenReturn(reader); - when(controller.getRoles("Test")).thenReturn(rolesdata); - when(controller.getDataByQuery("FROM PolicyEntity where policyName = 'Config_Fault_TestClosedLoopPolicy.1.xml' and scope ='com'", new SimpleBindings())).thenReturn(policyData); - servlet.setPolicyController(controller); - servlet.setTestUserId("Test"); - servlet.doPost(request, response); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - fail(); - } + when(request.getReader()).thenReturn(reader); + when(controller.getRoles("Test")).thenReturn(rolesdata); + when(controller.getDataByQuery("FROM PolicyEntity where policyName = :split_1 and scope = :split_0", + null)).thenReturn(policyData); + servlet.setPolicyController(controller); + servlet.setTestUserId("Test"); + servlet.doPost(request, response); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } } - } - - @SuppressWarnings("static-access") - @Test - public void editClosedLoopPMPolicyTest(){ - List policyData = new ArrayList<>(); + } + + @SuppressWarnings("static-access") + @Test + public void editClosedLoopPMPolicyTest() { + List policyData = new ArrayList<>(); String policyContent = ""; String configData = ""; try { - ClassLoader classLoader = getClass().getClassLoader(); - policyContent = IOUtils.toString(classLoader.getResourceAsStream("Config_PM_TestClosedLoopPMPolicy.1.xml")); - configData = IOUtils.toString(classLoader.getResourceAsStream("com.Config_PM_TestClosedLoopPMPolicy.1.json")); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - } + ClassLoader classLoader = getClass().getClassLoader(); + policyContent = IOUtils.toString(classLoader.getResourceAsStream("Config_PM_TestClosedLoopPMPolicy.1.xml")); + configData = + IOUtils.toString(classLoader.getResourceAsStream("com.Config_PM_TestClosedLoopPMPolicy.1.json")); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + } PolicyEntity entity = new PolicyEntity(); entity.setPolicyName("Config_PM_TestClosedLoopPMPolicy.1.xml"); entity.setPolicyData(policyContent); @@ -376,48 +450,49 @@ public class PolicyManagerServletTest extends Mockito{ configurationEntity.setDescription("test"); entity.setConfigurationData(configurationEntity); policyData.add(entity); - PolicyManagerServlet servlet = new PolicyManagerServlet(); - HttpServletRequest request = mock(HttpServletRequest.class); - HttpServletResponse response = mock(HttpServletResponse.class); + PolicyManagerServlet servlet = new PolicyManagerServlet(); PolicyController controller = mock(PolicyController.class); List list = new ArrayList<>(); - list.add("{params: { mode: 'EDITFILE', path: '/com/Config_PM_TestClosedLoopPMPolicy.1.xml', onlyFolders: false}}"); - for(int i =0; i < list.size(); i++){ - BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); + list.add("{params: { mode: 'EDITFILE', path: '/com/Config_PM_TestClosedLoopPMPolicy.1.xml'," + + " onlyFolders: false}}"); + for (int i = 0; i < list.size(); i++) { + BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); try { - when(request.getReader()).thenReturn(reader); - when(controller.getRoles("Test")).thenReturn(rolesdata); - when(controller.getDataByQuery("FROM PolicyEntity where policyName = 'Config_PM_TestClosedLoopPMPolicy.1.xml' and scope ='com'", new SimpleBindings())).thenReturn(policyData); - servlet.setPolicyController(controller); - servlet.setTestUserId("Test"); - servlet.doPost(request, response); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - fail(); - } + when(request.getReader()).thenReturn(reader); + when(controller.getRoles("Test")).thenReturn(rolesdata); + when(controller.getDataByQuery("FROM PolicyEntity where policyName = :split_1 and scope = :split_0", + null)).thenReturn(policyData); + servlet.setPolicyController(controller); + servlet.setTestUserId("Test"); + servlet.doPost(request, response); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } } - } - - @SuppressWarnings("static-access") - @Test - public void editMicroServicePolicyTest(){ - GroupPolicyScopeList groupData = new GroupPolicyScopeList(); - groupData.setGroupName("Test"); - groupData.setGroupList("resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=SampleClosedLoop"); - List groupListData = new ArrayList<>(); - groupListData.add(groupData); - commonClassDao = mock(CommonClassDao.class); - CreateDcaeMicroServiceController.setCommonClassDao(commonClassDao); - List policyData = new ArrayList<>(); + } + + @SuppressWarnings("static-access") + @Test + public void editMicroServicePolicyTest() { + GroupPolicyScopeList groupData = new GroupPolicyScopeList(); + groupData.setGroupName("Test"); + groupData.setGroupList("resource=SampleResource,service=SampleService,type=SampleType," + + "closedLoopControlName=SampleClosedLoop"); + List groupListData = new ArrayList<>(); + groupListData.add(groupData); + commonClassDao = mock(CommonClassDao.class); + CreateDcaeMicroServiceController.setCommonClassDao(commonClassDao); + List policyData = new ArrayList<>(); String policyContent = ""; String configData = ""; try { - ClassLoader classLoader = getClass().getClassLoader(); - policyContent = IOUtils.toString(classLoader.getResourceAsStream("Config_MS_vFirewall.1.xml")); - configData = IOUtils.toString(classLoader.getResourceAsStream("com.Config_MS_vFirewall.1.json")); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - } + ClassLoader classLoader = getClass().getClassLoader(); + policyContent = IOUtils.toString(classLoader.getResourceAsStream("Config_MS_vFirewall.1.xml")); + configData = IOUtils.toString(classLoader.getResourceAsStream("com.Config_MS_vFirewall.1.json")); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + } PolicyEntity entity = new PolicyEntity(); entity.setPolicyName("Config_MS_vFirewall.1.xml"); entity.setPolicyData(policyContent); @@ -429,42 +504,43 @@ public class PolicyManagerServletTest extends Mockito{ configurationEntity.setDescription("test"); entity.setConfigurationData(configurationEntity); policyData.add(entity); - PolicyManagerServlet servlet = new PolicyManagerServlet(); - HttpServletRequest request = mock(HttpServletRequest.class); - HttpServletResponse response = mock(HttpServletResponse.class); + PolicyManagerServlet servlet = new PolicyManagerServlet(); PolicyController controller = mock(PolicyController.class); List list = new ArrayList<>(); list.add("{params: { mode: 'EDITFILE', path: '/com/Config_MS_vFirewall.1.xml', onlyFolders: false}}"); - for(int i =0; i < list.size(); i++){ - BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); + for (int i = 0; i < list.size(); i++) { + BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); try { - when(request.getReader()).thenReturn(reader); - when(commonClassDao.getDataById(GroupPolicyScopeList.class, "groupList", "resource=SampleResource,service=SampleService,type=SampleType,closedLoopControlName=SampleClosedLoop")).thenReturn(groupListData); - when(controller.getRoles("Test")).thenReturn(rolesdata); - when(controller.getDataByQuery("FROM PolicyEntity where policyName = 'Config_MS_vFirewall.1.xml' and scope ='com'", new SimpleBindings())).thenReturn(policyData); - servlet.setPolicyController(controller); - servlet.setTestUserId("Test"); - servlet.doPost(request, response); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - fail(); - } + when(request.getReader()).thenReturn(reader); + when(commonClassDao.getDataById(GroupPolicyScopeList.class, "groupList", + "resource=SampleResource,service=SampleService,type=SampleType," + + "closedLoopControlName=SampleClosedLoop")).thenReturn(groupListData); + when(controller.getRoles("Test")).thenReturn(rolesdata); + when(controller.getDataByQuery("FROM PolicyEntity where policyName = :split_1 and scope = :split_0", + null)).thenReturn(policyData); + servlet.setPolicyController(controller); + servlet.setTestUserId("Test"); + servlet.doPost(request, response); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } } - } - - @SuppressWarnings("static-access") - @Test - public void editFirewallPolicyTest(){ - List policyData = new ArrayList<>(); + } + + @SuppressWarnings("static-access") + @Test + public void editFirewallPolicyTest() { + List policyData = new ArrayList<>(); String policyContent = ""; String configData = ""; try { - ClassLoader classLoader = getClass().getClassLoader(); - policyContent = IOUtils.toString(classLoader.getResourceAsStream("Config_FW_TestFireWallPolicy.1.xml")); - configData = IOUtils.toString(classLoader.getResourceAsStream("com.Config_FW_TestFireWallPolicy.1.json")); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - } + ClassLoader classLoader = getClass().getClassLoader(); + policyContent = IOUtils.toString(classLoader.getResourceAsStream("Config_FW_TestFireWallPolicy.1.xml")); + configData = IOUtils.toString(classLoader.getResourceAsStream("com.Config_FW_TestFireWallPolicy.1.json")); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + } PolicyEntity entity = new PolicyEntity(); entity.setPolicyName("Config_FW_TestFireWallPolicy.1.xml"); entity.setPolicyData(policyContent); @@ -476,41 +552,41 @@ public class PolicyManagerServletTest extends Mockito{ configurationEntity.setDescription("test"); entity.setConfigurationData(configurationEntity); policyData.add(entity); - PolicyManagerServlet servlet = new PolicyManagerServlet(); - HttpServletRequest request = mock(HttpServletRequest.class); - HttpServletResponse response = mock(HttpServletResponse.class); + PolicyManagerServlet servlet = new PolicyManagerServlet(); PolicyController controller = mock(PolicyController.class); List list = new ArrayList<>(); - list.add("{params: { mode: 'EDITFILE', path: '/com/Config_FW_TestFireWallPolicy.1.xml', onlyFolders: false}}"); - for(int i =0; i < list.size(); i++){ - BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); + list.add("{params: { mode: 'EDITFILE', path: '/com/Config_FW_TestFireWallPolicy.1.xml'," + + " onlyFolders: false}}"); + for (int i = 0; i < list.size(); i++) { + BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); try { - when(request.getReader()).thenReturn(reader); - when(controller.getRoles("Test")).thenReturn(rolesdata); - when(controller.getDataByQuery("FROM PolicyEntity where policyName = 'Config_FW_TestFireWallPolicy.1.xml' and scope ='com'", new SimpleBindings())).thenReturn(policyData); - servlet.setPolicyController(controller); - servlet.setTestUserId("Test"); - servlet.doPost(request, response); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - fail(); - } + when(request.getReader()).thenReturn(reader); + when(controller.getRoles("Test")).thenReturn(rolesdata); + when(controller.getDataByQuery("FROM PolicyEntity where policyName = :split_1 and scope = :split_0", + null)).thenReturn(policyData); + servlet.setPolicyController(controller); + servlet.setTestUserId("Test"); + servlet.doPost(request, response); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } } - } - - @SuppressWarnings("static-access") - @Test - public void editActionPolicyTest(){ - List policyData = new ArrayList<>(); + } + + @SuppressWarnings("static-access") + @Test + public void editActionPolicyTest() { + List policyData = new ArrayList<>(); String policyContent = ""; String configData = ""; try { - ClassLoader classLoader = getClass().getClassLoader(); - policyContent = IOUtils.toString(classLoader.getResourceAsStream("Action_TestActionPolicy.1.xml")); - configData = IOUtils.toString(classLoader.getResourceAsStream("com.Action_TestActionPolicy.1.json")); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - } + ClassLoader classLoader = getClass().getClassLoader(); + policyContent = IOUtils.toString(classLoader.getResourceAsStream("Action_TestActionPolicy.1.xml")); + configData = IOUtils.toString(classLoader.getResourceAsStream("com.Action_TestActionPolicy.1.json")); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + } PolicyEntity entity = new PolicyEntity(); entity.setPolicyName("Action_TestActionPolicy.1.xml"); entity.setPolicyData(policyContent); @@ -520,63 +596,154 @@ public class PolicyManagerServletTest extends Mockito{ configurationEntity.setActionBodyName("com.Action_TestActionPolicy.1.json"); entity.setActionBodyEntity(configurationEntity); policyData.add(entity); - PolicyManagerServlet servlet = new PolicyManagerServlet(); - HttpServletRequest request = mock(HttpServletRequest.class); - HttpServletResponse response = mock(HttpServletResponse.class); + PolicyManagerServlet servlet = new PolicyManagerServlet(); PolicyController controller = mock(PolicyController.class); List list = new ArrayList<>(); - list.add("{params: { mode: 'EDITFILE', path: '/com/Action_TestActionPolicy.1.xml', onlyFolders: false}}"); - for(int i =0; i < list.size(); i++){ - BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); + list.add("{params: { mode: 'EDITFILE', path: '/com/Action_TestActionPolicy.1.xml'," + " onlyFolders: false}}"); + for (int i = 0; i < list.size(); i++) { + BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); try { - when(request.getReader()).thenReturn(reader); - when(controller.getRoles("Test")).thenReturn(rolesdata); - when(controller.getDataByQuery("FROM PolicyEntity where policyName = 'Action_TestActionPolicy.1.xml' and scope ='com'", new SimpleBindings())).thenReturn(policyData); - servlet.setPolicyController(controller); - servlet.setTestUserId("Test"); - servlet.doPost(request, response); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - fail(); - } + when(request.getReader()).thenReturn(reader); + when(controller.getRoles("Test")).thenReturn(rolesdata); + when(controller.getDataByQuery("FROM PolicyEntity where policyName = :split_1 and scope = :split_0", + null)).thenReturn(policyData); + servlet.setPolicyController(controller); + servlet.setTestUserId("Test"); + servlet.doPost(request, response); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } } - } - - @SuppressWarnings("static-access") - @Test - public void editDecisionPolicyTest(){ - List policyData = new ArrayList<>(); + } + + @SuppressWarnings("static-access") + @Test + public void editDecisionPolicyTest() { + List policyData = new ArrayList<>(); String policyContent = ""; try { - ClassLoader classLoader = getClass().getClassLoader(); - policyContent = IOUtils.toString(classLoader.getResourceAsStream("Decision_TestDecisionPolicyWithRuleAlgorithms.1.xml")); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - } + ClassLoader classLoader = getClass().getClassLoader(); + policyContent = IOUtils + .toString(classLoader.getResourceAsStream("Decision_TestDecisionPolicyWithRuleAlgorithms.1.xml")); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + } PolicyEntity entity = new PolicyEntity(); entity.setPolicyName("Decision_TestDecisionPolicyWithRuleAlgorithms.1.xml"); entity.setPolicyData(policyContent); entity.setScope("com"); policyData.add(entity); - PolicyManagerServlet servlet = new PolicyManagerServlet(); - HttpServletRequest request = mock(HttpServletRequest.class); - HttpServletResponse response = mock(HttpServletResponse.class); + PolicyManagerServlet servlet = new PolicyManagerServlet(); PolicyController controller = mock(PolicyController.class); List list = new ArrayList<>(); - list.add("{params: { mode: 'EDITFILE', path: '/com/Decision_TestDecisionPolicyWithRuleAlgorithms.1.xml', onlyFolders: false}}"); - for(int i =0; i < list.size(); i++){ - BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); + list.add("{params: { mode: 'EDITFILE', path: '/com/Decision_TestDecisionPolicyWithRuleAlgorithms.1.xml'," + + " onlyFolders: false}}"); + for (int i = 0; i < list.size(); i++) { + BufferedReader reader = new BufferedReader(new StringReader(list.get(i))); + try { + when(request.getReader()).thenReturn(reader); + when(controller.getRoles("Test")).thenReturn(rolesdata); + when(controller.getDataByQuery("FROM PolicyEntity where policyName = :split_1 and scope = :split_0", + null)).thenReturn(policyData); + servlet.setPolicyController(controller); + servlet.setTestUserId("Test"); + servlet.doPost(request, response); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } + } + } + + @Test + public void testAddScope() { + PolicyManagerServlet servlet = new PolicyManagerServlet(); + PolicyController controller = mock(PolicyController.class); + List readers = new ArrayList<>(); + readers.add(new BufferedReader(new StringReader("{params: { mode: 'ADDFOLDER', path: '/', name: 'Test'}}"))); + readers.add(new BufferedReader(new StringReader("{params: { mode: 'ADDFOLDER', path: '/', name: 'Test*&'}}"))); + readers.add(new BufferedReader( + new StringReader("{params: { mode: 'ADDFOLDER', path: '/Test', subScopename: 'Test1'}}"))); + for (int i = 0; i < readers.size(); i++) { + try { + when(request.getReader()).thenReturn(readers.get(i)); + PolicyManagerServlet.setPolicyController(controller); + servlet.doPost(request, response); + assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("success")); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } + } + } + + @Test + public void testClone() { + PolicyManagerServlet servlet = new PolicyManagerServlet(); + PolicyController controller = mock(PolicyController.class); + List readers = new ArrayList<>(); + when(controller.getEntityItem(ConfigurationDataEntity.class, "configurationName", + "com.Config_SampleTest1206.1.txt")).thenReturn(configurationEntity); + when(controller.getDataByQuery( + "FROM PolicyEntity where policyName = :oldPolicySplit_1 and scope = :oldPolicySplit_0", null)) + .thenReturn(basePolicyData); + readers.add(new BufferedReader(new StringReader("{params: { mode: 'COPY', path: 'com.Config_test.1.xml'," + + " newPath: 'com.Config_testClone.1.xml'}}"))); + for (int i = 0; i < readers.size(); i++) { + try { + when(request.getReader()).thenReturn(readers.get(i)); + PolicyManagerServlet.setPolicyController(controller); + servlet.doPost(request, response); + assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("success")); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } + } + } + + @Test + public void testRename() { + PolicyManagerServlet servlet = new PolicyManagerServlet(); + PolicyController controller = mock(PolicyController.class); + List readers = new ArrayList<>(); + when(controller.getEntityItem(ConfigurationDataEntity.class, "configurationName", + "com.Config_SampleTest1206.1.txt")).thenReturn(configurationEntity); + when(controller.getDataByQuery( + "FROM PolicyEntity where policyName = :oldPolicySplit_1 and scope = :oldPolicySplit_0", null)) + .thenReturn(basePolicyData); + readers.add(new BufferedReader(new StringReader("{params: { mode: 'RENAME', path: 'com.Config_test.1.xml'," + + " newPath: 'com.Config_testClone.1.xml'}}"))); + for (int i = 0; i < readers.size(); i++) { + try { + when(request.getReader()).thenReturn(readers.get(i)); + PolicyManagerServlet.setPolicyController(controller); + servlet.doPost(request, response); + assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("success")); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } + } + } + + @Test + public void testRenameScope() { + PolicyManagerServlet servlet = new PolicyManagerServlet(); + PolicyController controller = mock(PolicyController.class); + List readers = new ArrayList<>(); + readers.add(new BufferedReader(new StringReader("{params: { mode: 'RENAME', path: 'com', newPath: 'Test'}}"))); + for (int i = 0; i < readers.size(); i++) { try { - when(request.getReader()).thenReturn(reader); - when(controller.getRoles("Test")).thenReturn(rolesdata); - when(controller.getDataByQuery("FROM PolicyEntity where policyName = 'Decision_TestDecisionPolicyWithRuleAlgorithms.1.xml' and scope ='com'", new SimpleBindings())).thenReturn(policyData); - servlet.setPolicyController(controller); - servlet.setTestUserId("Test"); - servlet.doPost(request, response); - } catch (Exception e1) { - logger.error("Exception Occured"+e1); - fail(); - } + when(request.getReader()).thenReturn(readers.get(i)); + PolicyManagerServlet.setPolicyController(controller); + servlet.doPost(request, response); + assertTrue(response.getContentAsString() != null && response.getContentAsString().contains("success")); + } catch (Exception e1) { + logger.error("Exception Occured" + e1); + fail(); + } } - } + } }