diff options
author | Krishnajinka <kris.jinka@samsung.com> | 2018-08-03 10:36:19 +0900 |
---|---|---|
committer | Krishnajinka <kris.jinka@samsung.com> | 2018-08-03 10:36:35 +0900 |
commit | 4068da123ee33b532b4b52f15545c76a978f977e (patch) | |
tree | 2f0e6393d1e204b6d0b32e58c4d9a1625c2d6ad4 /ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components | |
parent | f0fec2a861ea0a92b27b40882ea38f9422cde0c6 (diff) |
Modify ONAP PAP REST classes basic checkstyle
Modify tabs to space for checkstyle issue fix in ONAP PAP REST
module. It helps future reviews and refactoring. Remaining classes
Issue-ID: POLICY-1014
Change-Id: I677eadac9e8364b388be922024528c27fd1e2545
Signed-off-by: Krishnajinka <kris.jinka@samsung.com>
Diffstat (limited to 'ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components')
7 files changed, 949 insertions, 949 deletions
diff --git a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/ActionPolicyTest.java b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/ActionPolicyTest.java index cb09becf3..a04859b27 100644 --- a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/ActionPolicyTest.java +++ b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/ActionPolicyTest.java @@ -40,102 +40,102 @@ import com.att.research.xacml.util.XACMLProperties; public class ActionPolicyTest { - - private static Logger logger = FlexLogger.getLogger(ActionPolicyTest.class); - PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); - List<String> dynamicRuleAlgorithmLabels = new LinkedList<>(); - List<String> dynamicRuleAlgorithmCombo = new LinkedList<>(); - List<String> dynamicRuleAlgorithmField1 = new LinkedList<>(); - List<String> dynamicRuleAlgorithmField2 = new LinkedList<>(); - Map<String, String> attributeMap = new HashMap<>(); - ActionPolicy component = null; - - - /** - * @throws java.lang.Exception - */ - @Before - public void setUp() throws Exception { - logger.info("setUp: Entering"); - System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME,"src/test/resources/xacml.pap.properties"); - - dynamicRuleAlgorithmLabels.add("test"); - dynamicRuleAlgorithmField1.add("testField1"); - dynamicRuleAlgorithmCombo.add("testCombo"); - dynamicRuleAlgorithmField2.add("testField2"); - - policyAdapter.setPolicyName("Test.Action_junitTest"); - policyAdapter.setPolicyDescription("test"); - policyAdapter.setRuleCombiningAlgId("urn:oasis:names:tc:xacml:3.0:rule-combining-algorithm:permit-overrides"); - policyAdapter.setPolicyType("Action"); - policyAdapter.setEditPolicy(false); - policyAdapter.setDomainDir("Test"); - policyAdapter.setNewFileName("Test.Action_junitTest.1.xml"); - policyAdapter.setHighestVersion(1); - policyAdapter.setPolicyID("urn:xacml:policy:id:"+UUID.randomUUID()); - - policyAdapter.setActionDictHeader(""); - policyAdapter.setActionDictType("REST"); - policyAdapter.setActionDictUrl("onap.org"); - policyAdapter.setActionDictMethod("GET"); - policyAdapter.setActionAttribute("test"); - policyAdapter.setActionBody("test"); - - policyAdapter.setDynamicRuleAlgorithmLabels(dynamicRuleAlgorithmLabels); - policyAdapter.setDynamicRuleAlgorithmCombo(dynamicRuleAlgorithmCombo); - policyAdapter.setDynamicRuleAlgorithmField1(dynamicRuleAlgorithmField1); - policyAdapter.setDynamicRuleAlgorithmField2(dynamicRuleAlgorithmField2); - - attributeMap.put("java", "test"); - policyAdapter.setDynamicFieldConfigAttributes(attributeMap); - - component = new ActionPolicy(policyAdapter, null); + + private static Logger logger = FlexLogger.getLogger(ActionPolicyTest.class); + PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); + List<String> dynamicRuleAlgorithmLabels = new LinkedList<>(); + List<String> dynamicRuleAlgorithmCombo = new LinkedList<>(); + List<String> dynamicRuleAlgorithmField1 = new LinkedList<>(); + List<String> dynamicRuleAlgorithmField2 = new LinkedList<>(); + Map<String, String> attributeMap = new HashMap<>(); + ActionPolicy component = null; + + + /** + * @throws java.lang.Exception + */ + @Before + public void setUp() throws Exception { + logger.info("setUp: Entering"); + System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME,"src/test/resources/xacml.pap.properties"); + + dynamicRuleAlgorithmLabels.add("test"); + dynamicRuleAlgorithmField1.add("testField1"); + dynamicRuleAlgorithmCombo.add("testCombo"); + dynamicRuleAlgorithmField2.add("testField2"); + + policyAdapter.setPolicyName("Test.Action_junitTest"); + policyAdapter.setPolicyDescription("test"); + policyAdapter.setRuleCombiningAlgId("urn:oasis:names:tc:xacml:3.0:rule-combining-algorithm:permit-overrides"); + policyAdapter.setPolicyType("Action"); + policyAdapter.setEditPolicy(false); + policyAdapter.setDomainDir("Test"); + policyAdapter.setNewFileName("Test.Action_junitTest.1.xml"); + policyAdapter.setHighestVersion(1); + policyAdapter.setPolicyID("urn:xacml:policy:id:"+UUID.randomUUID()); + + policyAdapter.setActionDictHeader(""); + policyAdapter.setActionDictType("REST"); + policyAdapter.setActionDictUrl("onap.org"); + policyAdapter.setActionDictMethod("GET"); + policyAdapter.setActionAttribute("test"); + policyAdapter.setActionBody("test"); + + policyAdapter.setDynamicRuleAlgorithmLabels(dynamicRuleAlgorithmLabels); + policyAdapter.setDynamicRuleAlgorithmCombo(dynamicRuleAlgorithmCombo); + policyAdapter.setDynamicRuleAlgorithmField1(dynamicRuleAlgorithmField1); + policyAdapter.setDynamicRuleAlgorithmField2(dynamicRuleAlgorithmField2); + + attributeMap.put("java", "test"); + policyAdapter.setDynamicFieldConfigAttributes(attributeMap); + + component = new ActionPolicy(policyAdapter, null); logger.info("setUp: exit"); - } + } - /** - * @throws java.lang.Exception - */ - @After - public void tearDown() throws Exception { - } + /** + * @throws java.lang.Exception + */ + @After + public void tearDown() throws Exception { + } /* *//** - * Test method for {@link org.openecomp.policy.pap.xacml.rest.components.ActionPolicy#savePolicies()}. - */ - @Test - public void testSavePolicies() { + * Test method for {@link org.openecomp.policy.pap.xacml.rest.components.ActionPolicy#savePolicies()}. + */ + @Test + public void testSavePolicies() { ActionPolicy mockAction = Mockito.mock(component.getClass()); - + Map<String, String> successMap = new HashMap<>(); - successMap.put("success", "success"); + successMap.put("success", "success"); try { - when(mockAction.savePolicies()).thenReturn(successMap); - successMap = mockAction.savePolicies(); - } catch (Exception e) { - logger.error("Exception Occured"+e); - } - assertEquals(successMap.get("success"),"success"); - } - - /** - * Test method for {@link org.openecomp.policy.pap.xacml.rest.components.ActionPolicy#prepareToSave()}. - */ - @Test - public void testPrepareToSave() { - logger.debug("test PrepareToSave Policy: enter"); - boolean response = true; - - try { - response = component.prepareToSave(); - } catch (Exception e) { - logger.error("Exception Occured"+e); - } - assertTrue(response); - - } + when(mockAction.savePolicies()).thenReturn(successMap); + successMap = mockAction.savePolicies(); + } catch (Exception e) { + logger.error("Exception Occured"+e); + } + assertEquals(successMap.get("success"),"success"); + } + + /** + * Test method for {@link org.openecomp.policy.pap.xacml.rest.components.ActionPolicy#prepareToSave()}. + */ + @Test + public void testPrepareToSave() { + logger.debug("test PrepareToSave Policy: enter"); + boolean response = true; + + try { + response = component.prepareToSave(); + } catch (Exception e) { + logger.error("Exception Occured"+e); + } + assertTrue(response); + + } }
\ No newline at end of file diff --git a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/ClosedLoopPolicyTest.java b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/ClosedLoopPolicyTest.java index 9c5f71f55..542d45e3e 100644 --- a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/ClosedLoopPolicyTest.java +++ b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/ClosedLoopPolicyTest.java @@ -31,38 +31,38 @@ import com.att.research.xacml.api.pap.PAPException; import java.nio.charset.StandardCharsets; public class ClosedLoopPolicyTest { - @Rule + @Rule public ExpectedException thrown = ExpectedException.none(); - @Test - public void testConstructor1() { - thrown.expect(NullPointerException.class); - ClosedLoopPolicy policy = new ClosedLoopPolicy(); - policy.getCorrectPolicyDataObject(); - } - - @Test - public void testConstructor2() { - PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); - ClosedLoopPolicy policy = new ClosedLoopPolicy(policyAdapter); - assertNull(policy.getCorrectPolicyDataObject()); - } - - @Test - public void testReadFile() throws IOException { - thrown.expect(IOException.class); - String read = ClosedLoopPolicy.readFile("/foo", StandardCharsets.UTF_8); - fail("Expecting an exception."); - } - - @Test - public void testPrepareToSave() throws PAPException { - PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); - ClosedLoopPolicy policy = new ClosedLoopPolicy(policyAdapter); - policyAdapter.setHighestVersion(1); - policyAdapter.setPolicyType("Config"); - policyAdapter.setNewFileName("foo.xml"); - policy.prepareToSave(); - assertEquals(policy.isPreparedToSave(), true); - } + @Test + public void testConstructor1() { + thrown.expect(NullPointerException.class); + ClosedLoopPolicy policy = new ClosedLoopPolicy(); + policy.getCorrectPolicyDataObject(); + } + + @Test + public void testConstructor2() { + PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); + ClosedLoopPolicy policy = new ClosedLoopPolicy(policyAdapter); + assertNull(policy.getCorrectPolicyDataObject()); + } + + @Test + public void testReadFile() throws IOException { + thrown.expect(IOException.class); + String read = ClosedLoopPolicy.readFile("/foo", StandardCharsets.UTF_8); + fail("Expecting an exception."); + } + + @Test + public void testPrepareToSave() throws PAPException { + PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); + ClosedLoopPolicy policy = new ClosedLoopPolicy(policyAdapter); + policyAdapter.setHighestVersion(1); + policyAdapter.setPolicyType("Config"); + policyAdapter.setNewFileName("foo.xml"); + policy.prepareToSave(); + assertEquals(policy.isPreparedToSave(), true); + } }
\ No newline at end of file diff --git a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/DecisionPolicyTest.java b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/DecisionPolicyTest.java index e16dd9889..3cf3128dd 100644 --- a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/DecisionPolicyTest.java +++ b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/DecisionPolicyTest.java @@ -41,104 +41,104 @@ import com.att.research.xacml.util.XACMLProperties; public class DecisionPolicyTest { - private static Logger logger = FlexLogger.getLogger(DecisionPolicyTest.class); - PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); - RainyDayParams rainyday = new RainyDayParams(); - Map<String, String> attributeMap = new HashMap<>(); - Map<String, String> treatmentMap = new HashMap<>(); - Map<String, String> settingsMap = new HashMap<>(); - List<String> errorCodeList = new LinkedList<>(); - List<String> treatmentList = new LinkedList<>(); - List<String> dynamicRuleAlgorithmLabels = new LinkedList<>(); - List<String> dynamicRuleAlgorithmCombo = new LinkedList<>(); - List<String> dynamicRuleAlgorithmField1 = new LinkedList<>(); - List<String> dynamicRuleAlgorithmField2 = new LinkedList<>(); - List<Object> dynamicVariableList = new LinkedList<>(); - List<String> dataTypeList = new LinkedList<>(); - DecisionPolicy component = null; - - /** - * @throws java.lang.Exception - */ - @Before - public void setUp() throws Exception { - logger.info("setUp: Entering"); - System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME,"src/test/resources/xacml.pap.properties"); - - policyAdapter.setPolicyName("Test.Decision_junitTest.1.xml"); - policyAdapter.setPolicyDescription("testing"); - policyAdapter.setRuleCombiningAlgId("urn:oasis:names:tc:xacml:3.0:rule-combining-algorithm:permit-overrides"); - policyAdapter.setPolicyType("Decision"); - policyAdapter.setEditPolicy(false); - policyAdapter.setDomainDir("Test"); - policyAdapter.setNewFileName("/src/test/resources/Test/client.properties"); - policyAdapter.setHighestVersion(1); - policyAdapter.setPolicyID("urn:xacml:policy:id:"+UUID.randomUUID()); - policyAdapter.setOnapName("MSO"); - - //rainy day attributes - attributeMap.put("ServiceType", "S"); - attributeMap.put("VNFType", "V"); - attributeMap.put("BB_ID", "testBB"); - attributeMap.put("WorkStep", "1"); - - dynamicRuleAlgorithmLabels.add("test1"); - dynamicRuleAlgorithmField1.add("testField1"); - dynamicRuleAlgorithmCombo.add("testruleCombo"); - dynamicRuleAlgorithmField2.add("testField2"); - - policyAdapter.setDynamicRuleAlgorithmLabels(dynamicRuleAlgorithmLabels); - policyAdapter.setDynamicRuleAlgorithmCombo(dynamicRuleAlgorithmCombo); - policyAdapter.setDynamicRuleAlgorithmField1(dynamicRuleAlgorithmField1); - policyAdapter.setDynamicRuleAlgorithmField2(dynamicRuleAlgorithmField2); - policyAdapter.setDynamicVariableList(dynamicVariableList); - policyAdapter.setDynamicSettingsMap(settingsMap); - policyAdapter.setDataTypeList(dataTypeList); - - policyAdapter.setDynamicFieldConfigAttributes(attributeMap); - policyAdapter.setRainydayMap(treatmentMap); - policyAdapter.setRainyday(rainyday); - - component = new DecisionPolicy(policyAdapter, null); + private static Logger logger = FlexLogger.getLogger(DecisionPolicyTest.class); + PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); + RainyDayParams rainyday = new RainyDayParams(); + Map<String, String> attributeMap = new HashMap<>(); + Map<String, String> treatmentMap = new HashMap<>(); + Map<String, String> settingsMap = new HashMap<>(); + List<String> errorCodeList = new LinkedList<>(); + List<String> treatmentList = new LinkedList<>(); + List<String> dynamicRuleAlgorithmLabels = new LinkedList<>(); + List<String> dynamicRuleAlgorithmCombo = new LinkedList<>(); + List<String> dynamicRuleAlgorithmField1 = new LinkedList<>(); + List<String> dynamicRuleAlgorithmField2 = new LinkedList<>(); + List<Object> dynamicVariableList = new LinkedList<>(); + List<String> dataTypeList = new LinkedList<>(); + DecisionPolicy component = null; + + /** + * @throws java.lang.Exception + */ + @Before + public void setUp() throws Exception { + logger.info("setUp: Entering"); + System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME,"src/test/resources/xacml.pap.properties"); + + policyAdapter.setPolicyName("Test.Decision_junitTest.1.xml"); + policyAdapter.setPolicyDescription("testing"); + policyAdapter.setRuleCombiningAlgId("urn:oasis:names:tc:xacml:3.0:rule-combining-algorithm:permit-overrides"); + policyAdapter.setPolicyType("Decision"); + policyAdapter.setEditPolicy(false); + policyAdapter.setDomainDir("Test"); + policyAdapter.setNewFileName("/src/test/resources/Test/client.properties"); + policyAdapter.setHighestVersion(1); + policyAdapter.setPolicyID("urn:xacml:policy:id:"+UUID.randomUUID()); + policyAdapter.setOnapName("MSO"); + + //rainy day attributes + attributeMap.put("ServiceType", "S"); + attributeMap.put("VNFType", "V"); + attributeMap.put("BB_ID", "testBB"); + attributeMap.put("WorkStep", "1"); + + dynamicRuleAlgorithmLabels.add("test1"); + dynamicRuleAlgorithmField1.add("testField1"); + dynamicRuleAlgorithmCombo.add("testruleCombo"); + dynamicRuleAlgorithmField2.add("testField2"); + + policyAdapter.setDynamicRuleAlgorithmLabels(dynamicRuleAlgorithmLabels); + policyAdapter.setDynamicRuleAlgorithmCombo(dynamicRuleAlgorithmCombo); + policyAdapter.setDynamicRuleAlgorithmField1(dynamicRuleAlgorithmField1); + policyAdapter.setDynamicRuleAlgorithmField2(dynamicRuleAlgorithmField2); + policyAdapter.setDynamicVariableList(dynamicVariableList); + policyAdapter.setDynamicSettingsMap(settingsMap); + policyAdapter.setDataTypeList(dataTypeList); + + policyAdapter.setDynamicFieldConfigAttributes(attributeMap); + policyAdapter.setRainydayMap(treatmentMap); + policyAdapter.setRainyday(rainyday); + + component = new DecisionPolicy(policyAdapter, null); logger.info("setUp: exit"); - } + } - /** - * Test method for {@link org.openecomp.policy.pap.xacml.rest.components.DecisionPolicy#savePolicies()}. - */ - @Test - public void testSavePolicies() { + /** + * Test method for {@link org.openecomp.policy.pap.xacml.rest.components.DecisionPolicy#savePolicies()}. + */ + @Test + public void testSavePolicies() { DecisionPolicy mockDecision = Mockito.mock(component.getClass()); Map<String, String> successMap = new HashMap<>(); - successMap.put("success", "success"); - + successMap.put("success", "success"); + + try { + when(mockDecision.savePolicies()).thenReturn(successMap); + successMap = mockDecision.savePolicies(); + } catch (Exception e) { + e.printStackTrace(); + } + + assertEquals(successMap.get("success"),"success"); + } + + /** + * Test method for {@link org.openecomp.policy.pap.xacml.rest.components.DecisionPolicy#prepareToSave()}. + */ + @Test + public void testPrepareToSaveRainyDay() { + logger.debug("test PrepareToSave Policy: enter"); + policyAdapter.setRuleProvider("Rainy_Day"); + component = new DecisionPolicy(policyAdapter, null); + boolean response = false; + try { - when(mockDecision.savePolicies()).thenReturn(successMap); - successMap = mockDecision.savePolicies(); - } catch (Exception e) { - e.printStackTrace(); - } - - assertEquals(successMap.get("success"),"success"); - } - - /** - * Test method for {@link org.openecomp.policy.pap.xacml.rest.components.DecisionPolicy#prepareToSave()}. - */ - @Test - public void testPrepareToSaveRainyDay() { - logger.debug("test PrepareToSave Policy: enter"); - policyAdapter.setRuleProvider("Rainy_Day"); - component = new DecisionPolicy(policyAdapter, null); - boolean response = false; - - try { - response = component.prepareToSave(); - } catch (Exception e) { - logger.error("Exception Occured"+e); - } - assertTrue(response); - } + response = component.prepareToSave(); + } catch (Exception e) { + logger.error("Exception Occured"+e); + } + assertTrue(response); + } }
\ No newline at end of file diff --git a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/FirewallConfigPolicyTest.java b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/FirewallConfigPolicyTest.java index 0dd919a35..7f3ebb3b4 100644 --- a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/FirewallConfigPolicyTest.java +++ b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/FirewallConfigPolicyTest.java @@ -42,103 +42,103 @@ import com.att.research.xacml.util.XACMLProperties; public class FirewallConfigPolicyTest { - - private static Logger logger = FlexLogger.getLogger(FirewallConfigPolicyTest.class); - PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); - Map<String, String> attributeMap = new HashMap<>(); - FirewallConfigPolicy component = null; + + private static Logger logger = FlexLogger.getLogger(FirewallConfigPolicyTest.class); + PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); + Map<String, String> attributeMap = new HashMap<>(); + FirewallConfigPolicy component = null; FirewallConfigPolicy mockFWConfig = null; private XACMLPAPTest papTest; - /** - * @throws java.lang.Exception - */ - @Before - public void setUp() throws Exception { - logger.info("setup: enter"); - System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME,"src/test/resources/xacml.pap.properties"); - - policyAdapter.setPolicyName("FWjunitTest"); - policyAdapter.setPolicyDescription("test"); - policyAdapter.setRuleCombiningAlgId("urn:oasis:names:tc:xacml:3.0:rule-combining-algorithm:permit-overrides"); - policyAdapter.setPolicyType("Config"); - policyAdapter.setConfigPolicyType("Firewall Config"); - policyAdapter.setEditPolicy(false); - policyAdapter.setDomainDir("Test"); - policyAdapter.setNewFileName("Test.Config_FW_junitTest.1.xml"); - policyAdapter.setHighestVersion(1); - policyAdapter.setVersion(String.valueOf(1)); - policyAdapter.setPolicyID("urn:xacml:policy:id:"+UUID.randomUUID()); - policyAdapter.setRuleID(""); - policyAdapter.setConfigName("testname"); - policyAdapter.setGuard("True"); - policyAdapter.setRiskLevel("3"); - policyAdapter.setRiskType("RiskTest"); - policyAdapter.setSecurityZone("CraigSecurityZone"); - policyAdapter.setUserId("API"); - - attributeMap.put("testJunits", "test"); - policyAdapter.setDynamicFieldConfigAttributes(attributeMap); - - component = new FirewallConfigPolicy(policyAdapter); - mockFWConfig = Mockito.mock(FirewallConfigPolicy.class); - papTest = new XACMLPAPTest(); - papTest.setDBDao(); + /** + * @throws java.lang.Exception + */ + @Before + public void setUp() throws Exception { + logger.info("setup: enter"); + System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME,"src/test/resources/xacml.pap.properties"); + + policyAdapter.setPolicyName("FWjunitTest"); + policyAdapter.setPolicyDescription("test"); + policyAdapter.setRuleCombiningAlgId("urn:oasis:names:tc:xacml:3.0:rule-combining-algorithm:permit-overrides"); + policyAdapter.setPolicyType("Config"); + policyAdapter.setConfigPolicyType("Firewall Config"); + policyAdapter.setEditPolicy(false); + policyAdapter.setDomainDir("Test"); + policyAdapter.setNewFileName("Test.Config_FW_junitTest.1.xml"); + policyAdapter.setHighestVersion(1); + policyAdapter.setVersion(String.valueOf(1)); + policyAdapter.setPolicyID("urn:xacml:policy:id:"+UUID.randomUUID()); + policyAdapter.setRuleID(""); + policyAdapter.setConfigName("testname"); + policyAdapter.setGuard("True"); + policyAdapter.setRiskLevel("3"); + policyAdapter.setRiskType("RiskTest"); + policyAdapter.setSecurityZone("CraigSecurityZone"); + policyAdapter.setUserId("API"); + + attributeMap.put("testJunits", "test"); + policyAdapter.setDynamicFieldConfigAttributes(attributeMap); + + component = new FirewallConfigPolicy(policyAdapter); + mockFWConfig = Mockito.mock(FirewallConfigPolicy.class); + papTest = new XACMLPAPTest(); + papTest.setDBDao(); logger.info("setUp: exit"); - - } - - /** - * @throws java.lang.Exception - */ - @After - public void tearDown() throws Exception { - } - - /** - * Test method for {@link org.openecomp.policy.pap.xacml.rest.components.FirewallConfigPolicy#savePolicies()}. - */ - @Test - public void testSavePolicies() { + + } + + /** + * @throws java.lang.Exception + */ + @After + public void tearDown() throws Exception { + } + + /** + * Test method for {@link org.openecomp.policy.pap.xacml.rest.components.FirewallConfigPolicy#savePolicies()}. + */ + @Test + public void testSavePolicies() { Map<String, String> successMap = new HashMap<>(); successMap.put("success", "success"); - try { - when(mockFWConfig.savePolicies()).thenReturn(successMap); - successMap = mockFWConfig.savePolicies(); - } catch (Exception e) { - logger.error("Exception Occured"+e); - } - } - - /** - * Test method for {@link org.openecomp.policy.pap.xacml.rest.components.FirewallConfigPolicy#prepareToSave()}. - */ - @Test - public void testPrepareToSave() { - logger.debug("test prepareToSave Policy: enter"); - - boolean response = false; - try { - when(mockFWConfig.prepareToSave()).thenReturn(true); - response = mockFWConfig.prepareToSave(); - } catch (Exception e) { - logger.error("Exception Occured"+e); - } - assertTrue(response); - - } - - @Test - public void testUpdateJson() throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException{ - FirewallConfigPolicy firewallConfigPolicy = new FirewallConfigPolicy(); - Method method = firewallConfigPolicy.getClass().getDeclaredMethod("updateFirewallDictionaryData", String.class , String.class); - method.setAccessible(true); - String jsonBody= "{\"serviceTypeId\":\"/v0/firewall/pan\",\"configName\":\"TestFwPolicyConfig\",\"deploymentOption\":{\"deployNow\":false},\"securityZoneId\":\"cloudsite:dev1a\",\"serviceGroups\":[{\"name\":\"SSH\",\"description\":\"Sshservice entry in servicelist\",\"type\":\"SERVICE\",\"transportProtocol\":\"tcp\",\"appProtocol\":null,\"ports\":\"22\"}],\"addressGroups\":[{\"name\":\"test\",\"description\":\"Destination\",\"members\":[{\"type\":\"SUBNET\",\"value\":\"127.0.0.1/12\"}]},{\"name\":\"TestServers\",\"description\":\"SourceTestServers for firsttesting\",\"members\":[{\"type\":\"SUBNET\",\"value\":\"127.0.0.1/23\"}]}],\"firewallRuleList\":[{\"position\":\"1\",\"ruleName\":\"FWRuleTestServerToTest\",\"fromZones\":[\"UntrustedZoneTestName\"],\"toZones\":[\"TrustedZoneTestName\"],\"negateSource\":false,\"negateDestination\":false,\"sourceList\":[{\"type\":\"REFERENCE\",\"name\":\"TestServers\"}],\"destinationList\":[{\"type\":\"REFERENCE\",\"name\":\"Test\"}],\"sourceServices\":[],\"destServices\":[{\"type\":\"REFERENCE\",\"name\":\"SSH\"}],\"action\":\"accept\",\"description\":\"FWrule for Test source to Test destination\",\"enabled\":true,\"log\":true}]}"; - String prevJsonBody = "{\"serviceTypeId\":\"/v0/firewall/pan\",\"configName\":\"TestFwPolicy1Config\",\"deploymentOption\":{\"deployNow\":false},\"securityZoneId\":\"cloudsite:dev\",\"vendorServiceId\":\"test\",\"vendorSpecificData\":{\"idMap\":[{\"Id\":\"cloudsite:dev1a\",\"vendorId\":\"deviceGroup:dev\"}]},\"serviceGroups\":[{\"name\":\"SSH\",\"description\":\"Ssh service entry in service list\",\"type\":\"SERVICE\",\"transportProtocol\":\"tcp\",\"appProtocol\":null,\"ports\":\"22\"}],\"addressGroups\":[{\"name\":\"Test\",\"description\":\"Destination Test\",\"members\":[{\"type\":\"SUBNET\",\"value\":\"127.0.0.1/12\"}]},{\"name\":\"TestServers\",\"description\":\"Source TestServers for first testing\",\"members\":[{\"type\":\"SUBNET\",\"value\":\"127.0.0.1/23\"}]}],\"firewallRuleList\":[{\"position\":\"1\",\"ruleName\":\"FWRuleTestServerTot\",\"fromZones\":[\"UntrustedZoneTestName\"],\"toZones\":[\"TrustedZoneTName\"],\"negateSource\":false,\"negateDestination\":false,\"sourceList\":[{\"type\":\"REFERENCE\",\"name\":\"TServers\"}],\"destinationList\":[{\"type\":\"REFERENCE\",\"name\":\"Test\"}],\"sourceServices\":[],\"destServices\":[{\"type\":\"REFERENCE\",\"name\":\"SSH\"}],\"action\":\"accept\",\"description\":\"FW rule for HOHO source to CiscoVCE destination\",\"enabled\":true,\"log\":true}]}"; + try { + when(mockFWConfig.savePolicies()).thenReturn(successMap); + successMap = mockFWConfig.savePolicies(); + } catch (Exception e) { + logger.error("Exception Occured"+e); + } + } + + /** + * Test method for {@link org.openecomp.policy.pap.xacml.rest.components.FirewallConfigPolicy#prepareToSave()}. + */ + @Test + public void testPrepareToSave() { + logger.debug("test prepareToSave Policy: enter"); + + boolean response = false; + try { + when(mockFWConfig.prepareToSave()).thenReturn(true); + response = mockFWConfig.prepareToSave(); + } catch (Exception e) { + logger.error("Exception Occured"+e); + } + assertTrue(response); + + } + + @Test + public void testUpdateJson() throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException{ + FirewallConfigPolicy firewallConfigPolicy = new FirewallConfigPolicy(); + Method method = firewallConfigPolicy.getClass().getDeclaredMethod("updateFirewallDictionaryData", String.class , String.class); + method.setAccessible(true); + String jsonBody= "{\"serviceTypeId\":\"/v0/firewall/pan\",\"configName\":\"TestFwPolicyConfig\",\"deploymentOption\":{\"deployNow\":false},\"securityZoneId\":\"cloudsite:dev1a\",\"serviceGroups\":[{\"name\":\"SSH\",\"description\":\"Sshservice entry in servicelist\",\"type\":\"SERVICE\",\"transportProtocol\":\"tcp\",\"appProtocol\":null,\"ports\":\"22\"}],\"addressGroups\":[{\"name\":\"test\",\"description\":\"Destination\",\"members\":[{\"type\":\"SUBNET\",\"value\":\"127.0.0.1/12\"}]},{\"name\":\"TestServers\",\"description\":\"SourceTestServers for firsttesting\",\"members\":[{\"type\":\"SUBNET\",\"value\":\"127.0.0.1/23\"}]}],\"firewallRuleList\":[{\"position\":\"1\",\"ruleName\":\"FWRuleTestServerToTest\",\"fromZones\":[\"UntrustedZoneTestName\"],\"toZones\":[\"TrustedZoneTestName\"],\"negateSource\":false,\"negateDestination\":false,\"sourceList\":[{\"type\":\"REFERENCE\",\"name\":\"TestServers\"}],\"destinationList\":[{\"type\":\"REFERENCE\",\"name\":\"Test\"}],\"sourceServices\":[],\"destServices\":[{\"type\":\"REFERENCE\",\"name\":\"SSH\"}],\"action\":\"accept\",\"description\":\"FWrule for Test source to Test destination\",\"enabled\":true,\"log\":true}]}"; + String prevJsonBody = "{\"serviceTypeId\":\"/v0/firewall/pan\",\"configName\":\"TestFwPolicy1Config\",\"deploymentOption\":{\"deployNow\":false},\"securityZoneId\":\"cloudsite:dev\",\"vendorServiceId\":\"test\",\"vendorSpecificData\":{\"idMap\":[{\"Id\":\"cloudsite:dev1a\",\"vendorId\":\"deviceGroup:dev\"}]},\"serviceGroups\":[{\"name\":\"SSH\",\"description\":\"Ssh service entry in service list\",\"type\":\"SERVICE\",\"transportProtocol\":\"tcp\",\"appProtocol\":null,\"ports\":\"22\"}],\"addressGroups\":[{\"name\":\"Test\",\"description\":\"Destination Test\",\"members\":[{\"type\":\"SUBNET\",\"value\":\"127.0.0.1/12\"}]},{\"name\":\"TestServers\",\"description\":\"Source TestServers for first testing\",\"members\":[{\"type\":\"SUBNET\",\"value\":\"127.0.0.1/23\"}]}],\"firewallRuleList\":[{\"position\":\"1\",\"ruleName\":\"FWRuleTestServerTot\",\"fromZones\":[\"UntrustedZoneTestName\"],\"toZones\":[\"TrustedZoneTName\"],\"negateSource\":false,\"negateDestination\":false,\"sourceList\":[{\"type\":\"REFERENCE\",\"name\":\"TServers\"}],\"destinationList\":[{\"type\":\"REFERENCE\",\"name\":\"Test\"}],\"sourceServices\":[],\"destServices\":[{\"type\":\"REFERENCE\",\"name\":\"SSH\"}],\"action\":\"accept\",\"description\":\"FW rule for HOHO source to CiscoVCE destination\",\"enabled\":true,\"log\":true}]}"; assertTrue((Boolean) method.invoke(firewallConfigPolicy, jsonBody, prevJsonBody)); - } - - @Test + } + + @Test public void testInsertJson() throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException{ FirewallConfigPolicy firewallConfigPolicy = new FirewallConfigPolicy(); Method method = firewallConfigPolicy.getClass().getDeclaredMethod("insertFirewallDicionaryData", String.class); diff --git a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/MicroServicePolicyTest.java b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/MicroServicePolicyTest.java index a47c2be58..f698bc0c0 100644 --- a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/MicroServicePolicyTest.java +++ b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/MicroServicePolicyTest.java @@ -41,71 +41,71 @@ import java.util.Collections; @RunWith(PowerMockRunner.class) public class MicroServicePolicyTest { - @Rule + @Rule public ExpectedException thrown = ExpectedException.none(); - @Test - public void testConstructor1() { - thrown.expect(NullPointerException.class); - MicroServiceConfigPolicy policy = new MicroServiceConfigPolicy(); - policy.getCorrectPolicyDataObject(); - fail("Expected an exception"); - } - - @Test - public void testConstructor2() { - PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); - MicroServiceConfigPolicy policy = new MicroServiceConfigPolicy(policyAdapter); - assertNull(policy.getCorrectPolicyDataObject()); - } - - @PrepareForTest({MicroServiceConfigPolicy.class}) - @Test - public void testPrepareToSave() throws Exception { - // Need to mock internal dictionary retrieval - CommonClassDaoImpl impl = Mockito.mock(CommonClassDaoImpl.class); - PowerMockito.whenNew(CommonClassDaoImpl.class).withNoArguments().thenReturn(impl); - when(impl.getDataById(any(), anyString(), anyString())).thenReturn(null); - - PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); - MicroServiceConfigPolicy policy = new MicroServiceConfigPolicy(policyAdapter); - policyAdapter.setHighestVersion(1); - policyAdapter.setPolicyType("Config"); - policyAdapter.setNewFileName("foo.xml"); - policyAdapter.setJsonBody("{ \"version\": \"1.0\"}"); - policyAdapter.setServiceType("foo"); - policy.prepareToSave(); - assertEquals(policy.isPreparedToSave(), true); - } - - @Test - public void testCreateConstructor1() { - CreateNewMicroServiceModel model = new CreateNewMicroServiceModel(null, null, null, null); - assertNotNull(model); - } - - @PrepareForTest({CreateNewMicroServiceModel.class}) - @Test - public void testCreateModel() throws Exception { - // Mock file retrieval - File testFile = new File("testFile"); - File[] testList = new File[1]; - testList[0] = testFile; - File impl = Mockito.mock(File.class); - PowerMockito.whenNew(File.class).withAnyArguments().thenReturn(impl); - when(impl.listFiles()).thenReturn(testList); - when(impl.isFile()).thenReturn(true); + @Test + public void testConstructor1() { + thrown.expect(NullPointerException.class); + MicroServiceConfigPolicy policy = new MicroServiceConfigPolicy(); + policy.getCorrectPolicyDataObject(); + fail("Expected an exception"); + } - // Mock internal dictionary retrieval - CommonClassDaoImpl daoImpl = Mockito.mock(CommonClassDaoImpl.class); - PowerMockito.whenNew(CommonClassDaoImpl.class).withNoArguments().thenReturn(daoImpl); - when(daoImpl.getDataById(any(), anyString(), anyString())).thenReturn(Collections.emptyList()); + @Test + public void testConstructor2() { + PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); + MicroServiceConfigPolicy policy = new MicroServiceConfigPolicy(policyAdapter); + assertNull(policy.getCorrectPolicyDataObject()); + } - // Test create methods - String testFileName = "testFile.zip"; - String testVal = "testVal"; - CreateNewMicroServiceModel model = new CreateNewMicroServiceModel(testFileName, testVal, testVal, testVal, testVal); - model.addValuesToNewModel(".xmi"); - model.saveImportService(); - } + @PrepareForTest({MicroServiceConfigPolicy.class}) + @Test + public void testPrepareToSave() throws Exception { + // Need to mock internal dictionary retrieval + CommonClassDaoImpl impl = Mockito.mock(CommonClassDaoImpl.class); + PowerMockito.whenNew(CommonClassDaoImpl.class).withNoArguments().thenReturn(impl); + when(impl.getDataById(any(), anyString(), anyString())).thenReturn(null); + + PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); + MicroServiceConfigPolicy policy = new MicroServiceConfigPolicy(policyAdapter); + policyAdapter.setHighestVersion(1); + policyAdapter.setPolicyType("Config"); + policyAdapter.setNewFileName("foo.xml"); + policyAdapter.setJsonBody("{ \"version\": \"1.0\"}"); + policyAdapter.setServiceType("foo"); + policy.prepareToSave(); + assertEquals(policy.isPreparedToSave(), true); + } + + @Test + public void testCreateConstructor1() { + CreateNewMicroServiceModel model = new CreateNewMicroServiceModel(null, null, null, null); + assertNotNull(model); + } + + @PrepareForTest({CreateNewMicroServiceModel.class}) + @Test + public void testCreateModel() throws Exception { + // Mock file retrieval + File testFile = new File("testFile"); + File[] testList = new File[1]; + testList[0] = testFile; + File impl = Mockito.mock(File.class); + PowerMockito.whenNew(File.class).withAnyArguments().thenReturn(impl); + when(impl.listFiles()).thenReturn(testList); + when(impl.isFile()).thenReturn(true); + + // Mock internal dictionary retrieval + CommonClassDaoImpl daoImpl = Mockito.mock(CommonClassDaoImpl.class); + PowerMockito.whenNew(CommonClassDaoImpl.class).withNoArguments().thenReturn(daoImpl); + when(daoImpl.getDataById(any(), anyString(), anyString())).thenReturn(Collections.emptyList()); + + // Test create methods + String testFileName = "testFile.zip"; + String testVal = "testVal"; + CreateNewMicroServiceModel model = new CreateNewMicroServiceModel(testFileName, testVal, testVal, testVal, testVal); + model.addValuesToNewModel(".xmi"); + model.saveImportService(); + } } diff --git a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/OptimizationConfigPolicyTest.java b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/OptimizationConfigPolicyTest.java index 7b9be6891..25e94c1a2 100644 --- a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/OptimizationConfigPolicyTest.java +++ b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/OptimizationConfigPolicyTest.java @@ -41,65 +41,65 @@ import java.util.Collections; @RunWith(PowerMockRunner.class) public class OptimizationConfigPolicyTest { - @Rule + @Rule public ExpectedException thrown = ExpectedException.none(); - @Test - public void testConstructor1() { - thrown.expect(NullPointerException.class); - OptimizationConfigPolicy policy = new OptimizationConfigPolicy(); - policy.getCorrectPolicyDataObject(); - fail("Expected an exception"); - } - - @Test - public void testConstructor2() { - PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); - OptimizationConfigPolicy policy = new OptimizationConfigPolicy(policyAdapter); - assertNull(policy.getCorrectPolicyDataObject()); - } - - @PrepareForTest({OptimizationConfigPolicy.class}) - @Test - public void testPrepareToSave() throws Exception { - // Need to mock internal dictionary retrieval - CommonClassDaoImpl impl = Mockito.mock(CommonClassDaoImpl.class); - PowerMockito.whenNew(CommonClassDaoImpl.class).withNoArguments().thenReturn(impl); - when(impl.getDataById(any(), anyString(), anyString())).thenReturn(null); - - PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); - OptimizationConfigPolicy policy = new OptimizationConfigPolicy(policyAdapter); - policyAdapter.setHighestVersion(1); - policyAdapter.setPolicyType("Config"); - policyAdapter.setNewFileName("foo.xml"); - policyAdapter.setJsonBody("{ \"version\": \"1.0\"}"); - policyAdapter.setServiceType("foo"); - policy.prepareToSave(); - assertEquals(true, policy.isPreparedToSave()); - } - - @PrepareForTest({CreateNewOptimizationModel.class}) - @Test - public void testCreateModel() throws Exception { - // Mock file retrieval - File testFile = new File("testFile"); - File[] testList = new File[1]; - testList[0] = testFile; - File impl = Mockito.mock(File.class); - PowerMockito.whenNew(File.class).withAnyArguments().thenReturn(impl); - when(impl.listFiles()).thenReturn(testList); - when(impl.isFile()).thenReturn(true); + @Test + public void testConstructor1() { + thrown.expect(NullPointerException.class); + OptimizationConfigPolicy policy = new OptimizationConfigPolicy(); + policy.getCorrectPolicyDataObject(); + fail("Expected an exception"); + } - // Mock internal dictionary retrieval - CommonClassDaoImpl daoImpl = Mockito.mock(CommonClassDaoImpl.class); - PowerMockito.whenNew(CommonClassDaoImpl.class).withNoArguments().thenReturn(daoImpl); - when(daoImpl.getDataById(any(), anyString(), anyString())).thenReturn(Collections.emptyList()); + @Test + public void testConstructor2() { + PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); + OptimizationConfigPolicy policy = new OptimizationConfigPolicy(policyAdapter); + assertNull(policy.getCorrectPolicyDataObject()); + } - // Test create methods - String testFileName = "testFile.zip"; - String testVal = "testVal"; - CreateNewOptimizationModel model = new CreateNewOptimizationModel(testFileName, testVal, testVal, testVal, testVal); - model.addValuesToNewModel(); - model.saveImportService(); - } + @PrepareForTest({OptimizationConfigPolicy.class}) + @Test + public void testPrepareToSave() throws Exception { + // Need to mock internal dictionary retrieval + CommonClassDaoImpl impl = Mockito.mock(CommonClassDaoImpl.class); + PowerMockito.whenNew(CommonClassDaoImpl.class).withNoArguments().thenReturn(impl); + when(impl.getDataById(any(), anyString(), anyString())).thenReturn(null); + + PolicyRestAdapter policyAdapter = new PolicyRestAdapter(); + OptimizationConfigPolicy policy = new OptimizationConfigPolicy(policyAdapter); + policyAdapter.setHighestVersion(1); + policyAdapter.setPolicyType("Config"); + policyAdapter.setNewFileName("foo.xml"); + policyAdapter.setJsonBody("{ \"version\": \"1.0\"}"); + policyAdapter.setServiceType("foo"); + policy.prepareToSave(); + assertEquals(true, policy.isPreparedToSave()); + } + + @PrepareForTest({CreateNewOptimizationModel.class}) + @Test + public void testCreateModel() throws Exception { + // Mock file retrieval + File testFile = new File("testFile"); + File[] testList = new File[1]; + testList[0] = testFile; + File impl = Mockito.mock(File.class); + PowerMockito.whenNew(File.class).withAnyArguments().thenReturn(impl); + when(impl.listFiles()).thenReturn(testList); + when(impl.isFile()).thenReturn(true); + + // Mock internal dictionary retrieval + CommonClassDaoImpl daoImpl = Mockito.mock(CommonClassDaoImpl.class); + PowerMockito.whenNew(CommonClassDaoImpl.class).withNoArguments().thenReturn(daoImpl); + when(daoImpl.getDataById(any(), anyString(), anyString())).thenReturn(Collections.emptyList()); + + // Test create methods + String testFileName = "testFile.zip"; + String testVal = "testVal"; + CreateNewOptimizationModel model = new CreateNewOptimizationModel(testFileName, testVal, testVal, testVal, testVal); + model.addValuesToNewModel(); + model.saveImportService(); + } } diff --git a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/PolicyDBDaoTest.java b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/PolicyDBDaoTest.java index c098bf4fa..bdfd8db33 100644 --- a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/PolicyDBDaoTest.java +++ b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/components/PolicyDBDaoTest.java @@ -65,538 +65,538 @@ import oasis.names.tc.xacml._3_0.core.schema.wd_17.TargetType; public class PolicyDBDaoTest extends Mockito{ - private static Logger logger = FlexLogger.getLogger(PolicyDBDaoTest.class); - - PolicyDBDaoTestClass d; - PolicyDBDao dbd; - PolicyDBDao dbd2; - EntityManagerFactory emf; - private Path repository; - StdEngine stdEngine = null; - - @Before - public void init() throws PAPException, IOException{ - System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME,"src/test/resources/xacml.pap.properties"); - emf = Persistence.createEntityManagerFactory("testPapPU"); - EntityManager em = emf.createEntityManager(); - em.getTransaction().begin(); - try{ - em.createQuery("DELETE FROM PolicyDBDaoEntity").executeUpdate(); - em.createQuery("DELETE FROM PolicyEntity").executeUpdate(); - em.createQuery("DELETE FROM ConfigurationDataEntity").executeUpdate(); - em.createQuery("DELETE FROM ActionBodyEntity").executeUpdate(); - em.createQuery("DELETE FROM PdpEntity").executeUpdate(); - em.createQuery("DELETE FROM GroupEntity").executeUpdate(); - - em.getTransaction().commit(); - } catch(Exception e){ - logger.error("Exception Occured"+e); - em.getTransaction().rollback(); - } - em.close(); - try { - dbd = PolicyDBDao.getPolicyDBDaoInstance(emf); - dbd2 = PolicyDBDao.getPolicyDBDaoInstance(emf); - } catch (Exception e) { - Assert.fail(); - } - - d = PolicyDBDao.getPolicyDBDaoTestClass(); - PolicyDBDao.setJunit(true); - repository = Paths.get("src/test/resources/pdps"); + private static Logger logger = FlexLogger.getLogger(PolicyDBDaoTest.class); + + PolicyDBDaoTestClass d; + PolicyDBDao dbd; + PolicyDBDao dbd2; + EntityManagerFactory emf; + private Path repository; + StdEngine stdEngine = null; + + @Before + public void init() throws PAPException, IOException{ + System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME,"src/test/resources/xacml.pap.properties"); + emf = Persistence.createEntityManagerFactory("testPapPU"); + EntityManager em = emf.createEntityManager(); + em.getTransaction().begin(); + try{ + em.createQuery("DELETE FROM PolicyDBDaoEntity").executeUpdate(); + em.createQuery("DELETE FROM PolicyEntity").executeUpdate(); + em.createQuery("DELETE FROM ConfigurationDataEntity").executeUpdate(); + em.createQuery("DELETE FROM ActionBodyEntity").executeUpdate(); + em.createQuery("DELETE FROM PdpEntity").executeUpdate(); + em.createQuery("DELETE FROM GroupEntity").executeUpdate(); + + em.getTransaction().commit(); + } catch(Exception e){ + logger.error("Exception Occured"+e); + em.getTransaction().rollback(); + } + em.close(); + try { + dbd = PolicyDBDao.getPolicyDBDaoInstance(emf); + dbd2 = PolicyDBDao.getPolicyDBDaoInstance(emf); + } catch (Exception e) { + Assert.fail(); + } + + d = PolicyDBDao.getPolicyDBDaoTestClass(); + PolicyDBDao.setJunit(true); + repository = Paths.get("src/test/resources/pdps"); stdEngine = new StdEngine(repository); dbd.setPapEngine(stdEngine); - } - - @After - public void cleanUp(){ - PolicyDBDao.setJunit(false); - EntityManager em = emf.createEntityManager(); - em.getTransaction().begin(); - try{ - em.createQuery("DELETE FROM PolicyDBDaoEntity").executeUpdate(); - em.createQuery("DELETE FROM PolicyEntity").executeUpdate(); - em.createQuery("DELETE FROM ConfigurationDataEntity").executeUpdate(); - em.createQuery("DELETE FROM ActionBodyEntity").executeUpdate(); - em.createQuery("DELETE FROM PdpEntity").executeUpdate(); - em.createQuery("DELETE FROM GroupEntity").executeUpdate(); - - em.getTransaction().commit(); - } catch(Exception e){ - em.getTransaction().rollback(); - } - em.close(); - try { - FileUtils.forceDelete(new File("src/test/resources/junitTestCreatedDirectory")); - } catch (IOException e) { - //could not delete - } - } - - @Test - public void getConfigFileTest(){ - PolicyRestAdapter pra = new PolicyRestAdapter(); - pra.setConfigType(ConfigPolicy.JSON_CONFIG); - String configFile = d.getConfigFile("Config_mypolicy.xml", "org.onap", pra); - Assert.assertEquals("org.onap.Config_mypolicy.json", configFile); - //yes, we can do action files too even though they don't have configs - configFile = d.getConfigFile("Action_mypolicy.xml", "org.onap", pra); - Assert.assertEquals("org.onap.Action_mypolicy.json", configFile); - } - - @Test - public void createFromPolicyObject(){ - Policy policyObject = new ConfigPolicy(); - policyObject.policyAdapter = new PolicyRestAdapter(); - policyObject.policyAdapter.setConfigName("testpolicy1"); - policyObject.policyAdapter.setPolicyDescription("my description"); - policyObject.policyAdapter.setConfigBodyData("this is my test config file"); - policyObject.policyAdapter.setPolicyName("SampleTest1206"); - policyObject.policyAdapter.setConfigType(ConfigPolicy.OTHER_CONFIG); - policyObject.policyAdapter.setPolicyType("Config"); - policyObject.policyAdapter.setDomainDir("com"); - policyObject.policyAdapter.setVersion("1"); - PolicyType policyTypeObject = new PolicyType(); - policyObject.policyAdapter.setPolicyData(policyTypeObject); - ClassLoader classLoader = getClass().getClassLoader(); - PolicyType policyConfig = new PolicyType(); + } + + @After + public void cleanUp(){ + PolicyDBDao.setJunit(false); + EntityManager em = emf.createEntityManager(); + em.getTransaction().begin(); + try{ + em.createQuery("DELETE FROM PolicyDBDaoEntity").executeUpdate(); + em.createQuery("DELETE FROM PolicyEntity").executeUpdate(); + em.createQuery("DELETE FROM ConfigurationDataEntity").executeUpdate(); + em.createQuery("DELETE FROM ActionBodyEntity").executeUpdate(); + em.createQuery("DELETE FROM PdpEntity").executeUpdate(); + em.createQuery("DELETE FROM GroupEntity").executeUpdate(); + + em.getTransaction().commit(); + } catch(Exception e){ + em.getTransaction().rollback(); + } + em.close(); + try { + FileUtils.forceDelete(new File("src/test/resources/junitTestCreatedDirectory")); + } catch (IOException e) { + //could not delete + } + } + + @Test + public void getConfigFileTest(){ + PolicyRestAdapter pra = new PolicyRestAdapter(); + pra.setConfigType(ConfigPolicy.JSON_CONFIG); + String configFile = d.getConfigFile("Config_mypolicy.xml", "org.onap", pra); + Assert.assertEquals("org.onap.Config_mypolicy.json", configFile); + //yes, we can do action files too even though they don't have configs + configFile = d.getConfigFile("Action_mypolicy.xml", "org.onap", pra); + Assert.assertEquals("org.onap.Action_mypolicy.json", configFile); + } + + @Test + public void createFromPolicyObject(){ + Policy policyObject = new ConfigPolicy(); + policyObject.policyAdapter = new PolicyRestAdapter(); + policyObject.policyAdapter.setConfigName("testpolicy1"); + policyObject.policyAdapter.setPolicyDescription("my description"); + policyObject.policyAdapter.setConfigBodyData("this is my test config file"); + policyObject.policyAdapter.setPolicyName("SampleTest1206"); + policyObject.policyAdapter.setConfigType(ConfigPolicy.OTHER_CONFIG); + policyObject.policyAdapter.setPolicyType("Config"); + policyObject.policyAdapter.setDomainDir("com"); + policyObject.policyAdapter.setVersion("1"); + PolicyType policyTypeObject = new PolicyType(); + policyObject.policyAdapter.setPolicyData(policyTypeObject); + ClassLoader classLoader = getClass().getClassLoader(); + PolicyType policyConfig = new PolicyType(); policyConfig.setVersion(Integer.toString(1)); policyConfig.setPolicyId(""); policyConfig.setTarget(new TargetType()); policyObject.policyAdapter.setData(policyConfig); - mock(XACMLPolicyWriter.class); - try { - policyObject.policyAdapter.setParentPath(IOUtils.toString(classLoader.getResourceAsStream("Config_SampleTest1206.1.xml"))); - } catch (Exception e2) { - fail(); - } - - PolicyDBDaoTransaction transaction = dbd.getNewTransaction(); - try{ - transaction.createPolicy(policyObject, "testuser1"); - transaction.commitTransaction(); - } catch(Exception e){ - transaction.rollbackTransaction(); - Assert.fail(); - } - - EntityManager getData = emf.createEntityManager(); - Query getDataQuery = getData.createQuery("SELECT p FROM PolicyEntity p WHERE p.scope=:scope AND p.policyName=:name"); - getDataQuery.setParameter("scope", "com"); - getDataQuery.setParameter("name","Config_SampleTest1206.1.xml"); - PolicyEntity result = null; - try{ - result = (PolicyEntity)getDataQuery.getSingleResult(); - } catch(Exception e){ - logger.error("Exception Occured"+e); - Assert.fail(); - } - String expectedData; - try { - expectedData = IOUtils.toString(classLoader.getResourceAsStream("Config_SampleTest1206.1.xml")); - } catch (IOException e1) { - expectedData = ""; - } - Assert.assertEquals(expectedData, result.getPolicyData()); - getData.close(); - result = null; - - transaction.commitTransaction(); - Assert.assertFalse(transaction.isTransactionOpen()); - } - - @Test - public void groupTransactions(){ - PolicyDBDaoTransaction group = dbd.getNewTransaction(); - String groupName = "test group 1"; - try{ - group.createGroup(PolicyDBDao.createNewPDPGroupId(groupName), groupName, "this is a test group","testuser"); - group.commitTransaction(); - } catch(Exception e){ - group.rollbackTransaction(); - logger.error("Exception Occured"+e); - Assert.fail(); - } - EntityManager em = emf.createEntityManager(); - Query getGroup = em.createQuery("SELECT g FROM GroupEntity g WHERE g.groupId=:groupId AND g.deleted=:deleted"); - getGroup.setParameter("groupId", PolicyDBDao.createNewPDPGroupId(groupName)); - getGroup.setParameter("deleted", false); - List<?> groups = getGroup.getResultList(); - if(groups.size() != 1){ - Assert.fail(); - } - GroupEntity groupEntity = (GroupEntity)groups.get(0); - em.close(); - Assert.assertEquals(groupName, groupEntity.getgroupName()); - Assert.assertEquals("this is a test group", groupEntity.getDescription()); - group = dbd.getNewTransaction(); - try{ - OnapPDPGroup groupToDelete = new StdPDPGroup(PolicyDBDao.createNewPDPGroupId(groupName),Paths.get("/")); - group.deleteGroup(groupToDelete, null,"testuser"); - group.commitTransaction(); - } catch(Exception e){ - group.rollbackTransaction(); - logger.error("Exception Occured"+e); - Assert.fail(); - } - em = emf.createEntityManager(); - getGroup = em.createQuery("SELECT g FROM GroupEntity g WHERE g.groupId=:groupId AND g.deleted=:deleted"); - getGroup.setParameter("groupId", PolicyDBDao.createNewPDPGroupId(groupName)); - getGroup.setParameter("deleted", false); - groups = getGroup.getResultList(); - if(groups.size() != 0){ - System.out.println("Group size: "+groups.size()); - Assert.fail(); - } - em.close(); - //add a pdp to a group - group = dbd.getNewTransaction(); - try{ - group.createGroup(PolicyDBDao.createNewPDPGroupId(groupName), groupName, "test group", "testuser"); - group.commitTransaction(); - } catch(Exception e){ - group.rollbackTransaction(); - logger.error("Exception Occured"+e); - Assert.fail(); - } - group = dbd.getNewTransaction(); - try{ - group.addPdpToGroup("http://localhost:4344/pdp/", PolicyDBDao.createNewPDPGroupId(groupName), "primary", "the main pdp", 3232, "testuser"); - group.commitTransaction(); - } catch(Exception e){ - group.rollbackTransaction(); - logger.error("Exception Occured"+e); - Assert.fail(); - } - em = emf.createEntityManager(); - Query getPdp = em.createQuery("SELECT p FROM PdpEntity p WHERE p.pdpId=:pdpId AND p.deleted=:deleted"); - getPdp.setParameter("pdpId", "http://localhost:4344/pdp/"); - getPdp.setParameter("deleted", false); - List<?> pdps = getPdp.getResultList(); - if(pdps.size() != 1){ - System.out.println("Group size: "+pdps.size()); - Assert.fail(); - } - PdpEntity pdp = (PdpEntity)pdps.get(0); - Assert.assertEquals(groupName, pdp.getGroup().getgroupName()); - Assert.assertEquals(pdp.getPdpName(), "primary"); - em.close(); - group = dbd.getNewTransaction(); - try{ - group.removePdpFromGroup("http://localhost:4344/pdp/","testuser"); - group.commitTransaction(); - } catch(Exception e){ - group.rollbackTransaction(); - logger.error("Exception Occured"+e); - Assert.fail(); - } - em = emf.createEntityManager(); - getPdp = em.createQuery("SELECT p FROM PdpEntity p WHERE p.pdpId=:pdpId AND p.deleted=:deleted"); - getPdp.setParameter("pdpId", "http://localhost:4344/pdp/"); - getPdp.setParameter("deleted", false); - pdps = getPdp.getResultList(); - if(pdps.size() != 0){ - System.out.println("Group size: "+pdps.size()); - Assert.fail(); - } - em.close(); - - //add some pdps to groups - group = dbd.getNewTransaction(); - try{ - group.createGroup(PolicyDBDao.createNewPDPGroupId("testgroup1"), "testgroup1", "test group", "testuser"); - group.commitTransaction(); - } catch(Exception e){ - group.rollbackTransaction(); - logger.error("Exception Occured"+e); - Assert.fail(); - } - group = dbd.getNewTransaction(); - try{ - group.createGroup(PolicyDBDao.createNewPDPGroupId("testgroup2"), "testgroup2", "test group", "testuser"); - group.commitTransaction(); - } catch(Exception e){ - group.rollbackTransaction(); - logger.error("Exception Occured"+e); - Assert.fail(); - } - - group = dbd.getNewTransaction(); - try{ - group.addPdpToGroup("http://localhost:4344/pdp/", PolicyDBDao.createNewPDPGroupId("testgroup1"), "primary", "the main pdp", 3232, "testuser"); - group.commitTransaction(); - } catch(Exception e){ - group.rollbackTransaction(); - logger.error("Exception Occured"+e); - Assert.fail(); - } - group = dbd.getNewTransaction(); - try{ - group.addPdpToGroup("http://localhost:4345/pdp/", PolicyDBDao.createNewPDPGroupId("testgroup1"), "secondary", "the second pdp", 3233, "testuser"); - group.commitTransaction(); - } catch(Exception e){ - group.rollbackTransaction(); - logger.error("Exception Occured"+e); - Assert.fail(); - } - em = emf.createEntityManager(); - getPdp = em.createQuery("SELECT p FROM PdpEntity p WHERE p.deleted=:deleted"); - getPdp.setParameter("deleted", false); - pdps = getPdp.getResultList(); - for(Object o : pdps){ - Assert.assertEquals("testgroup1",((PdpEntity)o).getGroup().getgroupName()); - } - em.close(); - - group = dbd.getNewTransaction(); - try{ - OnapPDPGroup groupToDelete = new StdPDPGroup(PolicyDBDao.createNewPDPGroupId("testgroup1"),Paths.get("/")); - OnapPDPGroup groupToMoveTo = new StdPDPGroup(PolicyDBDao.createNewPDPGroupId("testgroup2"),Paths.get("/")); - group.deleteGroup(groupToDelete, groupToMoveTo,"testuser"); - group.commitTransaction(); - } catch(Exception e){ - group.rollbackTransaction(); - logger.error("Exception Occured"+e); - Assert.fail(); - } - em = emf.createEntityManager(); - getGroup = em.createQuery("SELECT g FROM GroupEntity g WHERE g.groupId=:groupId AND g.deleted=:deleted"); - getGroup.setParameter("groupId", "testgroup1"); - getGroup.setParameter("deleted", false); - groups = getGroup.getResultList(); - if(groups.size() != 0){ - System.out.println("Group size: "+groups.size()); - Assert.fail(); - } - em.close(); - - em = emf.createEntityManager(); - getPdp = em.createQuery("SELECT p FROM PdpEntity p WHERE p.deleted=:deleted"); - getPdp.setParameter("deleted", false); - pdps = getPdp.getResultList(); - for(Object o : pdps){ - Assert.assertEquals("testgroup2",((PdpEntity)o).getGroup().getgroupName()); - } - em.close(); - - group = dbd.getNewTransaction(); - try{ - OnapPDPGroup groupToDelete = new StdPDPGroup(PolicyDBDao.createNewPDPGroupId("testgroup2"),Paths.get("/")); - OnapPDPGroup groupToMoveTo = null; - group.deleteGroup(groupToDelete, groupToMoveTo,"testuser"); - group.commitTransaction(); - Assert.fail(); - } catch(PolicyDBException pe){ - //good, can't delete group with pdps - group.rollbackTransaction(); - } catch(Exception e){ - group.rollbackTransaction(); - logger.error("Exception Occured"+e); - Assert.fail(); - } - - //update group - OnapPDPGroup pdpGroup = new StdPDPGroup("testgroup2", false, "newtestgroup2", "this is my new description", Paths.get("/")); - group = dbd.getNewTransaction(); - try{ - group.updateGroup(pdpGroup, "testuser"); - group.commitTransaction(); - }catch (Exception e){ - logger.error("Exception Occured"+e); - group.rollbackTransaction(); - Assert.fail(); - } - em = emf.createEntityManager(); - getGroup = em.createQuery("SELECT g FROM GroupEntity g WHERE g.groupId=:groupId AND g.deleted=:deleted"); - getGroup.setParameter("groupId", "newtestgroup2"); - getGroup.setParameter("deleted", false); - groups = getGroup.getResultList(); - if(groups.size() != 1){ - System.out.println("Group size: "+groups.size()); - Assert.fail(); - } - em.close(); - em = emf.createEntityManager(); - getGroup = em.createQuery("SELECT g FROM GroupEntity g WHERE g.groupId=:groupId AND g.deleted=:deleted"); - getGroup.setParameter("groupId", "testgroup2"); - getGroup.setParameter("deleted", false); - groups = getGroup.getResultList(); - if(groups.size() != 0){ - System.out.println("Group size: "+groups.size()); - Assert.fail(); - } - em.close(); - } - - @Ignore - @Test - public void threadingStabilityTest(){ - if(logger.isDebugEnabled()){ - logger.debug("\n\n****************************" - + "threadingStabilityTest() entry" - + "******************************\n\n"); - } - - PolicyDBDaoTransaction t = dbd.getNewTransaction(); - Assert.assertTrue(t.isTransactionOpen()); - try { - //Add 1000 ms to the timeout just to be sure it actually times out - int sleepTime = Integer.parseInt(XACMLProperties.getProperty(XACMLRestProperties.PROP_PAP_TRANS_TIMEOUT)) + 1000; - if(logger.isDebugEnabled()){ - Date date= new java.util.Date(); - logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " - + "\n sleepTime = " + sleepTime - + "\n TimeStamp = " + date.getTime() - + "\n\n"); - } - Thread.sleep(sleepTime); - } catch (InterruptedException e) { - logger.error("Exception Occured"+e); - } - if(logger.isDebugEnabled()){ - Date date= new java.util.Date(); - logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " - + "\n Assert.assertFalse(t.isTransactionOpen() = " + t.isTransactionOpen() + ")" - + "\n TimeStamp = " + date.getTime() - + "\n\n"); - } - Assert.assertFalse(t.isTransactionOpen()); - - - if(logger.isDebugEnabled()){ - Date date= new java.util.Date(); - logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " - + "\n a = dbd.getNewTransaction() " - + "\n TimeStamp = " + date.getTime() - + "\n\n"); - } - PolicyDBDaoTransaction a = dbd.getNewTransaction(); - if(logger.isDebugEnabled()){ - Date date= new java.util.Date(); - logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " - + "\n Assert.assertTrue(a.isTransactionOpen() = " + a.isTransactionOpen() + ")" - + "\n TimeStamp = " + date.getTime() - + "\n\n"); - } - Assert.assertTrue(a.isTransactionOpen()); - - try { - //Add 1000 ms to the timeout just to be sure it actually times out - int sleepTime = Integer.parseInt(XACMLProperties.getProperty(XACMLRestProperties.PROP_PAP_TRANS_TIMEOUT)) + 1000; - if(logger.isDebugEnabled()){ - Date date= new java.util.Date(); - logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " - + "\n sleepTime = " + sleepTime - + "\n TimeStamp = " + date.getTime() - + "\n\n"); - } - Thread.sleep(sleepTime); - } catch (InterruptedException e) { - logger.error("Exception Occured"+e); - } - if(logger.isDebugEnabled()){ - Date date= new java.util.Date(); - logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " - + "\n b = dbd.getNewTransaction() " - + "\n TimeStamp = " + date.getTime() - + "\n\n"); - } - PolicyDBDaoTransaction b = dbd.getNewTransaction(); - if(logger.isDebugEnabled()){ - Date date= new java.util.Date(); - logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " - + "\n Assert.assertFalse(a.isTransactionOpen() = " + a.isTransactionOpen() + ")" - + "\n TimeStamp = " + date.getTime() - + "\n\n"); - } - Assert.assertFalse(a.isTransactionOpen()); - if(logger.isDebugEnabled()){ - Date date= new java.util.Date(); - logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " - + "\n Assert.assertTrue(b.isTransactionOpen() = " + b.isTransactionOpen() + ")" - + "\n TimeStamp = " + date.getTime() - + "\n\n"); - } - Assert.assertTrue(b.isTransactionOpen()); - b.close(); - - - - //Now let's test the transaction wait time timeout. Shorten the wait time to 1000 ms - System.setProperty(XACMLRestProperties.PROP_PAP_TRANS_WAIT,"1000"); - //And let's lengthen the transaction timeout to 5000 ms - System.setProperty(XACMLRestProperties.PROP_PAP_TRANS_TIMEOUT,"5000"); - //get a transacton - PolicyDBDaoTransaction t1 = dbd.getNewTransaction(); - if(logger.isDebugEnabled()){ - Date date= new java.util.Date(); - logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " - + "\n Assert.assertTrue(t1.isTransactionOpen() = " + t1.isTransactionOpen() + ")" - + "\n TimeStamp = " + date.getTime() - + "\n\n"); - } - Assert.assertTrue(t1.isTransactionOpen()); - //while it is open, get another from a different DB Dao so it will not collide on the synchronized code segment - //but will collide at the DB. Remember that the wait time is only 1000 ms - try { - //Now the 2nd transaction has a wait timeout in 1000 ms - PolicyDBDaoTransaction t2 = dbd2.getNewTransaction(); - /* - * Give it plenty of time to time out the second transaction - * It will actually hang right here until it either gets the lock from the DB or the - * request for the DB lock times out. The timers are very sloppy so, I have given - * this plenty of leeway. - */ - - if(logger.isDebugEnabled()){ - Date date= new java.util.Date(); - logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " - + "\n Thread.sleep(3000)" - + "\n TimeStamp = " + date.getTime() - + "\n\n"); - } - Thread.sleep(3000); - if(logger.isDebugEnabled()){ - Date date= new java.util.Date(); - logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " - + "\n Assert.assertTrue(t1.isTransactionOpen() = " + t1.isTransactionOpen() + ")" - + "\n Assert.assertFalse(t2.isTransactionOpen() = " + t2.isTransactionOpen() + ")" - + "\n TimeStamp = " + date.getTime() - + "\n\n"); - } - //Assert.assertTrue(t1.isTransactionOpen()); - //Assert.assertFalse(t2.isTransactionOpen()); - - Assert.fail("\n\nTransaction timeout of 1000 ms exceeded without a PersistenceException\n\n"); - } catch (PersistenceException e) { - //success - if(logger.isDebugEnabled()){ - Date date= new java.util.Date(); - logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " - + "\n SUCCESS! Transaction Wait Timeout worked!" - + "\n Caught PersistenceException = " + e - + "\n TimeStamp = " + date.getTime() - + "\n\n"); - } - } catch (Exception e) { - // failure due to some other reason - if(logger.isDebugEnabled()){ - Date date= new java.util.Date(); - logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() FAILURE" - + "\n Caught Exception = " + e - + "\n TimeStamp = " + date.getTime() - + "\n\n"); - } - logger.error("Exception Occured"+e); - Assert.fail(); - } - - if(logger.isDebugEnabled()){ - Date date= new java.util.Date(); - logger.debug("\n\nthreadingStabilityTest() exit" - + "\n TimeStamp = " + date.getTime() - + "\n\n"); - } - } + mock(XACMLPolicyWriter.class); + try { + policyObject.policyAdapter.setParentPath(IOUtils.toString(classLoader.getResourceAsStream("Config_SampleTest1206.1.xml"))); + } catch (Exception e2) { + fail(); + } + + PolicyDBDaoTransaction transaction = dbd.getNewTransaction(); + try{ + transaction.createPolicy(policyObject, "testuser1"); + transaction.commitTransaction(); + } catch(Exception e){ + transaction.rollbackTransaction(); + Assert.fail(); + } + + EntityManager getData = emf.createEntityManager(); + Query getDataQuery = getData.createQuery("SELECT p FROM PolicyEntity p WHERE p.scope=:scope AND p.policyName=:name"); + getDataQuery.setParameter("scope", "com"); + getDataQuery.setParameter("name","Config_SampleTest1206.1.xml"); + PolicyEntity result = null; + try{ + result = (PolicyEntity)getDataQuery.getSingleResult(); + } catch(Exception e){ + logger.error("Exception Occured"+e); + Assert.fail(); + } + String expectedData; + try { + expectedData = IOUtils.toString(classLoader.getResourceAsStream("Config_SampleTest1206.1.xml")); + } catch (IOException e1) { + expectedData = ""; + } + Assert.assertEquals(expectedData, result.getPolicyData()); + getData.close(); + result = null; + + transaction.commitTransaction(); + Assert.assertFalse(transaction.isTransactionOpen()); + } + + @Test + public void groupTransactions(){ + PolicyDBDaoTransaction group = dbd.getNewTransaction(); + String groupName = "test group 1"; + try{ + group.createGroup(PolicyDBDao.createNewPDPGroupId(groupName), groupName, "this is a test group","testuser"); + group.commitTransaction(); + } catch(Exception e){ + group.rollbackTransaction(); + logger.error("Exception Occured"+e); + Assert.fail(); + } + EntityManager em = emf.createEntityManager(); + Query getGroup = em.createQuery("SELECT g FROM GroupEntity g WHERE g.groupId=:groupId AND g.deleted=:deleted"); + getGroup.setParameter("groupId", PolicyDBDao.createNewPDPGroupId(groupName)); + getGroup.setParameter("deleted", false); + List<?> groups = getGroup.getResultList(); + if(groups.size() != 1){ + Assert.fail(); + } + GroupEntity groupEntity = (GroupEntity)groups.get(0); + em.close(); + Assert.assertEquals(groupName, groupEntity.getgroupName()); + Assert.assertEquals("this is a test group", groupEntity.getDescription()); + group = dbd.getNewTransaction(); + try{ + OnapPDPGroup groupToDelete = new StdPDPGroup(PolicyDBDao.createNewPDPGroupId(groupName),Paths.get("/")); + group.deleteGroup(groupToDelete, null,"testuser"); + group.commitTransaction(); + } catch(Exception e){ + group.rollbackTransaction(); + logger.error("Exception Occured"+e); + Assert.fail(); + } + em = emf.createEntityManager(); + getGroup = em.createQuery("SELECT g FROM GroupEntity g WHERE g.groupId=:groupId AND g.deleted=:deleted"); + getGroup.setParameter("groupId", PolicyDBDao.createNewPDPGroupId(groupName)); + getGroup.setParameter("deleted", false); + groups = getGroup.getResultList(); + if(groups.size() != 0){ + System.out.println("Group size: "+groups.size()); + Assert.fail(); + } + em.close(); + //add a pdp to a group + group = dbd.getNewTransaction(); + try{ + group.createGroup(PolicyDBDao.createNewPDPGroupId(groupName), groupName, "test group", "testuser"); + group.commitTransaction(); + } catch(Exception e){ + group.rollbackTransaction(); + logger.error("Exception Occured"+e); + Assert.fail(); + } + group = dbd.getNewTransaction(); + try{ + group.addPdpToGroup("http://localhost:4344/pdp/", PolicyDBDao.createNewPDPGroupId(groupName), "primary", "the main pdp", 3232, "testuser"); + group.commitTransaction(); + } catch(Exception e){ + group.rollbackTransaction(); + logger.error("Exception Occured"+e); + Assert.fail(); + } + em = emf.createEntityManager(); + Query getPdp = em.createQuery("SELECT p FROM PdpEntity p WHERE p.pdpId=:pdpId AND p.deleted=:deleted"); + getPdp.setParameter("pdpId", "http://localhost:4344/pdp/"); + getPdp.setParameter("deleted", false); + List<?> pdps = getPdp.getResultList(); + if(pdps.size() != 1){ + System.out.println("Group size: "+pdps.size()); + Assert.fail(); + } + PdpEntity pdp = (PdpEntity)pdps.get(0); + Assert.assertEquals(groupName, pdp.getGroup().getgroupName()); + Assert.assertEquals(pdp.getPdpName(), "primary"); + em.close(); + group = dbd.getNewTransaction(); + try{ + group.removePdpFromGroup("http://localhost:4344/pdp/","testuser"); + group.commitTransaction(); + } catch(Exception e){ + group.rollbackTransaction(); + logger.error("Exception Occured"+e); + Assert.fail(); + } + em = emf.createEntityManager(); + getPdp = em.createQuery("SELECT p FROM PdpEntity p WHERE p.pdpId=:pdpId AND p.deleted=:deleted"); + getPdp.setParameter("pdpId", "http://localhost:4344/pdp/"); + getPdp.setParameter("deleted", false); + pdps = getPdp.getResultList(); + if(pdps.size() != 0){ + System.out.println("Group size: "+pdps.size()); + Assert.fail(); + } + em.close(); + + //add some pdps to groups + group = dbd.getNewTransaction(); + try{ + group.createGroup(PolicyDBDao.createNewPDPGroupId("testgroup1"), "testgroup1", "test group", "testuser"); + group.commitTransaction(); + } catch(Exception e){ + group.rollbackTransaction(); + logger.error("Exception Occured"+e); + Assert.fail(); + } + group = dbd.getNewTransaction(); + try{ + group.createGroup(PolicyDBDao.createNewPDPGroupId("testgroup2"), "testgroup2", "test group", "testuser"); + group.commitTransaction(); + } catch(Exception e){ + group.rollbackTransaction(); + logger.error("Exception Occured"+e); + Assert.fail(); + } + + group = dbd.getNewTransaction(); + try{ + group.addPdpToGroup("http://localhost:4344/pdp/", PolicyDBDao.createNewPDPGroupId("testgroup1"), "primary", "the main pdp", 3232, "testuser"); + group.commitTransaction(); + } catch(Exception e){ + group.rollbackTransaction(); + logger.error("Exception Occured"+e); + Assert.fail(); + } + group = dbd.getNewTransaction(); + try{ + group.addPdpToGroup("http://localhost:4345/pdp/", PolicyDBDao.createNewPDPGroupId("testgroup1"), "secondary", "the second pdp", 3233, "testuser"); + group.commitTransaction(); + } catch(Exception e){ + group.rollbackTransaction(); + logger.error("Exception Occured"+e); + Assert.fail(); + } + em = emf.createEntityManager(); + getPdp = em.createQuery("SELECT p FROM PdpEntity p WHERE p.deleted=:deleted"); + getPdp.setParameter("deleted", false); + pdps = getPdp.getResultList(); + for(Object o : pdps){ + Assert.assertEquals("testgroup1",((PdpEntity)o).getGroup().getgroupName()); + } + em.close(); + + group = dbd.getNewTransaction(); + try{ + OnapPDPGroup groupToDelete = new StdPDPGroup(PolicyDBDao.createNewPDPGroupId("testgroup1"),Paths.get("/")); + OnapPDPGroup groupToMoveTo = new StdPDPGroup(PolicyDBDao.createNewPDPGroupId("testgroup2"),Paths.get("/")); + group.deleteGroup(groupToDelete, groupToMoveTo,"testuser"); + group.commitTransaction(); + } catch(Exception e){ + group.rollbackTransaction(); + logger.error("Exception Occured"+e); + Assert.fail(); + } + em = emf.createEntityManager(); + getGroup = em.createQuery("SELECT g FROM GroupEntity g WHERE g.groupId=:groupId AND g.deleted=:deleted"); + getGroup.setParameter("groupId", "testgroup1"); + getGroup.setParameter("deleted", false); + groups = getGroup.getResultList(); + if(groups.size() != 0){ + System.out.println("Group size: "+groups.size()); + Assert.fail(); + } + em.close(); + + em = emf.createEntityManager(); + getPdp = em.createQuery("SELECT p FROM PdpEntity p WHERE p.deleted=:deleted"); + getPdp.setParameter("deleted", false); + pdps = getPdp.getResultList(); + for(Object o : pdps){ + Assert.assertEquals("testgroup2",((PdpEntity)o).getGroup().getgroupName()); + } + em.close(); + + group = dbd.getNewTransaction(); + try{ + OnapPDPGroup groupToDelete = new StdPDPGroup(PolicyDBDao.createNewPDPGroupId("testgroup2"),Paths.get("/")); + OnapPDPGroup groupToMoveTo = null; + group.deleteGroup(groupToDelete, groupToMoveTo,"testuser"); + group.commitTransaction(); + Assert.fail(); + } catch(PolicyDBException pe){ + //good, can't delete group with pdps + group.rollbackTransaction(); + } catch(Exception e){ + group.rollbackTransaction(); + logger.error("Exception Occured"+e); + Assert.fail(); + } + + //update group + OnapPDPGroup pdpGroup = new StdPDPGroup("testgroup2", false, "newtestgroup2", "this is my new description", Paths.get("/")); + group = dbd.getNewTransaction(); + try{ + group.updateGroup(pdpGroup, "testuser"); + group.commitTransaction(); + }catch (Exception e){ + logger.error("Exception Occured"+e); + group.rollbackTransaction(); + Assert.fail(); + } + em = emf.createEntityManager(); + getGroup = em.createQuery("SELECT g FROM GroupEntity g WHERE g.groupId=:groupId AND g.deleted=:deleted"); + getGroup.setParameter("groupId", "newtestgroup2"); + getGroup.setParameter("deleted", false); + groups = getGroup.getResultList(); + if(groups.size() != 1){ + System.out.println("Group size: "+groups.size()); + Assert.fail(); + } + em.close(); + em = emf.createEntityManager(); + getGroup = em.createQuery("SELECT g FROM GroupEntity g WHERE g.groupId=:groupId AND g.deleted=:deleted"); + getGroup.setParameter("groupId", "testgroup2"); + getGroup.setParameter("deleted", false); + groups = getGroup.getResultList(); + if(groups.size() != 0){ + System.out.println("Group size: "+groups.size()); + Assert.fail(); + } + em.close(); + } + + @Ignore + @Test + public void threadingStabilityTest(){ + if(logger.isDebugEnabled()){ + logger.debug("\n\n****************************" + + "threadingStabilityTest() entry" + + "******************************\n\n"); + } + + PolicyDBDaoTransaction t = dbd.getNewTransaction(); + Assert.assertTrue(t.isTransactionOpen()); + try { + //Add 1000 ms to the timeout just to be sure it actually times out + int sleepTime = Integer.parseInt(XACMLProperties.getProperty(XACMLRestProperties.PROP_PAP_TRANS_TIMEOUT)) + 1000; + if(logger.isDebugEnabled()){ + Date date= new java.util.Date(); + logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " + + "\n sleepTime = " + sleepTime + + "\n TimeStamp = " + date.getTime() + + "\n\n"); + } + Thread.sleep(sleepTime); + } catch (InterruptedException e) { + logger.error("Exception Occured"+e); + } + if(logger.isDebugEnabled()){ + Date date= new java.util.Date(); + logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " + + "\n Assert.assertFalse(t.isTransactionOpen() = " + t.isTransactionOpen() + ")" + + "\n TimeStamp = " + date.getTime() + + "\n\n"); + } + Assert.assertFalse(t.isTransactionOpen()); + + + if(logger.isDebugEnabled()){ + Date date= new java.util.Date(); + logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " + + "\n a = dbd.getNewTransaction() " + + "\n TimeStamp = " + date.getTime() + + "\n\n"); + } + PolicyDBDaoTransaction a = dbd.getNewTransaction(); + if(logger.isDebugEnabled()){ + Date date= new java.util.Date(); + logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " + + "\n Assert.assertTrue(a.isTransactionOpen() = " + a.isTransactionOpen() + ")" + + "\n TimeStamp = " + date.getTime() + + "\n\n"); + } + Assert.assertTrue(a.isTransactionOpen()); + + try { + //Add 1000 ms to the timeout just to be sure it actually times out + int sleepTime = Integer.parseInt(XACMLProperties.getProperty(XACMLRestProperties.PROP_PAP_TRANS_TIMEOUT)) + 1000; + if(logger.isDebugEnabled()){ + Date date= new java.util.Date(); + logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " + + "\n sleepTime = " + sleepTime + + "\n TimeStamp = " + date.getTime() + + "\n\n"); + } + Thread.sleep(sleepTime); + } catch (InterruptedException e) { + logger.error("Exception Occured"+e); + } + if(logger.isDebugEnabled()){ + Date date= new java.util.Date(); + logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " + + "\n b = dbd.getNewTransaction() " + + "\n TimeStamp = " + date.getTime() + + "\n\n"); + } + PolicyDBDaoTransaction b = dbd.getNewTransaction(); + if(logger.isDebugEnabled()){ + Date date= new java.util.Date(); + logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " + + "\n Assert.assertFalse(a.isTransactionOpen() = " + a.isTransactionOpen() + ")" + + "\n TimeStamp = " + date.getTime() + + "\n\n"); + } + Assert.assertFalse(a.isTransactionOpen()); + if(logger.isDebugEnabled()){ + Date date= new java.util.Date(); + logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " + + "\n Assert.assertTrue(b.isTransactionOpen() = " + b.isTransactionOpen() + ")" + + "\n TimeStamp = " + date.getTime() + + "\n\n"); + } + Assert.assertTrue(b.isTransactionOpen()); + b.close(); + + + + //Now let's test the transaction wait time timeout. Shorten the wait time to 1000 ms + System.setProperty(XACMLRestProperties.PROP_PAP_TRANS_WAIT,"1000"); + //And let's lengthen the transaction timeout to 5000 ms + System.setProperty(XACMLRestProperties.PROP_PAP_TRANS_TIMEOUT,"5000"); + //get a transacton + PolicyDBDaoTransaction t1 = dbd.getNewTransaction(); + if(logger.isDebugEnabled()){ + Date date= new java.util.Date(); + logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " + + "\n Assert.assertTrue(t1.isTransactionOpen() = " + t1.isTransactionOpen() + ")" + + "\n TimeStamp = " + date.getTime() + + "\n\n"); + } + Assert.assertTrue(t1.isTransactionOpen()); + //while it is open, get another from a different DB Dao so it will not collide on the synchronized code segment + //but will collide at the DB. Remember that the wait time is only 1000 ms + try { + //Now the 2nd transaction has a wait timeout in 1000 ms + PolicyDBDaoTransaction t2 = dbd2.getNewTransaction(); + /* + * Give it plenty of time to time out the second transaction + * It will actually hang right here until it either gets the lock from the DB or the + * request for the DB lock times out. The timers are very sloppy so, I have given + * this plenty of leeway. + */ + + if(logger.isDebugEnabled()){ + Date date= new java.util.Date(); + logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " + + "\n Thread.sleep(3000)" + + "\n TimeStamp = " + date.getTime() + + "\n\n"); + } + Thread.sleep(3000); + if(logger.isDebugEnabled()){ + Date date= new java.util.Date(); + logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " + + "\n Assert.assertTrue(t1.isTransactionOpen() = " + t1.isTransactionOpen() + ")" + + "\n Assert.assertFalse(t2.isTransactionOpen() = " + t2.isTransactionOpen() + ")" + + "\n TimeStamp = " + date.getTime() + + "\n\n"); + } + //Assert.assertTrue(t1.isTransactionOpen()); + //Assert.assertFalse(t2.isTransactionOpen()); + + Assert.fail("\n\nTransaction timeout of 1000 ms exceeded without a PersistenceException\n\n"); + } catch (PersistenceException e) { + //success + if(logger.isDebugEnabled()){ + Date date= new java.util.Date(); + logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() " + + "\n SUCCESS! Transaction Wait Timeout worked!" + + "\n Caught PersistenceException = " + e + + "\n TimeStamp = " + date.getTime() + + "\n\n"); + } + } catch (Exception e) { + // failure due to some other reason + if(logger.isDebugEnabled()){ + Date date= new java.util.Date(); + logger.debug("\n\nPolicyDBDaoTest.threadingStabilityTest() FAILURE" + + "\n Caught Exception = " + e + + "\n TimeStamp = " + date.getTime() + + "\n\n"); + } + logger.error("Exception Occured"+e); + Assert.fail(); + } + + if(logger.isDebugEnabled()){ + Date date= new java.util.Date(); + logger.debug("\n\nthreadingStabilityTest() exit" + + "\n TimeStamp = " + date.getTime() + + "\n\n"); + } + } }
\ No newline at end of file |