diff options
Diffstat (limited to 'ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api')
18 files changed, 1511 insertions, 1420 deletions
diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/models/PDPResponseTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/models/PDPResponseTest.java index a48791cf0..5fe9d6a78 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/models/PDPResponseTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/models/PDPResponseTest.java @@ -1,15 +1,17 @@ /*- * ============LICENSE_START======================================================= - * ONAP Policy Engine + * ONAP-PDP-REST * ================================================================================ * Copyright (C) 2018 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. @@ -30,53 +32,53 @@ import org.onap.policy.api.PolicyResponseStatus; import org.onap.policy.api.PolicyType; public class PDPResponseTest { - @Test - public void testSetAndGet() { - // Test values - String message = "testMessage"; - String config = "testConfig"; - String policyName = "testPolicyName"; - String policyVersion = "1.0"; - PolicyResponseStatus policyResponseStatus = PolicyResponseStatus.ACTION_ADVISED; - PolicyConfigStatus policyConfigStatus = PolicyConfigStatus.CONFIG_RETRIEVED; - PolicyType type = PolicyType.JSON; - Map<String, String> property = new HashMap<String, String>(); - PolicyDecision policyDecision = PolicyDecision.PERMIT; + @Test + public void testSetAndGet() { + // Test values + String message = "testMessage"; + String config = "testConfig"; + String policyName = "testPolicyName"; + String policyVersion = "1.0"; + PolicyResponseStatus policyResponseStatus = PolicyResponseStatus.ACTION_ADVISED; + PolicyConfigStatus policyConfigStatus = PolicyConfigStatus.CONFIG_RETRIEVED; + PolicyType type = PolicyType.JSON; + Map<String, String> property = new HashMap<String, String>(); + PolicyDecision policyDecision = PolicyDecision.PERMIT; - PDPResponse response = new PDPResponse(); + PDPResponse response = new PDPResponse(); - response.setStatus(message, policyResponseStatus, policyConfigStatus); - response.setConfig(config); - assertEquals(config, response.getConfig()); - response.setType(type); - assertEquals(type, response.getType()); - response.setPolicyConfigStatus(policyConfigStatus); - assertEquals(policyConfigStatus, response.getPolicyConfigStatus()); - response.setPolicyConfigMessage(message); - assertEquals(message, response.getPolicyConfigMessage()); - response.setProperty(property); - assertEquals(property, response.getProperty()); - response.setPolicyName(policyName); - assertEquals(policyName, response.getPolicyName()); - response.setPolicyVersion(policyVersion); - assertEquals(policyVersion, response.getPolicyVersion()); - response.setMatchingConditions(property); - assertEquals(property, response.getMatchingConditions()); - response.setResponseAttributes(property); - assertEquals(property, response.getResponseAttributes()); - response.setPolicyResponseStatus(policyResponseStatus); - assertEquals(policyResponseStatus, response.getPolicyResponseStatus()); - response.setDecision(policyDecision); - assertEquals(policyDecision, response.getDecision()); - response.setDetails(message); - assertEquals(message, response.getDetails()); - response.setActionAdvised(property); - assertEquals(property, response.getActionAdvised()); - response.setActionTaken(property); - assertEquals(property, response.getActionTaken()); - response.setRequestAttributes(property); - assertEquals(property, response.getRequestAttributes()); - response.setPolicyResponseMessage(message); - assertEquals(message, response.getPolicyResponseMessage()); - } + response.setStatus(message, policyResponseStatus, policyConfigStatus); + response.setConfig(config); + assertEquals(config, response.getConfig()); + response.setType(type); + assertEquals(type, response.getType()); + response.setPolicyConfigStatus(policyConfigStatus); + assertEquals(policyConfigStatus, response.getPolicyConfigStatus()); + response.setPolicyConfigMessage(message); + assertEquals(message, response.getPolicyConfigMessage()); + response.setProperty(property); + assertEquals(property, response.getProperty()); + response.setPolicyName(policyName); + assertEquals(policyName, response.getPolicyName()); + response.setPolicyVersion(policyVersion); + assertEquals(policyVersion, response.getPolicyVersion()); + response.setMatchingConditions(property); + assertEquals(property, response.getMatchingConditions()); + response.setResponseAttributes(property); + assertEquals(property, response.getResponseAttributes()); + response.setPolicyResponseStatus(policyResponseStatus); + assertEquals(policyResponseStatus, response.getPolicyResponseStatus()); + response.setDecision(policyDecision); + assertEquals(policyDecision, response.getDecision()); + response.setDetails(message); + assertEquals(message, response.getDetails()); + response.setActionAdvised(property); + assertEquals(property, response.getActionAdvised()); + response.setActionTaken(property); + assertEquals(property, response.getActionTaken()); + response.setRequestAttributes(property); + assertEquals(property, response.getRequestAttributes()); + response.setPolicyResponseMessage(message); + assertEquals(message, response.getPolicyResponseMessage()); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/BRMSParamPolicyServiceTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/BRMSParamPolicyServiceTest.java index 3461825ac..30bb26bc5 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/BRMSParamPolicyServiceTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/BRMSParamPolicyServiceTest.java @@ -25,7 +25,6 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; - import java.io.FileInputStream; import java.text.SimpleDateFormat; import java.util.Arrays; @@ -35,7 +34,6 @@ import java.util.List; import java.util.Map; import java.util.Properties; import java.util.UUID; - import org.junit.AfterClass; import org.junit.Before; import org.junit.BeforeClass; @@ -47,30 +45,30 @@ import org.onap.policy.api.PolicyParameters; public class BRMSParamPolicyServiceTest { - BRMSParamPolicyService service = null; - - @BeforeClass - public static void setUpBeforeClass() throws Exception { - Properties prop = new Properties(); - prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); - String succeeded = prop.getProperty("xacml.rest.pap.url"); - List<String> paps = Arrays.asList(succeeded.split(",")); - PAPServices.setPaps(paps); - PAPServices.setJunit(true); - } - - @Before - public void setUp() throws Exception { - PolicyParameters policyParameters = new PolicyParameters(); + BRMSParamPolicyService service = null; + + @BeforeClass + public static void setUpBeforeClass() throws Exception { + Properties prop = new Properties(); + prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); + String succeeded = prop.getProperty("xacml.rest.pap.url"); + List<String> paps = Arrays.asList(succeeded.split(",")); + PAPServices.setPaps(paps); + PAPServices.setJunit(true); + } + + @Before + public void setUp() throws Exception { + PolicyParameters policyParameters = new PolicyParameters(); policyParameters.setPolicyConfigType(PolicyConfigType.BRMS_PARAM); policyParameters.setPolicyName("Test.testBRMSPolicy"); policyParameters.setRequestID(UUID.randomUUID()); - SimpleDateFormat dateformat3 = new SimpleDateFormat("dd/MM/yyyy"); - Date date = dateformat3.parse("15/10/2016"); - policyParameters.setTtlDate(date); - policyParameters.setGuard(true); - policyParameters.setRiskLevel("5"); - policyParameters.setRiskType("TEST"); + SimpleDateFormat dateformat3 = new SimpleDateFormat("dd/MM/yyyy"); + Date date = dateformat3.parse("15/10/2016"); + policyParameters.setTtlDate(date); + policyParameters.setGuard(true); + policyParameters.setRiskLevel("5"); + policyParameters.setRiskType("TEST"); Map<String, String> ruleAttributes = new HashMap<>(); ruleAttributes.put("templateName", "Sample"); @@ -81,39 +79,37 @@ public class BRMSParamPolicyServiceTest { attributes.put(AttributeType.RULE, ruleAttributes); policyParameters.setAttributes(attributes); - String policyName = "testBRMSPolicy"; - String policyScope = "Test"; - service = new BRMSParamPolicyService(policyName, policyScope, policyParameters, date.toString()); - } - - @AfterClass - public static void tearDownAfterClass() { - PAPServices.setPaps(null); - PAPServices.setJunit(false); - } - - @Test - public final void testFirewallPolicyService() { - assertNotNull(service); - } - - @Test - public final void testGetValidation() { - assertTrue(service.getValidation()); - } - - @Test - public final void testGetMessage() { - String message = service.getMessage(); - assertNull(message); - } - - @Test - public final void testGetResult() throws PolicyException { - service.getValidation(); - String result = service.getResult(false); - assertEquals("success",result); - } - - + String policyName = "testBRMSPolicy"; + String policyScope = "Test"; + service = new BRMSParamPolicyService(policyName, policyScope, policyParameters, date.toString()); + } + + @AfterClass + public static void tearDownAfterClass() { + PAPServices.setPaps(null); + PAPServices.setJunit(false); + } + + @Test + public final void testFirewallPolicyService() { + assertNotNull(service); + } + + @Test + public final void testGetValidation() { + assertTrue(service.getValidation()); + } + + @Test + public final void testGetMessage() { + String message = service.getMessage(); + assertNull(message); + } + + @Test + public final void testGetResult() throws PolicyException { + service.getValidation(); + String result = service.getResult(false); + assertEquals("success", result); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/BRMSRawPolicyServiceTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/BRMSRawPolicyServiceTest.java index 8781b827e..5f79d8d79 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/BRMSRawPolicyServiceTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/BRMSRawPolicyServiceTest.java @@ -22,14 +22,12 @@ package org.onap.policy.pdp.rest.api.services; import static org.junit.Assert.assertEquals; - import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.util.Arrays; import java.util.List; import java.util.Properties; - import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; @@ -72,8 +70,7 @@ public class BRMSRawPolicyServiceTest { // Set the system property temporarily System.setProperty(SYSTEM_KEY, "xacml.pdp.properties"); - BRMSRawPolicyService service = - new BRMSRawPolicyService(testVal, testVal, testParams, testVal); + BRMSRawPolicyService service = new BRMSRawPolicyService(testVal, testVal, testParams, testVal); assertEquals(false, service.getValidation()); assertEquals("PE300 - Data Issue: No Rule Body given", service.getMessage()); } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/ClosedLoopFaultPolicyServiceTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/ClosedLoopFaultPolicyServiceTest.java index c21bc9c77..a953137e2 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/ClosedLoopFaultPolicyServiceTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/ClosedLoopFaultPolicyServiceTest.java @@ -1,15 +1,17 @@ /*- * ============LICENSE_START======================================================= - * ONAP-PAP-REST + * ONAP-PDP-REST * ================================================================================ * Copyright (C) 2018 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. @@ -20,7 +22,6 @@ package org.onap.policy.pdp.rest.api.services; import static org.junit.Assert.*; - import java.io.FileInputStream; import java.text.SimpleDateFormat; import java.util.Arrays; @@ -28,7 +29,6 @@ import java.util.Date; import java.util.List; import java.util.Properties; import java.util.UUID; - import org.junit.After; import org.junit.Before; import org.junit.Test; @@ -37,61 +37,82 @@ import org.onap.policy.api.PolicyException; import org.onap.policy.api.PolicyParameters; public class ClosedLoopFaultPolicyServiceTest { - - ClosedLoopFaultPolicyService service = null; - - @Before - public void setUp() throws Exception { - Properties prop = new Properties(); - prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); - String succeeded = prop.getProperty("xacml.rest.pap.url"); - List<String> paps = Arrays.asList(succeeded.split(",")); - PAPServices.setPaps(paps); - PAPServices.setJunit(true); - - PolicyParameters policyParameters = new PolicyParameters(); - policyParameters.setPolicyConfigType(PolicyConfigType.ClosedLoop_Fault); - policyParameters.setPolicyName("Test.testCLFaultPolicy"); - policyParameters.setRequestID(UUID.randomUUID()); - SimpleDateFormat dateformat3 = new SimpleDateFormat("dd/MM/yyyy"); - Date date = dateformat3.parse("15/10/2016"); - policyParameters.setTtlDate(date); - policyParameters.setGuard(true); - policyParameters.setRiskLevel("5"); - policyParameters.setRiskType("TEST"); - policyParameters.setConfigBody("{\"trinity\":true,\"vUSP\":false,\"mcr\":true,\"gamma\":true,\"vDNS\":false,\"geoLink\":\"testing\",\"emailAddress\":\"mm117s@att.com\",\"serviceTypePolicyName\":\"Registration Failure(Trinity)\",\"attributes\":{\"Window\":\"200\",\"Training\":\"123\",\"ConsecutiveIntervalOnset\":\"300\",\"FractionSamplePerDay\":\"30\",\"OnsetMessage\":\"test\",\"PtileLimit\":\"300\",\"PolicyName\":\"testD2ServicesView\",\"AbatementMessage\":\"test\",\"RetryTimer\":\"30\",\"ConsecutiveIntervalAbatement\":\"300\",\"Threshold\":\"120\"},\"templateVersion\":\"1604\",\"onapname\":\"java\"}"); - String policyName = "testCLFaultPolicy"; - String policyScope = "Test"; - service = new ClosedLoopFaultPolicyService(policyName, policyScope, policyParameters, date.toString()); - } + ClosedLoopFaultPolicyService service = null; + + @Before + public void setUp() throws Exception { + Properties prop = new Properties(); + prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); + String succeeded = prop.getProperty("xacml.rest.pap.url"); + List<String> paps = Arrays.asList(succeeded.split(",")); + PAPServices.setPaps(paps); + PAPServices.setJunit(true); + + PolicyParameters policyParameters = new PolicyParameters(); + policyParameters.setPolicyConfigType(PolicyConfigType.ClosedLoop_Fault); + policyParameters.setPolicyName("Test.testCLFaultPolicy"); + policyParameters.setRequestID(UUID.randomUUID()); + SimpleDateFormat dateformat3 = new SimpleDateFormat("dd/MM/yyyy"); + Date date = dateformat3.parse("15/10/2016"); + policyParameters.setTtlDate(date); + policyParameters.setGuard(true); + policyParameters.setRiskLevel("5"); + policyParameters.setRiskType("TEST"); + policyParameters.setConfigBody( + "{\"trinity\":true," + + "\"vUSP\":false," + + "\"mcr\":true," + + "\"gamma\":true," + + "\"vDNS\":false," + + "\"geoLink\":\"testing\"," + + "\"emailAddress\":\"mm117s@att.com\"," + + "\"serviceTypePolicyName\":\"Registration Failure(Trinity)\"," + + "\"attributes\":{\"Window\":\"200\"," + + "\"Training\":\"123\"," + + "\"ConsecutiveIntervalOnset\":\"300\"," + + "\"FractionSamplePerDay\":\"30\"," + + "\"OnsetMessage\":\"test\"," + + "\"PtileLimit\":\"300\"," + + "\"PolicyName\":\"testD2ServicesView\"," + + "\"AbatementMessage\":\"test\"," + + "\"RetryTimer\":\"30\"," + + "\"ConsecutiveIntervalAbatement\":\"300\"," + + "\"Threshold\":\"120\"}," + + "\"templateVersion\":\"1604\"," + + "\"onapname\":\"java\"}"); + + String policyName = "testCLFaultPolicy"; + String policyScope = "Test"; + service = new ClosedLoopFaultPolicyService(policyName, policyScope, policyParameters, date.toString()); + } - @After - public void tearDown() throws Exception { - PAPServices.setPaps(null); - PAPServices.setJunit(false); - } + @After + public void tearDown() throws Exception { + PAPServices.setPaps(null); + PAPServices.setJunit(false); + } - @Test - public final void testFirewallPolicyService() { - assertNotNull(service); - } + @Test + public final void testFirewallPolicyService() { + assertNotNull(service); + } - @Test - public final void testGetValidation() { - assertTrue(service.getValidation()); - } + @Test + public final void testGetValidation() { + assertTrue(service.getValidation()); + } - @Test - public final void testGetMessage() { - String message = service.getMessage(); - assertNull(message); - } + @Test + public final void testGetMessage() { + String message = service.getMessage(); + assertNull(message); + } - @Test - public final void testGetResult() throws PolicyException { - service.getValidation(); - String result = service.getResult(false); - assertEquals("success",result); - } + @Test + public final void testGetResult() throws PolicyException { + service.getValidation(); + String result = service.getResult(false); + assertEquals("success", result); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/ClosedLoopPMPolicyServiceTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/ClosedLoopPMPolicyServiceTest.java index 99dc67742..e2b614eee 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/ClosedLoopPMPolicyServiceTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/ClosedLoopPMPolicyServiceTest.java @@ -1,15 +1,17 @@ /*- * ============LICENSE_START======================================================= - * ONAP-PAP-REST + * ONAP-PDP-REST * ================================================================================ * Copyright (C) 2018 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. @@ -20,7 +22,6 @@ package org.onap.policy.pdp.rest.api.services; import static org.junit.Assert.*; - import java.io.FileInputStream; import java.text.SimpleDateFormat; import java.util.Arrays; @@ -28,7 +29,6 @@ import java.util.Date; import java.util.List; import java.util.Properties; import java.util.UUID; - import org.junit.After; import org.junit.Before; import org.junit.Test; @@ -37,61 +37,70 @@ import org.onap.policy.api.PolicyException; import org.onap.policy.api.PolicyParameters; public class ClosedLoopPMPolicyServiceTest { - - ClosedLoopPMPolicyService service = null; - - @Before - public void setUp() throws Exception { - Properties prop = new Properties(); - prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); - String succeeded = prop.getProperty("xacml.rest.pap.url"); - List<String> paps = Arrays.asList(succeeded.split(",")); - PAPServices.setPaps(paps); - PAPServices.setJunit(true); - - PolicyParameters policyParameters = new PolicyParameters(); + + ClosedLoopPMPolicyService service = null; + + @Before + public void setUp() throws Exception { + Properties prop = new Properties(); + prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); + String succeeded = prop.getProperty("xacml.rest.pap.url"); + List<String> paps = Arrays.asList(succeeded.split(",")); + PAPServices.setPaps(paps); + PAPServices.setJunit(true); + + PolicyParameters policyParameters = new PolicyParameters(); policyParameters.setPolicyConfigType(PolicyConfigType.ClosedLoop_PM); policyParameters.setPolicyName("Test.testCLFaultPolicy"); policyParameters.setRequestID(UUID.randomUUID()); - SimpleDateFormat dateformat3 = new SimpleDateFormat("dd/MM/yyyy"); - Date date = dateformat3.parse("15/10/2016"); - policyParameters.setTtlDate(date); - policyParameters.setGuard(true); - policyParameters.setRiskLevel("5"); - policyParameters.setRiskType("TEST"); - policyParameters.setConfigBody("{\"trinity\":true,\"vUSP\":false,\"mcr\":true,\"gama\":true,\"vDNS\":false,\"geoLink\":\"testing\",\"emailAddress\":\"mm117s@att.com\",\"serviceTypePolicyName\":\"Registration Failure(Trinity)\",\"attributes\":{\"Window\":\"200\",\"Training\":\"123\",\"ConsecutiveIntervalOnset\":\"300\",\"FractionSamplePerDay\":\"30\",\"OnsetMessage\":\"test\",\"PtileLimit\":\"300\",\"PolicyName\":\"testD2ServicesView\",\"AbatementMessage\":\"test\",\"RetryTimer\":\"30\",\"ConsecutiveIntervalAbatement\":\"300\",\"Threshold\":\"120\"},\"templateVersion\":\"1604\",\"onapname\":\"java\"}"); - - String policyName = "testCLFaultPolicy"; - String policyScope = "Test"; - service = new ClosedLoopPMPolicyService(policyName, policyScope, policyParameters, date.toString()); - } + SimpleDateFormat dateformat3 = new SimpleDateFormat("dd/MM/yyyy"); + Date date = dateformat3.parse("15/10/2016"); + policyParameters.setTtlDate(date); + policyParameters.setGuard(true); + policyParameters.setRiskLevel("5"); + policyParameters.setRiskType("TEST"); + policyParameters.setConfigBody( + "{\"trinity\":true,\"vUSP\":false,\"mcr\":true,\"gama\":true,\"vDNS\":false,\"geoLink\":\"testing\"," + + "\"emailAddress\":\"mm117s@att.com\"," + + "\"serviceTypePolicyName\":\"Registration Failure(Trinity)\",\"attributes\":" + + "{\"Window\":\"200\",\"Training\":\"123\",\"ConsecutiveIntervalOnset\":\"300\"," + + "\"FractionSamplePerDay\":\"30\",\"OnsetMessage\":\"test\",\"PtileLimit\":\"300\"," + + "\"PolicyName\":\"testD2ServicesView\",\"AbatementMessage\":\"test\",\"RetryTimer\":\"30\"," + + "\"ConsecutiveIntervalAbatement\":\"300\",\"Threshold\":\"120\"}," + + "\"templateVersion\":\"1604\",\"onapname\":\"java\"}"); + + String policyName = "testCLFaultPolicy"; + String policyScope = "Test"; + service = new ClosedLoopPMPolicyService(policyName, policyScope, policyParameters, + date.toString()); + } - @After - public void tearDown() throws Exception { - PAPServices.setPaps(null); - PAPServices.setJunit(false); - } + @After + public void tearDown() throws Exception { + PAPServices.setPaps(null); + PAPServices.setJunit(false); + } - @Test - public final void testFirewallPolicyService() { - assertNotNull(service); - } + @Test + public final void testFirewallPolicyService() { + assertNotNull(service); + } - @Test - public final void testGetValidation() { - assertTrue(service.getValidation()); - } + @Test + public final void testGetValidation() { + assertTrue(service.getValidation()); + } - @Test - public final void testGetMessage() { - String message = service.getMessage(); - assertNull(message); - } + @Test + public final void testGetMessage() { + String message = service.getMessage(); + assertNull(message); + } - @Test - public final void testGetResult() throws PolicyException { - service.getValidation(); - String result = service.getResult(false); - assertEquals("success",result); - } + @Test + public final void testGetResult() throws PolicyException { + service.getValidation(); + String result = service.getResult(false); + assertEquals("success", result); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/ConfigPolicyServiceTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/ConfigPolicyServiceTest.java index 5a3a6b387..926f505d8 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/ConfigPolicyServiceTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/ConfigPolicyServiceTest.java @@ -22,14 +22,12 @@ package org.onap.policy.pdp.rest.api.services; import static org.junit.Assert.assertEquals; - import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.util.Arrays; import java.util.List; import java.util.Properties; - import org.junit.AfterClass; import org.junit.BeforeClass; import org.junit.Test; @@ -37,43 +35,43 @@ import org.onap.policy.api.PolicyParameters; public class ConfigPolicyServiceTest { - private static final String SYSTEM_KEY = "xacml.properties"; - private static String oldProperty; + private static final String SYSTEM_KEY = "xacml.properties"; + private static String oldProperty; - @BeforeClass - public static void setUpBeforeClass() throws Exception { - Properties prop = new Properties(); - prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); - String succeeded = prop.getProperty("xacml.rest.pap.url"); - List<String> paps = Arrays.asList(succeeded.split(",")); - PAPServices.setPaps(paps); - PAPServices.setJunit(true); - oldProperty = System.getProperty(SYSTEM_KEY); - } + @BeforeClass + public static void setUpBeforeClass() throws Exception { + Properties prop = new Properties(); + prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); + String succeeded = prop.getProperty("xacml.rest.pap.url"); + List<String> paps = Arrays.asList(succeeded.split(",")); + PAPServices.setPaps(paps); + PAPServices.setJunit(true); + oldProperty = System.getProperty(SYSTEM_KEY); + } - @AfterClass - public static void tearDownAfterClass() { - PAPServices.setPaps(null); - PAPServices.setJunit(false); - // Restore the original system property - if (oldProperty != null) { - System.setProperty(SYSTEM_KEY, oldProperty); - } else { - System.clearProperty(SYSTEM_KEY); - } - } + @AfterClass + public static void tearDownAfterClass() { + PAPServices.setPaps(null); + PAPServices.setJunit(false); + // Restore the original system property + if (oldProperty != null) { + System.setProperty(SYSTEM_KEY, oldProperty); + } else { + System.clearProperty(SYSTEM_KEY); + } + } - @Test - public void testRaw() throws FileNotFoundException, IOException { + @Test + public void testRaw() throws FileNotFoundException, IOException { - String testVal = "testVal"; - PolicyParameters testParams = new PolicyParameters(); + String testVal = "testVal"; + PolicyParameters testParams = new PolicyParameters(); - // Set the system property temporarily - System.setProperty(SYSTEM_KEY, "xacml.pdp.properties"); + // Set the system property temporarily + System.setProperty(SYSTEM_KEY, "xacml.pdp.properties"); - ConfigPolicyService service = new ConfigPolicyService(testVal, testVal, testParams, testVal); - assertEquals(service.getValidation(), false); - assertEquals(service.getMessage(), "PE300 - Data Issue: No Config Body given."); - } + ConfigPolicyService service = new ConfigPolicyService(testVal, testVal, testParams, testVal); + assertEquals(service.getValidation(), false); + assertEquals(service.getMessage(), "PE300 - Data Issue: No Config Body given."); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/DecisionPolicyServiceTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/DecisionPolicyServiceTest.java index 24b8497e3..72c12155f 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/DecisionPolicyServiceTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/DecisionPolicyServiceTest.java @@ -1,15 +1,17 @@ /*- * ============LICENSE_START======================================================= - * ONAP-PAP-REST + * ONAP-PDP-REST * ================================================================================ * Copyright (C) 2018 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. @@ -41,107 +43,103 @@ import org.onap.policy.api.PolicyParameters; public class DecisionPolicyServiceTest { - DecisionPolicyService service = null; - - @Before - public void setUp() throws Exception { - Properties prop = new Properties(); - prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); - String succeeded = prop.getProperty("xacml.rest.pap.url"); - List<String> paps = Arrays.asList(succeeded.split(",")); - PAPServices.setPaps(paps); - PAPServices.setJunit(true); - - PolicyParameters policyParameters = new PolicyParameters(); - policyParameters.setPolicyClass(PolicyClass.Decision); - policyParameters.setPolicyName("Test.testDecisionPolicy"); - policyParameters.setOnapName("MSO"); - policyParameters - .setPolicyDescription("This is a sample Decision policy UPDATE example with Settings"); - - Map<String, String> configAttributes = new HashMap<>(); - configAttributes.put("Template", "UpdateTemplate"); - configAttributes.put("controller", "default"); - configAttributes.put("SamPoll", "30"); - configAttributes.put("value", "abcd"); - Map<AttributeType, Map<String, String>> attributes = new HashMap<>(); - attributes.put(AttributeType.MATCHING, configAttributes); - Map<String, String> settingsMap = new HashMap<>(); - settingsMap.put("server", "5"); - attributes.put(AttributeType.SETTINGS, settingsMap); - policyParameters.setAttributes(attributes); - - List<String> dynamicRuleAlgorithmLabels = new LinkedList<>(); - List<String> dynamicRuleAlgorithmFunctions = new LinkedList<>(); - List<String> dynamicRuleAlgorithmField1 = new LinkedList<>(); - List<String> dynamicRuleAlgorithmField2 = new LinkedList<>(); - dynamicRuleAlgorithmLabels = Arrays.asList("A1", "A2", "A3", "A4", "A5", "A6", "A7"); - dynamicRuleAlgorithmField1 = - Arrays.asList("S_server", "cap", "cobal", "A2", "Config", "A4", "A1"); - dynamicRuleAlgorithmFunctions = Arrays.asList("integer-equal", "string-contains", - "integer-equal", "and", "integer-greater-than", "or", "and"); - dynamicRuleAlgorithmField2 = Arrays.asList("90", "ca", "90", "A3", "45", "A5", "A6"); - policyParameters.setDynamicRuleAlgorithmLabels(dynamicRuleAlgorithmLabels); - policyParameters.setDynamicRuleAlgorithmField1(dynamicRuleAlgorithmField1); - policyParameters.setDynamicRuleAlgorithmFunctions(dynamicRuleAlgorithmFunctions); - policyParameters.setDynamicRuleAlgorithmField2(dynamicRuleAlgorithmField2); - - policyParameters.setRequestID(UUID.randomUUID()); - policyParameters.setGuard(true); - policyParameters.setRiskLevel("5"); - policyParameters.setRiskType("TEST"); - String policyName = "testDecisionPolicy"; - String policyScope = "Test"; - service = new DecisionPolicyService(policyName, policyScope, policyParameters); - } - - @After - public void tearDown() throws Exception { - PAPServices.setPaps(null); - PAPServices.setJunit(false); - } - - @Test - public final void testDecisionPolicyService() { - assertNotNull(service); - } - - @Test - public final void testGetValidation() { - assertTrue(service.getValidation()); - } - - @Test - public final void testGetMessage() { - String message = service.getMessage(); - assertNull(message); - } - - @Test - public final void testGetResult() throws PolicyException { - service.getValidation(); - String result = service.getResult(false); - assertEquals("success", result); - } - - @Test - public void testExtraPaths() throws PolicyException { - // Set up test data - String value = "testVal"; - PolicyParameters params = new PolicyParameters(); - Map<AttributeType, Map<String, String>> attributes = - new HashMap<AttributeType, Map<String, String>>(); - // attributes.put(AttributeType.MATCHING, null); - attributes.put(AttributeType.SETTINGS, null); - params.setAttributes(attributes); - DecisionPolicyService service = new DecisionPolicyService(value, value, params); - - // Negative test methods - assertEquals(false, service.getValidation()); - assertEquals("success", service.getResult(true)); - attributes.remove(AttributeType.SETTINGS); - attributes.put(AttributeType.MATCHING, null); - assertEquals("success", service.getResult(true)); - } - + DecisionPolicyService service = null; + + @Before + public void setUp() throws Exception { + Properties prop = new Properties(); + prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); + String succeeded = prop.getProperty("xacml.rest.pap.url"); + List<String> paps = Arrays.asList(succeeded.split(",")); + PAPServices.setPaps(paps); + PAPServices.setJunit(true); + + PolicyParameters policyParameters = new PolicyParameters(); + policyParameters.setPolicyClass(PolicyClass.Decision); + policyParameters.setPolicyName("Test.testDecisionPolicy"); + policyParameters.setOnapName("MSO"); + policyParameters.setPolicyDescription("This is a sample Decision policy UPDATE example with Settings"); + + Map<String, String> configAttributes = new HashMap<>(); + configAttributes.put("Template", "UpdateTemplate"); + configAttributes.put("controller", "default"); + configAttributes.put("SamPoll", "30"); + configAttributes.put("value", "abcd"); + Map<AttributeType, Map<String, String>> attributes = new HashMap<>(); + attributes.put(AttributeType.MATCHING, configAttributes); + Map<String, String> settingsMap = new HashMap<>(); + settingsMap.put("server", "5"); + attributes.put(AttributeType.SETTINGS, settingsMap); + policyParameters.setAttributes(attributes); + + List<String> dynamicRuleAlgorithmLabels = new LinkedList<>(); + List<String> dynamicRuleAlgorithmFunctions = new LinkedList<>(); + List<String> dynamicRuleAlgorithmField1 = new LinkedList<>(); + List<String> dynamicRuleAlgorithmField2 = new LinkedList<>(); + dynamicRuleAlgorithmLabels = Arrays.asList("A1", "A2", "A3", "A4", "A5", "A6", "A7"); + dynamicRuleAlgorithmField1 = Arrays.asList("S_server", "cap", "cobal", "A2", "Config", "A4", "A1"); + dynamicRuleAlgorithmFunctions = Arrays.asList("integer-equal", "string-contains", "integer-equal", "and", + "integer-greater-than", "or", "and"); + dynamicRuleAlgorithmField2 = Arrays.asList("90", "ca", "90", "A3", "45", "A5", "A6"); + policyParameters.setDynamicRuleAlgorithmLabels(dynamicRuleAlgorithmLabels); + policyParameters.setDynamicRuleAlgorithmField1(dynamicRuleAlgorithmField1); + policyParameters.setDynamicRuleAlgorithmFunctions(dynamicRuleAlgorithmFunctions); + policyParameters.setDynamicRuleAlgorithmField2(dynamicRuleAlgorithmField2); + + policyParameters.setRequestID(UUID.randomUUID()); + policyParameters.setGuard(true); + policyParameters.setRiskLevel("5"); + policyParameters.setRiskType("TEST"); + String policyName = "testDecisionPolicy"; + String policyScope = "Test"; + service = new DecisionPolicyService(policyName, policyScope, policyParameters); + } + + @After + public void tearDown() throws Exception { + PAPServices.setPaps(null); + PAPServices.setJunit(false); + } + + @Test + public final void testDecisionPolicyService() { + assertNotNull(service); + } + + @Test + public final void testGetValidation() { + assertTrue(service.getValidation()); + } + + @Test + public final void testGetMessage() { + String message = service.getMessage(); + assertNull(message); + } + + @Test + public final void testGetResult() throws PolicyException { + service.getValidation(); + String result = service.getResult(false); + assertEquals("success", result); + } + + @Test + public void testExtraPaths() throws PolicyException { + // Set up test data + String value = "testVal"; + PolicyParameters params = new PolicyParameters(); + Map<AttributeType, Map<String, String>> attributes = new HashMap<AttributeType, Map<String, String>>(); + // attributes.put(AttributeType.MATCHING, null); + attributes.put(AttributeType.SETTINGS, null); + params.setAttributes(attributes); + DecisionPolicyService service = new DecisionPolicyService(value, value, params); + + // Negative test methods + assertEquals(false, service.getValidation()); + assertEquals("success", service.getResult(true)); + attributes.remove(AttributeType.SETTINGS); + attributes.put(AttributeType.MATCHING, null); + assertEquals("success", service.getResult(true)); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/FirewallPolicyServiceTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/FirewallPolicyServiceTest.java index ccedd7553..348ba754c 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/FirewallPolicyServiceTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/FirewallPolicyServiceTest.java @@ -1,15 +1,17 @@ /*- * ============LICENSE_START======================================================= - * ONAP-PAP-REST + * ONAP-PDP-REST * ================================================================================ * Copyright (C) 2018 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. @@ -37,59 +39,58 @@ import org.onap.policy.api.PolicyParameters; public class FirewallPolicyServiceTest { FirewallPolicyService firewallPolicyService = null; - - - @Before - public void setUp() throws Exception { - Properties prop = new Properties(); - prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); - String succeeded = prop.getProperty("xacml.rest.pap.url"); - List<String> paps = Arrays.asList(succeeded.split(",")); - PAPServices.setPaps(paps); - PAPServices.setJunit(true); - - PolicyParameters policyParameters = new PolicyParameters(); - policyParameters.setPolicyConfigType(PolicyConfigType.Firewall); //required - policyParameters.setPolicyName("Test.testFWPolicy"); //required + + @Before + public void setUp() throws Exception { + Properties prop = new Properties(); + prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); + String succeeded = prop.getProperty("xacml.rest.pap.url"); + List<String> paps = Arrays.asList(succeeded.split(",")); + PAPServices.setPaps(paps); + PAPServices.setJunit(true); + + PolicyParameters policyParameters = new PolicyParameters(); + policyParameters.setPolicyConfigType(PolicyConfigType.Firewall); // required + policyParameters.setPolicyName("Test.testFWPolicy"); // required policyParameters.setRequestID(UUID.randomUUID()); - SimpleDateFormat dateformat3 = new SimpleDateFormat("dd/MM/yyyy"); - Date date = dateformat3.parse("15/10/2016"); - policyParameters.setTtlDate(date); - policyParameters.setGuard(true); - policyParameters.setRiskLevel("5"); - policyParameters.setRiskType("TEST"); - policyParameters.setConfigBody("{\"configName\":\"test\"}"); - String policyName = "testFWPolicy"; - String policyScope = "Test"; + SimpleDateFormat dateformat3 = new SimpleDateFormat("dd/MM/yyyy"); + Date date = dateformat3.parse("15/10/2016"); + policyParameters.setTtlDate(date); + policyParameters.setGuard(true); + policyParameters.setRiskLevel("5"); + policyParameters.setRiskType("TEST"); + policyParameters.setConfigBody("{\"configName\":\"test\"}"); + String policyName = "testFWPolicy"; + String policyScope = "Test"; firewallPolicyService = new FirewallPolicyService(policyName, policyScope, policyParameters, date.toString()); - } + } - @After - public void tearDown() throws Exception { - PAPServices.setPaps(null); - PAPServices.setJunit(false); - } + @After + public void tearDown() throws Exception { + PAPServices.setPaps(null); + PAPServices.setJunit(false); + } - @Test - public final void testFirewallPolicyService() { - assertNotNull(firewallPolicyService); - } + @Test + public final void testFirewallPolicyService() { + assertNotNull(firewallPolicyService); + } - @Test - public final void testGetValidation() { - assertTrue(firewallPolicyService.getValidation()); - } + @Test + public final void testGetValidation() { + assertTrue(firewallPolicyService.getValidation()); + } - @Test - public final void testGetMessage() { - String message = firewallPolicyService.getMessage(); - assertNull(message); - } + @Test + public final void testGetMessage() { + String message = firewallPolicyService.getMessage(); + assertNull(message); + } - @Test - public final void testGetResult() throws PolicyException { - firewallPolicyService.getValidation(); - String result = firewallPolicyService.getResult(false); - assertEquals("success",result); - } + @Test + public final void testGetResult() throws PolicyException { + firewallPolicyService.getValidation(); + String result = firewallPolicyService.getResult(false); + assertEquals("success", result); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/MicroServicesPolicyServiceTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/MicroServicesPolicyServiceTest.java index e460a853b..f80371a4f 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/MicroServicesPolicyServiceTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/MicroServicesPolicyServiceTest.java @@ -1,15 +1,17 @@ /*- * ============LICENSE_START======================================================= - * ONAP-PAP-REST + * ONAP-PDP-REST * ================================================================================ * Copyright (C) 2018 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. @@ -20,7 +22,6 @@ package org.onap.policy.pdp.rest.api.services; import static org.junit.Assert.*; - import java.io.FileInputStream; import java.text.SimpleDateFormat; import java.util.Arrays; @@ -28,7 +29,6 @@ import java.util.Date; import java.util.List; import java.util.Properties; import java.util.UUID; - import org.junit.After; import org.junit.Before; import org.junit.Test; @@ -40,59 +40,58 @@ public class MicroServicesPolicyServiceTest { MicroServicesPolicyService service = null; - @Before - public void setUp() throws Exception { - Properties prop = new Properties(); - prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); - String succeeded = prop.getProperty("xacml.rest.pap.url"); - List<String> paps = Arrays.asList(succeeded.split(",")); - PAPServices.setPaps(paps); - PAPServices.setJunit(true); - - PolicyParameters policyParameters = new PolicyParameters(); + @Before + public void setUp() throws Exception { + Properties prop = new Properties(); + prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); + String succeeded = prop.getProperty("xacml.rest.pap.url"); + List<String> paps = Arrays.asList(succeeded.split(",")); + PAPServices.setPaps(paps); + PAPServices.setJunit(true); + + PolicyParameters policyParameters = new PolicyParameters(); policyParameters.setPolicyConfigType(PolicyConfigType.MicroService); policyParameters.setPolicyName("Test.testMSPolicy"); - policyParameters.setOnapName("DCAE"); + policyParameters.setOnapName("DCAE"); policyParameters.setRequestID(UUID.randomUUID()); - SimpleDateFormat dateformat3 = new SimpleDateFormat("dd/MM/yyyy"); - Date date = dateformat3.parse("15/10/2016"); - policyParameters.setTtlDate(date); - policyParameters.setGuard(true); - policyParameters.setRiskLevel("5"); - policyParameters.setRiskType("TEST"); - policyParameters.setConfigBody("{\"configName\":\"test\"}"); - String policyName = "testMSPolicy"; - String policyScope = "Test"; - service = new MicroServicesPolicyService(policyName, policyScope, policyParameters, date.toString()); - } - - @After - public void tearDown() throws Exception { - PAPServices.setPaps(null); - PAPServices.setJunit(false); - } + SimpleDateFormat dateformat3 = new SimpleDateFormat("dd/MM/yyyy"); + Date date = dateformat3.parse("15/10/2016"); + policyParameters.setTtlDate(date); + policyParameters.setGuard(true); + policyParameters.setRiskLevel("5"); + policyParameters.setRiskType("TEST"); + policyParameters.setConfigBody("{\"configName\":\"test\"}"); + String policyName = "testMSPolicy"; + String policyScope = "Test"; + service = new MicroServicesPolicyService(policyName, policyScope, policyParameters, date.toString()); + } - @Test - public final void testFirewallPolicyService() { - assertNotNull(service); - } + @After + public void tearDown() throws Exception { + PAPServices.setPaps(null); + PAPServices.setJunit(false); + } - @Test - public final void testGetValidation() { - assertTrue(service.getValidation()); - } + @Test + public final void testFirewallPolicyService() { + assertNotNull(service); + } - @Test - public final void testGetMessage() { - String message = service.getMessage(); - assertNull(message); - } + @Test + public final void testGetValidation() { + assertTrue(service.getValidation()); + } - @Test - public final void testGetResult() throws PolicyException { - service.getValidation(); - String result = service.getResult(false); - assertEquals("success",result); - } + @Test + public final void testGetMessage() { + String message = service.getMessage(); + assertNull(message); + } + @Test + public final void testGetResult() throws PolicyException { + service.getValidation(); + String result = service.getResult(false); + assertEquals("success", result); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/OptimizationPolicyServiceTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/OptimizationPolicyServiceTest.java index 5a4195b79..76cc92290 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/OptimizationPolicyServiceTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/OptimizationPolicyServiceTest.java @@ -24,7 +24,6 @@ package org.onap.policy.pdp.rest.api.services; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; - import java.io.FileInputStream; import java.text.SimpleDateFormat; import java.util.Arrays; @@ -32,7 +31,6 @@ import java.util.Date; import java.util.List; import java.util.Properties; import java.util.UUID; - import org.junit.AfterClass; import org.junit.Before; import org.junit.BeforeClass; @@ -43,58 +41,57 @@ import org.onap.policy.api.PolicyParameters; public class OptimizationPolicyServiceTest { - OptimizationPolicyService service = null; + OptimizationPolicyService service = null; - @BeforeClass - public static void setUpBeforeClass() throws Exception { - Properties prop = new Properties(); - prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); - String succeeded = prop.getProperty("xacml.rest.pap.url"); - List<String> paps = Arrays.asList(succeeded.split(",")); - PAPServices.setPaps(paps); - PAPServices.setJunit(true); - } + @BeforeClass + public static void setUpBeforeClass() throws Exception { + Properties prop = new Properties(); + prop.load(new FileInputStream("src/test/resources/pass.xacml.pdp.properties")); + String succeeded = prop.getProperty("xacml.rest.pap.url"); + List<String> paps = Arrays.asList(succeeded.split(",")); + PAPServices.setPaps(paps); + PAPServices.setJunit(true); + } - @Before - public void setUp() throws Exception { - PolicyParameters policyParameters = new PolicyParameters(); + @Before + public void setUp() throws Exception { + PolicyParameters policyParameters = new PolicyParameters(); policyParameters.setPolicyConfigType(PolicyConfigType.Optimization); policyParameters.setPolicyName("Test.testOOFPolicy"); - policyParameters.setOnapName("OOF"); + policyParameters.setOnapName("OOF"); policyParameters.setRequestID(UUID.randomUUID()); - SimpleDateFormat dateformat3 = new SimpleDateFormat("dd/MM/yyyy"); - Date date = dateformat3.parse("15/10/2016"); - policyParameters.setTtlDate(date); - policyParameters.setGuard(true); - policyParameters.setRiskLevel("5"); - policyParameters.setRiskType("TEST"); - policyParameters.setConfigBody("{\"optimization\":\"test\"}"); - String policyName = "testOOFPolicy"; - String policyScope = "Test"; - service = new OptimizationPolicyService(policyName, policyScope, policyParameters, date.toString()); - } - - @AfterClass - public static void tearDownAfterClass() { - PAPServices.setPaps(null); - PAPServices.setJunit(false); - } + SimpleDateFormat dateformat3 = new SimpleDateFormat("dd/MM/yyyy"); + Date date = dateformat3.parse("15/10/2016"); + policyParameters.setTtlDate(date); + policyParameters.setGuard(true); + policyParameters.setRiskLevel("5"); + policyParameters.setRiskType("TEST"); + policyParameters.setConfigBody("{\"optimization\":\"test\"}"); + String policyName = "testOOFPolicy"; + String policyScope = "Test"; + service = new OptimizationPolicyService(policyName, policyScope, policyParameters, date.toString()); + } - @Test - public final void testOptimizationPolicyService() { - assertNotNull(service); - } + @AfterClass + public static void tearDownAfterClass() { + PAPServices.setPaps(null); + PAPServices.setJunit(false); + } - @Test - public final void testGetMessage() { - String message = service.getMessage(); - assertNull(message); - } + @Test + public final void testOptimizationPolicyService() { + assertNotNull(service); + } - @Test - public final void testGetResult() throws PolicyException { - String result = service.getResult(false); - assertEquals("success",result); - } + @Test + public final void testGetMessage() { + String message = service.getMessage(); + assertNull(message); + } + @Test + public final void testGetResult() throws PolicyException { + String result = service.getResult(false); + assertEquals("success", result); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/PAPServicesTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/PAPServicesTest.java index 09014cc3d..d74d0a28a 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/PAPServicesTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/PAPServicesTest.java @@ -1,9 +1,11 @@ /*- * ============LICENSE_START======================================================= - * ONAP-PAP-REST + * ONAP-PDP-REST * ================================================================================ * Copyright (C) 2018 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 @@ -20,13 +22,11 @@ package org.onap.policy.pdp.rest.api.services; import static org.junit.Assert.*; - import java.io.FileInputStream; import java.util.Arrays; import java.util.List; import java.util.Properties; import java.util.UUID; - import org.junit.After; import org.junit.Before; import org.junit.Test; @@ -47,7 +47,6 @@ public class PAPServicesTest { List<String> paps = Arrays.asList(succeeded.split(",")); PAPServices.setPaps(paps); papServices = new PAPServices(); - } @After @@ -60,23 +59,22 @@ public class PAPServicesTest { public final void testCallPAP() throws PolicyException { StdPAPPolicy newPAPPolicy = new StdPAPPolicy(); String response = null; - response = (String) papServices.callPAP(newPAPPolicy, new String[]{"operation=create", "apiflag=api", - "policyType=Config"}, UUID.randomUUID(), "Config"); + response = (String) papServices.callPAP(newPAPPolicy, + new String[] {"operation=create", "apiflag=api", "policyType=Config"}, UUID.randomUUID(), "Config"); assertEquals("success", response); } @Test public final void testGetActiveVersion() { - String activeVersion = papServices.getActiveVersion("test", "Config_", "test.testpolicy", "Config", - UUID.randomUUID()); + String activeVersion = + papServices.getActiveVersion("test", "Config_", "test.testpolicy", "Config", UUID.randomUUID()); assertNull(activeVersion); } @Test public final void testPushPolicy() throws PolicyException { - StdPDPPolicy selectedPolicy = papServices.pushPolicy("test", "Config_", "test.testpolicy", "Config", "default" - , UUID.randomUUID()); + StdPDPPolicy selectedPolicy = + papServices.pushPolicy("test", "Config_", "test.testpolicy", "Config", "default", UUID.randomUUID()); assertNull(selectedPolicy); } - } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/PDPServicesTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/PDPServicesTest.java index 4e8a0fa4a..5b660bf7d 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/PDPServicesTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/PDPServicesTest.java @@ -4,12 +4,14 @@ * ================================================================================ * Copyright (C) 2017 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. @@ -24,17 +26,13 @@ import java.util.HashMap; import java.util.Map; import java.util.UUID; import java.util.Map.Entry; - import javax.json.Json; import javax.json.JsonArrayBuilder; import javax.json.JsonObject; import javax.json.JsonObjectBuilder; - import org.junit.*; import org.junit.runner.RunWith; - import static org.junit.Assert.*; - import org.onap.policy.api.DecisionRequestParameters; import org.onap.policy.api.PolicyDecisionException; import org.onap.policy.pdp.rest.api.models.PDPResponse; @@ -47,148 +45,136 @@ import org.springframework.test.context.web.WebAppConfiguration; @ContextConfiguration(classes = {PDPRestConfig.class}) @WebAppConfiguration public class PDPServicesTest { - /** - * Run the PDPServices() constructor test. - * - * @generatedBy CodePro at 7/20/17 9:26 AM - */ - @Test - public void testPDPServices_1() - throws Exception { - PDPServices result = new PDPServices(); - assertNotNull(result); - // add additional test code here - } - - /** - * Run the Collection<PDPResponse> generateRequest(String,UUID,boolean,boolean) method test. - * - * @throws Exception - * - * @generatedBy CodePro at 7/20/17 9:26 AM - */ - @Test - public void testGenerateRequest_1() - throws Exception { - DecisionRequestParameters pep = new DecisionRequestParameters(); - Map<String,String> eventAttributes = new HashMap<>(); - eventAttributes.put("TEST", "test"); - pep.setOnapName("te123"); - pep.setDecisionAttributes(eventAttributes); - PDPServices fixture = new PDPServices(); - - //Failure Tests. - String jsonString = getModel(pep).toString(); - UUID requestID = UUID.randomUUID(); - - Collection<PDPResponse> result = fixture.generateRequest(jsonString, requestID, false, true); - - // add additional test code here - // An unexpected exception was thrown in user code while executing this test: - // java.lang.NoClassDefFoundError: Could not initialize class org.onap.policy.pdp.rest.api.services.PDPServices - assertNotNull(result); - - } - - private JsonObject getModel(DecisionRequestParameters pep) throws PolicyDecisionException{ + /** + * Run the PDPServices() constructor test. + * + * @generatedBy CodePro at 7/20/17 9:26 AM + */ + @Test + public void testPDPServices_1() throws Exception { + PDPServices result = new PDPServices(); + assertNotNull(result); + // add additional test code here + } + + /** + * Run the Collection<PDPResponse> generateRequest(String,UUID,boolean,boolean) method test. + * + * @throws Exception + * + * @generatedBy CodePro at 7/20/17 9:26 AM + */ + @Test + public void testGenerateRequest_1() throws Exception { + DecisionRequestParameters pep = new DecisionRequestParameters(); + Map<String, String> eventAttributes = new HashMap<>(); + eventAttributes.put("TEST", "test"); + pep.setOnapName("te123"); + pep.setDecisionAttributes(eventAttributes); + PDPServices fixture = new PDPServices(); + + // Failure Tests. + String jsonString = getModel(pep).toString(); + UUID requestID = UUID.randomUUID(); + + Collection<PDPResponse> result = fixture.generateRequest(jsonString, requestID, false, true); + + // add additional test code here + // An unexpected exception was thrown in user code while executing this test: + // java.lang.NoClassDefFoundError: Could not initialize class + // org.onap.policy.pdp.rest.api.services.PDPServices + assertNotNull(result); + + } + + private JsonObject getModel(DecisionRequestParameters pep) throws PolicyDecisionException { JsonArrayBuilder resourceArray = Json.createArrayBuilder(); - + Map<String, String> decisionAttributes = pep.getDecisionAttributes(); - for (Entry<String,String> key : decisionAttributes.entrySet()) { + for (Entry<String, String> key : decisionAttributes.entrySet()) { JsonObjectBuilder resourceBuilder = Json.createObjectBuilder(); if (key.getValue().matches("[0-9]+")) { - - if ((key.getKey().equals("ErrorCode")) || (key.getKey().equals("WorkStep"))) { - - resourceBuilder.add("Value", key.getValue()); - } else { - + if ((key.getKey().equals("ErrorCode")) || (key.getKey().equals("WorkStep"))) { + + resourceBuilder.add("Value", key.getValue()); + + } else { + int val = Integer.parseInt(key.getValue()); resourceBuilder.add("Value", val); - - } - + + } + } else { resourceBuilder.add("Value", key.getValue()); } resourceBuilder.add("AttributeId", key.getKey()); resourceArray.add(resourceBuilder); } - return Json.createObjectBuilder() - .add("Request", Json.createObjectBuilder() - .add("AccessSubject", Json.createObjectBuilder() - .add("Attribute", Json.createObjectBuilder() - .add("Value", pep.getOnapName()) - .add("AttributeId", "ONAPName"))) - .add("Resource", Json.createObjectBuilder() - .add("Attribute", resourceArray)) - .add("Action", Json.createObjectBuilder() - .add("Attribute", Json.createObjectBuilder() - .add("Value", "DECIDE") - .add("AttributeId", "urn:oasis:names:tc:xacml:1.0:action:action-id")))) + return Json.createObjectBuilder().add("Request", Json.createObjectBuilder().add("AccessSubject", + Json.createObjectBuilder().add("Attribute", + Json.createObjectBuilder().add("Value", pep.getOnapName()).add("AttributeId", "ONAPName"))) + .add("Resource", Json.createObjectBuilder().add("Attribute", resourceArray)) + .add("Action", Json.createObjectBuilder().add("Attribute", Json.createObjectBuilder() + .add("Value", "DECIDE").add("AttributeId", "urn:oasis:names:tc:xacml:1.0:action:action-id")))) .build(); } - - /** - * Run the Collection<PDPResponse> generateRequest(String,UUID,boolean,boolean) method test. - * - * @throws Exception - * - * @generatedBy CodePro at 7/20/17 9:26 AM - */ - @Test(expected = org.onap.policy.api.PolicyException.class) - public void testGenerateRequest_2() - throws Exception { - PDPServices fixture = new PDPServices(); - fixture.generateRequest("", UUID.randomUUID(), true, true); - String jsonString = ""; - UUID requestID = UUID.randomUUID(); - boolean unique = true; - boolean decide = true; - - Collection<PDPResponse> result = fixture.generateRequest(jsonString, requestID, unique, decide); - - // add additional test code here - assertNotNull(result); - } - - /** - * Perform pre-test initialization. - * - * @throws Exception - * if the initialization fails for some reason - * - * @generatedBy CodePro at 7/20/17 9:26 AM - */ - @Before - public void setUp() - throws Exception { - // add additional set up code here - } - - /** - * Perform post-test clean-up. - * - * @throws Exception - * if the clean-up fails for some reason - * - * @generatedBy CodePro at 7/20/17 9:26 AM - */ - @After - public void tearDown() - throws Exception { - // Add additional tear down code here - } - - /** - * Launch the test. - * - * @param args the command line arguments - * - * @generatedBy CodePro at 7/20/17 9:26 AM - */ - public static void main(String[] args) { - new org.junit.runner.JUnitCore().run(PDPServicesTest.class); - } -}
\ No newline at end of file + + /** + * Run the Collection<PDPResponse> generateRequest(String,UUID,boolean,boolean) method test. + * + * @throws Exception + * + * @generatedBy CodePro at 7/20/17 9:26 AM + */ + @Test(expected = org.onap.policy.api.PolicyException.class) + public void testGenerateRequest_2() throws Exception { + PDPServices fixture = new PDPServices(); + fixture.generateRequest("", UUID.randomUUID(), true, true); + String jsonString = ""; + UUID requestID = UUID.randomUUID(); + boolean unique = true; + boolean decide = true; + + Collection<PDPResponse> result = fixture.generateRequest(jsonString, requestID, unique, decide); + + // add additional test code here + assertNotNull(result); + } + + /** + * Perform pre-test initialization. + * + * @throws Exception if the initialization fails for some reason + * + * @generatedBy CodePro at 7/20/17 9:26 AM + */ + @Before + public void setUp() throws Exception { + // add additional set up code here + } + + /** + * Perform post-test clean-up. + * + * @throws Exception if the clean-up fails for some reason + * + * @generatedBy CodePro at 7/20/17 9:26 AM + */ + @After + public void tearDown() throws Exception { + // Add additional tear down code here + } + + /** + * Launch the test. + * + * @param args the command line arguments + * + * @generatedBy CodePro at 7/20/17 9:26 AM + */ + public static void main(String[] args) { + new org.junit.runner.JUnitCore().run(PDPServicesTest.class); + } +} diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/PolicyEngineImportServiceTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/PolicyEngineImportServiceTest.java index 9a90cc4fa..3275d8c47 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/PolicyEngineImportServiceTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/PolicyEngineImportServiceTest.java @@ -1,9 +1,11 @@ /*- * ============LICENSE_START======================================================= - * ONAP-PAP-REST + * ONAP-PDP-REST * ================================================================================ * Copyright (C) 2018 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 @@ -25,30 +27,30 @@ import org.springframework.mock.web.MockMultipartFile; import org.springframework.web.multipart.MultipartFile; public class PolicyEngineImportServiceTest { - @Test - public final void negativeTestService1() { - // Negative test constructor - String json = "testJson"; - MultipartFile file = null; - String id = "testID"; - PolicyEngineImportService service = new PolicyEngineImportService(json, file, id); - - // Test gets - assertNotNull(service.getResult()); - assertEquals(service.getResponseCode().value(), 400); - } + @Test + public final void negativeTestService1() { + // Negative test constructor + String json = "testJson"; + MultipartFile file = null; + String id = "testID"; + PolicyEngineImportService service = new PolicyEngineImportService(json, file, id); + + // Test gets + assertNotNull(service.getResult()); + assertEquals(service.getResponseCode().value(), 400); + } + + @Test + public final void negativeTestService2() { + // Negative test constructor + String json = "{\n\"serviceName\": \"testVal\"\n}\n"; + byte[] content = "bar".getBytes(); + MultipartFile file = new MockMultipartFile("foo", content); + String id = "testID"; + PolicyEngineImportService service = new PolicyEngineImportService(json, file, id); - @Test - public final void negativeTestService2() { - // Negative test constructor - String json = "{\n\"serviceName\": \"testVal\"\n}\n"; - byte[] content = "bar".getBytes(); - MultipartFile file = new MockMultipartFile("foo", content); - String id = "testID"; - PolicyEngineImportService service = new PolicyEngineImportService(json, file, id); - - // Test gets - assertNotNull(service.getResult()); - assertEquals(service.getResponseCode().value(), 400); - } + // Test gets + assertNotNull(service.getResult()); + assertEquals(service.getResponseCode().value(), 400); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/GetConfigServiceTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/GetConfigServiceTest.java index a3c1b2b05..61d37dca4 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/GetConfigServiceTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/GetConfigServiceTest.java @@ -4,12 +4,14 @@ * ================================================================================ * Copyright (C) 2017 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. @@ -20,7 +22,6 @@ package org.onap.policy.pdp.rest.api.test; import static org.junit.Assert.assertEquals; - import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.Collection; @@ -28,7 +29,6 @@ import java.util.HashMap; import java.util.LinkedList; import java.util.List; import java.util.Map; - import org.junit.Test; import org.onap.policy.api.ConfigRequestParameters; import org.onap.policy.api.PolicyConfigStatus; @@ -36,35 +36,38 @@ import org.onap.policy.pdp.rest.api.models.PolicyConfig; import org.onap.policy.pdp.rest.api.services.GetConfigService; public class GetConfigServiceTest { - private static final String TEST = "test"; - - @SuppressWarnings("unchecked") - @Test - public void filterMethodTest() throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException{ - ConfigRequestParameters configRequestParameters = new ConfigRequestParameters(); - GetConfigService getConfigService= new GetConfigService(configRequestParameters, null); - Method filter = GetConfigService.class.getDeclaredMethod("filterResults", Collection.class,ConfigRequestParameters.class); - filter.setAccessible(true); - List<PolicyConfig> policyConfigs = new LinkedList<>(); - - List<PolicyConfig> filterResults = (List<PolicyConfig>) filter.invoke(getConfigService, policyConfigs,configRequestParameters); - assertEquals(PolicyConfigStatus.CONFIG_NOT_FOUND, filterResults.get(0).getPolicyConfigStatus()); - // Check again with some values - configRequestParameters.setPolicyName(TEST); - configRequestParameters.setOnapName(TEST); - configRequestParameters.setConfigName(TEST); - Map<String,String> configAttributes = new HashMap<>(); - configAttributes.put(TEST, TEST); - configRequestParameters.setConfigAttributes(configAttributes); - PolicyConfig pConfig = new PolicyConfig(); - pConfig.setPolicyName(TEST); - Map<String,String> matching = new HashMap<>(); - matching.put("ONAPName", TEST); - matching.put("ConfigName", TEST); - matching.put("TEST", TEST); - pConfig.setMatchingConditions(matching); - policyConfigs.add(pConfig); - filterResults = (List<PolicyConfig>) filter.invoke(getConfigService, policyConfigs,configRequestParameters); - assertEquals(PolicyConfigStatus.CONFIG_NOT_FOUND, filterResults.get(0).getPolicyConfigStatus()); - } + private static final String TEST = "test"; + + @SuppressWarnings("unchecked") + @Test + public void filterMethodTest() throws NoSuchMethodException, SecurityException, IllegalAccessException, + IllegalArgumentException, InvocationTargetException { + ConfigRequestParameters configRequestParameters = new ConfigRequestParameters(); + GetConfigService getConfigService = new GetConfigService(configRequestParameters, null); + Method filter = GetConfigService.class.getDeclaredMethod("filterResults", Collection.class, + ConfigRequestParameters.class); + filter.setAccessible(true); + List<PolicyConfig> policyConfigs = new LinkedList<>(); + + List<PolicyConfig> filterResults = + (List<PolicyConfig>) filter.invoke(getConfigService, policyConfigs, configRequestParameters); + assertEquals(PolicyConfigStatus.CONFIG_NOT_FOUND, filterResults.get(0).getPolicyConfigStatus()); + // Check again with some values + configRequestParameters.setPolicyName(TEST); + configRequestParameters.setOnapName(TEST); + configRequestParameters.setConfigName(TEST); + Map<String, String> configAttributes = new HashMap<>(); + configAttributes.put(TEST, TEST); + configRequestParameters.setConfigAttributes(configAttributes); + PolicyConfig pConfig = new PolicyConfig(); + pConfig.setPolicyName(TEST); + Map<String, String> matching = new HashMap<>(); + matching.put("ONAPName", TEST); + matching.put("ConfigName", TEST); + matching.put("TEST", TEST); + pConfig.setMatchingConditions(matching); + policyConfigs.add(pConfig); + filterResults = (List<PolicyConfig>) filter.invoke(getConfigService, policyConfigs, configRequestParameters); + assertEquals(PolicyConfigStatus.CONFIG_NOT_FOUND, filterResults.get(0).getPolicyConfigStatus()); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/GetDictionaryServiceTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/GetDictionaryServiceTest.java index dcff39b88..682c9a1e0 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/GetDictionaryServiceTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/GetDictionaryServiceTest.java @@ -29,202 +29,207 @@ import org.onap.policy.pdp.rest.api.services.GetDictionaryService; public class GetDictionaryServiceTest { - @Test - public void dictionaryJsonTest() throws Exception{ - Method formatDictionary = GetDictionaryService.class.getDeclaredMethod("formatDictionaryJson", String.class); - formatDictionary.setAccessible(true); - String input="{\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\"," - + "\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\"," - + "\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\"}"; - DictionaryParameters dp = new DictionaryParameters(); - dp.setDictionary("test"); - GetDictionaryService gds = new GetDictionaryService(dp, null); - String result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("OnapName"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("Attribute"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("Action"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("BRMSParamTemplate"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("VSCLAction"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("VNFType"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("PEPOptions"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("Varbind"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("Service"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("Site"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("Settings"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("DescriptiveScope"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("Enforcer"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("ActionList"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("ProtocolList"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("Zone"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("SecurityZone"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("PrefixList"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("AddressGroup"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("ServiceGroup"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("ServiceList"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("TermList"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("RuleList"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("FirewallRuleList"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("Term"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("MicroServiceLocation"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("MicroServiceConfigName"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("DCAEUUID"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("MicroServiceModels"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("PolicyScopeService"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("PolicyScopeResource"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("PolicyScopeType"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("PolicyScopeClosedLoop"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("GroupPolicyScopeList"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("RiskType"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("SafePolicyWarning"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - // - dp.setDictionary("MicroServiceDictionary"); - gds = new GetDictionaryService(dp, null); - result = (String) formatDictionary.invoke(gds, input); - assertNotNull(result); - } + @Test + public void dictionaryJsonTest() throws Exception { + Method formatDictionary = + GetDictionaryService.class.getDeclaredMethod("formatDictionaryJson", String.class); + formatDictionary.setAccessible(true); + String input = + "{\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\"," + + "\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\"," + + "\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\"," + + "\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\"," + + "\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\",\"key\":\"value\"," + + "\"key\":\"value\",\"key\":\"value\",\"key\":\"value\"}"; + DictionaryParameters dp = new DictionaryParameters(); + dp.setDictionary("test"); + GetDictionaryService gds = new GetDictionaryService(dp, null); + String result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("OnapName"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("Attribute"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("Action"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("BRMSParamTemplate"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("VSCLAction"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("VNFType"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("PEPOptions"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("Varbind"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("Service"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("Site"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("Settings"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("DescriptiveScope"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("Enforcer"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("ActionList"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("ProtocolList"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("Zone"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("SecurityZone"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("PrefixList"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("AddressGroup"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("ServiceGroup"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("ServiceList"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("TermList"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("RuleList"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("FirewallRuleList"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("Term"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("MicroServiceLocation"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("MicroServiceConfigName"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("DCAEUUID"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("MicroServiceModels"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("PolicyScopeService"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("PolicyScopeResource"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("PolicyScopeType"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("PolicyScopeClosedLoop"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("GroupPolicyScopeList"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("RiskType"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("SafePolicyWarning"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + // + dp.setDictionary("MicroServiceDictionary"); + gds = new GetDictionaryService(dp, null); + result = (String) formatDictionary.invoke(gds, input); + assertNotNull(result); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/NotificationAPITest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/NotificationAPITest.java index 096f7a37a..9fad27d02 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/NotificationAPITest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/NotificationAPITest.java @@ -4,12 +4,14 @@ * ================================================================================ * Copyright (C) 2017 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. @@ -21,67 +23,70 @@ package org.onap.policy.pdp.rest.api.test; import static org.awaitility.Awaitility.await; import static org.junit.Assert.assertEquals; - import java.io.IOException; import java.util.concurrent.TimeUnit; - import org.junit.Before; import org.junit.Test; import org.onap.policy.pdp.rest.api.services.NotificationService; import org.onap.policy.pdp.rest.api.services.NotificationService.NotificationServiceType; import org.onap.policy.xacml.api.XACMLErrorConstants; import org.springframework.http.HttpStatus; - import com.att.research.xacml.util.XACMLProperties; public class NotificationAPITest { - - @Before - public void setup() throws IOException{ - // Fix properties for next test cases. - XACMLProperties.reloadProperties(); - System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME, "src/test/resources/pass.xacml.pdp.properties"); - XACMLProperties.getProperties(); - } - - @Test - public void testPropertyFailure() throws IOException{ - // Change properties and fail. - XACMLProperties.reloadProperties(); - System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME, "src/test/resources/fail.xacml.pdp.properties"); - XACMLProperties.getProperties(); - NotificationService notificationService = new NotificationService(null,null,null); - assertEquals(HttpStatus.BAD_REQUEST, notificationService.getResponseCode()); - setup(); - } - - @Test - public void testFailureTopicName(){ - NotificationService notificationService = new NotificationService(null,null,null); - assertEquals(HttpStatus.BAD_REQUEST, notificationService.getResponseCode()); - assertEquals(XACMLErrorConstants.ERROR_DATA_ISSUE + "org.onap.policy.api.PolicyException: Notification Topic is null", notificationService.getResult()); - notificationService = new NotificationService(" ",null,null); - assertEquals(HttpStatus.BAD_REQUEST, notificationService.getResponseCode()); - assertEquals(XACMLErrorConstants.ERROR_DATA_ISSUE + "org.onap.policy.api.PolicyException: Notification Topic is not valid. ", notificationService.getResult()); - } - - @Test - public void testFailureServiceType(){ - NotificationService notificationService = new NotificationService("test",null,null); - assertEquals(HttpStatus.BAD_REQUEST, notificationService.getResponseCode()); - } - - @Test - public void threadTest() throws InterruptedException{ - NotificationService notificationSerivce = new NotificationService("test",null,NotificationServiceType.ADD); - assertEquals(HttpStatus.OK, notificationSerivce.getResponseCode()); - // Wait for thread to remove the Topic Entry. - await().atMost(Integer.toUnsignedLong(2500),TimeUnit.MILLISECONDS).until(()-> { - // Trying to remove again should fail - NotificationService nService = new NotificationService("test",null,NotificationServiceType.REMOVE); - return HttpStatus.BAD_REQUEST.equals(nService.getResponseCode()); - }); - // Coverage Tests, Call Notification Service. - NotificationService.sendNotification("test"); - } + + @Before + public void setup() throws IOException { + // Fix properties for next test cases. + XACMLProperties.reloadProperties(); + System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME, "src/test/resources/pass.xacml.pdp.properties"); + XACMLProperties.getProperties(); + } + + @Test + public void testPropertyFailure() throws IOException { + // Change properties and fail. + XACMLProperties.reloadProperties(); + System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME, "src/test/resources/fail.xacml.pdp.properties"); + XACMLProperties.getProperties(); + NotificationService notificationService = new NotificationService(null, null, null); + assertEquals(HttpStatus.BAD_REQUEST, notificationService.getResponseCode()); + setup(); + } + + @Test + public void testFailureTopicName() { + NotificationService notificationService = new NotificationService(null, null, null); + assertEquals(HttpStatus.BAD_REQUEST, notificationService.getResponseCode()); + assertEquals( + XACMLErrorConstants.ERROR_DATA_ISSUE + + "org.onap.policy.api.PolicyException: Notification Topic is null", + notificationService.getResult()); + notificationService = new NotificationService(" ", null, null); + assertEquals(HttpStatus.BAD_REQUEST, notificationService.getResponseCode()); + assertEquals( + XACMLErrorConstants.ERROR_DATA_ISSUE + + "org.onap.policy.api.PolicyException: Notification Topic is not valid. ", + notificationService.getResult()); + } + + @Test + public void testFailureServiceType() { + NotificationService notificationService = new NotificationService("test", null, null); + assertEquals(HttpStatus.BAD_REQUEST, notificationService.getResponseCode()); + } + + @Test + public void threadTest() throws InterruptedException { + NotificationService notificationSerivce = new NotificationService("test", null, NotificationServiceType.ADD); + assertEquals(HttpStatus.OK, notificationSerivce.getResponseCode()); + // Wait for thread to remove the Topic Entry. + await().atMost(Integer.toUnsignedLong(2500), TimeUnit.MILLISECONDS).until(() -> { + // Trying to remove again should fail + NotificationService nService = new NotificationService("test", null, NotificationServiceType.REMOVE); + return HttpStatus.BAD_REQUEST.equals(nService.getResponseCode()); + }); + // Coverage Tests, Call Notification Service. + NotificationService.sendNotification("test"); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/PolicyEngineServicesTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/PolicyEngineServicesTest.java index f6513d14b..e7c01b110 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/PolicyEngineServicesTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/test/PolicyEngineServicesTest.java @@ -4,6 +4,8 @@ * ================================================================================ * 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 @@ -87,7 +89,8 @@ public class PolicyEngineServicesTest { headers = new HttpHeaders(); headers.add(CLIENTAUTHHEADER, CLIENTAUTHVALUE); XACMLProperties.reloadProperties(); - System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME, "src/test/resources/pass.xacml.pdp.properties"); + System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME, + "src/test/resources/pass.xacml.pdp.properties"); XACMLProperties.getProperties(); this.mockMvc = webAppContextSetup(webApplicationContext).build(); } @@ -96,9 +99,8 @@ public class PolicyEngineServicesTest { public void getConfigAPIFailureTest() throws Exception { ConfigRequestParameters pep = new ConfigRequestParameters(); pep.setPolicyName(".*"); - mockMvc.perform( - post("/getConfig").content(PolicyUtils.objectToJsonString(pep)).contentType(MediaType.APPLICATION_JSON)) - .andExpect(status().is(400)); + mockMvc.perform(post("/getConfig").content(PolicyUtils.objectToJsonString(pep)) + .contentType(MediaType.APPLICATION_JSON)).andExpect(status().is(400)); // Authorization tests. mockMvc.perform(post("/getConfig").content(PolicyUtils.objectToJsonString(pep)) .contentType(MediaType.APPLICATION_JSON).header(CLIENTAUTHHEADER, "")) @@ -112,46 +114,48 @@ public class PolicyEngineServicesTest { // Set wrong request. pep.setPolicyName(null); pep.setConfigName("test"); - mockMvc.perform(post("/getConfig").content(PolicyUtils.objectToJsonString(pep)).headers(headers) - .header(UUIDHEADER, "123").contentType(MediaType.APPLICATION_JSON)).andExpect(status().isBadRequest()); + mockMvc.perform(post("/getConfig").content(PolicyUtils.objectToJsonString(pep)) + .headers(headers).header(UUIDHEADER, "123").contentType(MediaType.APPLICATION_JSON)) + .andExpect(status().isBadRequest()); } @Test public void getConfigServiceTest() throws Exception { ConfigRequestParameters pep = new ConfigRequestParameters(); pep.setPolicyName(".*"); - mockMvc.perform(post("/getConfig").content(PolicyUtils.objectToJsonString(pep)).headers(headers) - .header(UUIDHEADER, UUID.randomUUID()).contentType(MediaType.APPLICATION_JSON)) - .andExpect(status().isOk()); + mockMvc.perform(post("/getConfig").content(PolicyUtils.objectToJsonString(pep)) + .headers(headers).header(UUIDHEADER, UUID.randomUUID()) + .contentType(MediaType.APPLICATION_JSON)).andExpect(status().isOk()); // Without policyName and using onapName and other fields. pep.setPolicyName(null); pep.setOnapName("test"); pep.setConfigName("test"); - mockMvc.perform(post("/getConfig").content(PolicyUtils.objectToJsonString(pep)).headers(headers) - .contentType(MediaType.APPLICATION_JSON)).andExpect(status().isOk()); + mockMvc.perform(post("/getConfig").content(PolicyUtils.objectToJsonString(pep)) + .headers(headers).contentType(MediaType.APPLICATION_JSON)) + .andExpect(status().isOk()); // with config attributes. Map<String, String> configAttributes = new HashMap<>(); configAttributes.put("test", "test"); pep.setConfigAttributes(configAttributes); pep.makeUnique(true); - mockMvc.perform(post("/getConfig").content(PolicyUtils.objectToJsonString(pep)).headers(headers) - .contentType(MediaType.APPLICATION_JSON)).andExpect(status().isOk()); + mockMvc.perform(post("/getConfig").content(PolicyUtils.objectToJsonString(pep)) + .headers(headers).contentType(MediaType.APPLICATION_JSON)) + .andExpect(status().isOk()); } @Test public void getConfigByPolicyNameTest() throws Exception { ConfigNameRequest pep = new ConfigNameRequest(); pep.setPolicyName(".*"); - mockMvc.perform( - post("/getConfig").content(PolicyUtils.objectToJsonString(pep)).contentType(MediaType.APPLICATION_JSON)) - .andExpect(status().is(400)); + mockMvc.perform(post("/getConfig").content(PolicyUtils.objectToJsonString(pep)) + .contentType(MediaType.APPLICATION_JSON)).andExpect(status().is(400)); // Authorization tests. mockMvc.perform(post("/getConfig").content(PolicyUtils.objectToJsonString(pep)) .contentType(MediaType.APPLICATION_JSON).header(CLIENTAUTHHEADER, "")) .andExpect(status().isUnauthorized()); - mockMvc.perform(post("/getConfigByPolicyName").content(PolicyUtils.objectToJsonString(pep)).headers(headers) - .header(UUIDHEADER, UUID.randomUUID()).contentType(MediaType.APPLICATION_JSON)) - .andExpect(status().isOk()); + mockMvc.perform(post("/getConfigByPolicyName").content(PolicyUtils.objectToJsonString(pep)) + .headers(headers).header(UUIDHEADER, UUID.randomUUID()) + .contentType(MediaType.APPLICATION_JSON)).andExpect(status().isOk()); } @Test @@ -164,29 +168,30 @@ public class PolicyEngineServicesTest { mockMvc.perform(post("/listConfig").content(PolicyUtils.objectToJsonString(pep)) .contentType(MediaType.APPLICATION_JSON).header(CLIENTAUTHHEADER, "")) .andExpect(status().isUnauthorized()); - mockMvc.perform(post("/listConfig").content(PolicyUtils.objectToJsonString(pep)).headers(headers) - .header(UUIDHEADER, UUID.randomUUID()).contentType(MediaType.APPLICATION_JSON)) - .andExpect(status().isOk()); + mockMvc.perform(post("/listConfig").content(PolicyUtils.objectToJsonString(pep)) + .headers(headers).header(UUIDHEADER, UUID.randomUUID()) + .contentType(MediaType.APPLICATION_JSON)).andExpect(status().isOk()); } @Test public void listPolicyTest() throws Exception { ConfigNameRequest pep = new ConfigNameRequest(); pep.setPolicyName(".*"); - mockMvc.perform(post("/listPolicy").content(PolicyUtils.objectToJsonString(pep)).headers(headers) - .header(UUIDHEADER, UUID.randomUUID()).contentType(MediaType.APPLICATION_JSON)) - .andExpect(status().isOk()); + mockMvc.perform(post("/listPolicy").content(PolicyUtils.objectToJsonString(pep)) + .headers(headers).header(UUIDHEADER, UUID.randomUUID()) + .contentType(MediaType.APPLICATION_JSON)).andExpect(status().isOk()); pep.setPolicyName("*"); - mockMvc.perform(post("/listPolicy").content(PolicyUtils.objectToJsonString(pep)).headers(headers) - .header(UUIDHEADER, UUID.randomUUID()).contentType(MediaType.APPLICATION_JSON)) - .andExpect(status().is4xxClientError()); + mockMvc.perform(post("/listPolicy").content(PolicyUtils.objectToJsonString(pep)) + .headers(headers).header(UUIDHEADER, UUID.randomUUID()) + .contentType(MediaType.APPLICATION_JSON)).andExpect(status().is4xxClientError()); } @Test public void getMetricsTest() throws Exception { // Failure Tests. mockMvc.perform(get("/getMetrics")).andExpect(status().isBadRequest()); - mockMvc.perform(get("/getMetrics").header(CLIENTAUTHHEADER, "Basic 123")).andExpect(status().isUnauthorized()); + mockMvc.perform(get("/getMetrics").header(CLIENTAUTHHEADER, "Basic 123")) + .andExpect(status().isUnauthorized()); // Service Tests. mockMvc.perform(get("/getMetrics").headers(headers).header(UUIDHEADER, "123")) .andExpect(status().isBadRequest()); @@ -199,24 +204,30 @@ public class PolicyEngineServicesTest { public void getNotificationAuthFailureTest() throws Exception { mockMvc.perform(post("/getNotification").header(CLIENTAUTHHEADER, "").content("test")) .andExpect(status().isUnauthorized()); - mockMvc.perform(post("/getNotification").header(CLIENTAUTHHEADER, "Basic test123").content("test")) + mockMvc.perform( + post("/getNotification").header(CLIENTAUTHHEADER, "Basic test123").content("test")) .andExpect(status().isUnauthorized()); - mockMvc.perform(post("/getNotification").header(CLIENTAUTHHEADER, ERRORCLIENTVALUE).content(" ")) + mockMvc.perform( + post("/getNotification").header(CLIENTAUTHHEADER, ERRORCLIENTVALUE).content(" ")) .andExpect(status().isUnauthorized()); } @Test public void getNotificationTopicFailureTest() throws Exception { mockMvc.perform(post("/getNotification")).andExpect(status().isBadRequest()); - mockMvc.perform(post("/getNotification").headers(headers).content("")).andExpect(status().isBadRequest()); + mockMvc.perform(post("/getNotification").headers(headers).content("")) + .andExpect(status().isBadRequest()); } @Test public void getNotificationTopicValidFailTest() throws Exception { // Check failures. - mockMvc.perform(post("/getNotification").headers(headers).content(" ")).andExpect(status().isBadRequest()); - mockMvc.perform(post("/stopNotification").headers(headers).content(" ")).andExpect(status().isBadRequest()); - mockMvc.perform(post("/sendHeartbeat").headers(headers).content(" ")).andExpect(status().isBadRequest()); + mockMvc.perform(post("/getNotification").headers(headers).content(" ")) + .andExpect(status().isBadRequest()); + mockMvc.perform(post("/stopNotification").headers(headers).content(" ")) + .andExpect(status().isBadRequest()); + mockMvc.perform(post("/sendHeartbeat").headers(headers).content(" ")) + .andExpect(status().isBadRequest()); } @Test @@ -228,17 +239,22 @@ public class PolicyEngineServicesTest { XACMLProperties.getProperties(); NotificationService.reloadProps(); // Add a Topic. - mockMvc.perform(post("/getNotification").headers(headers).header(UUIDHEADER, "123").content("test")) + mockMvc.perform( + post("/getNotification").headers(headers).header(UUIDHEADER, "123").content("test")) .andExpect(status().isOk()); // Try to add same topic should fail. - mockMvc.perform(post("/getNotification").headers(headers).header(UUIDHEADER, UUID.randomUUID()).content("test")) + mockMvc.perform(post("/getNotification").headers(headers) + .header(UUIDHEADER, UUID.randomUUID()).content("test")) .andExpect(status().isBadRequest()); // do a heart beat. - mockMvc.perform(post("/sendHeartbeat").headers(headers).content("test")).andExpect(status().isOk()); + mockMvc.perform(post("/sendHeartbeat").headers(headers).content("test")) + .andExpect(status().isOk()); // remove the added Topic. - mockMvc.perform(post("/stopNotification").headers(headers).content("test")).andExpect(status().isOk()); + mockMvc.perform(post("/stopNotification").headers(headers).content("test")) + .andExpect(status().isOk()); // try to remove again should fail. - mockMvc.perform(post("/sendHeartbeat").headers(headers).content("test")).andExpect(status().isBadRequest()); + mockMvc.perform(post("/sendHeartbeat").headers(headers).content("test")) + .andExpect(status().isBadRequest()); } @Test @@ -258,15 +274,17 @@ public class PolicyEngineServicesTest { .andExpect(status().isOk()); pep.setEventAttributes(null); mockMvc.perform(post("/sendEvent").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setEventAttributes(eventAttributes); mockMvc.perform(post("/sendEvent").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isOk()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isOk()); pep.setEventAttributes(eventAttributes); pep.setRequestID(UUID.randomUUID()); mockMvc.perform(post("/sendEvent").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isOk()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isOk()); } @Test @@ -288,15 +306,17 @@ public class PolicyEngineServicesTest { pep.setDecisionAttributes(null); pep.setOnapName(null); mockMvc.perform(post("/getDecision").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setOnapName("testing"); mockMvc.perform(post("/getDecision").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setDecisionAttributes(eventAttributes); pep.setRequestID(UUID.randomUUID()); mockMvc.perform(post("/getDecision").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isOk()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isOk()); } @Test @@ -309,49 +329,61 @@ public class PolicyEngineServicesTest { .andExpect(status().isUnauthorized()); // Service Tests. mockMvc.perform(put("/pushPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyName("scopeless"); mockMvc.perform(put("/pushPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setPolicyName("testing.test"); pep.setPolicyType("wrong"); mockMvc.perform(put("/pushPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setPolicyType("BRMS_PARAM"); mockMvc.perform(put("/pushPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setPolicyType("BRMS_RAW"); mockMvc.perform(put("/pushPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setPolicyType("MicroService"); mockMvc.perform(put("/pushPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setPolicyType("ClosedLoop_PM"); mockMvc.perform(put("/pushPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setPolicyType("ClosedLoop_Fault"); mockMvc.perform(put("/pushPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setPolicyType("Base"); mockMvc.perform(put("/pushPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setPolicyType("Decision"); mockMvc.perform(put("/pushPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setPolicyType("Action"); mockMvc.perform(put("/pushPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setPolicyType("Firewall"); mockMvc.perform(put("/pushPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setPdpGroup("default"); mockMvc.perform(put("/pushPolicy").content(PolicyUtils.objectToJsonString(pep)) .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, "123")) .andExpect(status().isBadRequest()); pep.setRequestID(UUID.randomUUID()); mockMvc.perform(put("/pushPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); } @Test @@ -364,90 +396,93 @@ public class PolicyEngineServicesTest { .andExpect(status().isUnauthorized()); // Service Tests. mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyName("testing"); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, "test123")) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, "test123")).andExpect(status().isBadRequest()); pep.setPolicyName("testscope.name"); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setPolicyName("testscope.name"); pep.setPolicyType("wrong"); pep.setRequestID(UUID.randomUUID()); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setPolicyType("BRMS_PARAM"); pep.setPolicyComponent("wrong"); pep.setRequestID(null); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setPolicyType("BRMS_RAW"); pep.setPolicyComponent("PDP"); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyType("MicroService"); pep.setPolicyComponent("PAP"); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyType("ClosedLoop_PM"); pep.setPolicyComponent("PDP"); pep.setDeleteCondition(DeletePolicyCondition.ALL); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyType("ClosedLoop_Fault"); pep.setDeleteCondition(DeletePolicyCondition.ONE); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyType("Base"); pep.setPolicyComponent("PAP"); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyType("Decision"); pep.setPolicyComponent("PDP"); pep.setPolicyName("test.xml"); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyType("Action"); pep.setPolicyName("scope.Config_test.xml"); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPdpGroup("default"); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyComponent("PAP"); pep.setPolicyType("Firewall"); pep.setDeleteCondition(null); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyComponent("PAP"); pep.setDeleteCondition(DeletePolicyCondition.ONE); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyComponent("fail"); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyComponent("PDP"); pep.setPolicyName("testscope.policyName"); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyComponent(null); mockMvc.perform(delete("/deletePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); } @Test @@ -464,38 +499,40 @@ public class PolicyEngineServicesTest { // Service Tests. setCreateUpdateImpl(); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyName("failName"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, "test 123")) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, "test 123")).andExpect(status().isBadRequest()); pep.setPolicyName("test. name"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setPolicyName(" "); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyName("test. "); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyName("te st.name"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyName("test.name"); pep.setPolicyDescription("testá"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setPolicyName("test.name"); pep.setPolicyDescription("good"); pep.setTtlDate(new Date()); pep.setRequestID(UUID.randomUUID()); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); } @Test @@ -509,10 +546,12 @@ public class PolicyEngineServicesTest { // Checks for BRMS Param Policy. pep.setPolicyConfigType(PolicyConfigType.BRMS_PARAM); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setRiskLevel("test"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); Map<AttributeType, Map<String, String>> attributes = new HashMap<>(); Map<String, String> matching = new HashMap<>(); matching.put("key", "value"); @@ -520,26 +559,38 @@ public class PolicyEngineServicesTest { pep.setAttributes(attributes); pep.setRiskLevel("5"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); mockMvc.perform(put("/updatePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); // Checks for BRMS Raw Policy pep.setPolicyConfigType(PolicyConfigType.BRMS_RAW); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("test"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setRiskLevel(null); pep.setConfigBody( - "package droolsexample\n\n import com.sample.ItemCity;\nimport java.math.BigDecimal;\nrule \"Nagpur Medicine Item\"\n\n when\n item : ItemCity(purchaseCity == ItemCity.City.NAGPUR,\n typeofItem == ItemCity.Type.MEDICINES)\n then\n BigDecimal tax = new BigDecimal(0.0);\n item.setLocalTax(tax.multiply(item.getSellPrice()));\nend"); - mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + "package droolsexample\n\n import com.sample.ItemCity;\nimport java.math.BigDecimal;\n" + + "rule \"Nagpur Medicine Item\"\n\n when\n" + + " item : ItemCity(purchaseCity == ItemCity.City.NAGPUR,\n" + + " typeofItem == ItemCity.Type.MEDICINES)\n then\n" + + " BigDecimal tax = new BigDecimal(0.0);\n" + + " item.setLocalTax(tax.multiply(item.getSellPrice()));\nend"); + mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setRiskLevel("5"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); mockMvc.perform(put("/updatePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); } @Test @@ -553,31 +604,39 @@ public class PolicyEngineServicesTest { // Checks for Base config Policy. pep.setPolicyConfigType(PolicyConfigType.Base); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("testbody"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBodyType(PolicyType.OTHER); pep.setRiskLevel("test"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setRiskLevel("4"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setOnapName("ec nam-e"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setOnapName("onapName"); pep.setConfigName("tes config"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigName("configName"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("{'test':'test}"); pep.setConfigBodyType(PolicyType.JSON); mockMvc.perform(put("/updatePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); Map<AttributeType, Map<String, String>> attributes = new HashMap<>(); Map<String, String> matching = new HashMap<>(); matching.put("key", "value"); @@ -585,7 +644,8 @@ public class PolicyEngineServicesTest { pep.setAttributes(attributes); pep.setConfigBody("testBody"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); } @Test @@ -599,30 +659,39 @@ public class PolicyEngineServicesTest { // Checks for Closed loop Policy. pep.setPolicyConfigType(PolicyConfigType.ClosedLoop_Fault); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("te stá"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("testBody"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("{\"key\":\"value\"}"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("{\"onapname\":\"\"}"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("{\"onapname\":\"test\"}"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setRiskLevel("test"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setRiskLevel("4"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); mockMvc.perform(put("/updatePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); } @Test @@ -636,35 +705,46 @@ public class PolicyEngineServicesTest { // Checks for Closed loop Policy. pep.setPolicyConfigType(PolicyConfigType.ClosedLoop_PM); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("te stá"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("testBody"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("{\"key\":\"value\"}"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("{\"onapname\":\"\"}"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("{\"onapname\":\"test\"}"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("{\"onapname\":\"test\", \"serviceTypePolicyName\":\"value\"}"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setRiskLevel("test"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setRiskLevel("4"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); mockMvc.perform(put("/updatePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); } @Test @@ -678,25 +758,32 @@ public class PolicyEngineServicesTest { // Checks for Closed loop Policy. pep.setPolicyConfigType(PolicyConfigType.Firewall); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("te st"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("{}"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("{\"test\":\"test\"}"); pep.setRiskLevel("test"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setRiskLevel("4"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("{\"configName\":\"test\"}"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); mockMvc.perform(put("/updatePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); } @Test @@ -710,28 +797,36 @@ public class PolicyEngineServicesTest { // Checks for Closed loop Policy. pep.setPolicyConfigType(PolicyConfigType.MicroService); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("te st"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("{}"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody("{\"test\":\"test\"}"); pep.setOnapName(" "); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setOnapName("testonap"); pep.setRiskLevel("fail"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setRiskLevel("4"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setConfigBody( - "{\"service\":\"test\",\"uuid\":\"test\",\"location\":\"test\",\"configName\":\"test\",\"description\":\"test\",\"priority\":\"test\",\"version\":\"test\"}"); + "{\"service\":\"test\",\"uuid\":\"test\",\"location\":\"test\",\"configName\":\"test\"," + + "\"description\":\"test\",\"priority\":\"test\",\"version\":\"test\"}"); mockMvc.perform(put("/updatePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); } @Test @@ -745,50 +840,63 @@ public class PolicyEngineServicesTest { // Checks for action Policy. pep.setPolicyClass(PolicyClass.Action); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); Map<AttributeType, Map<String, String>> attributes = new HashMap<>(); pep.setAttributes(attributes); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); attributes.put(AttributeType.MATCHING, new HashMap<>()); pep.setAttributes(attributes); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); Map<String, String> matching = new HashMap<>(); matching.put("key", "value"); attributes.put(AttributeType.MATCHING, matching); pep.setAttributes(attributes); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setActionAttribute("A1"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setActionPerformer("PEX"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setActionPerformer("PEP"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); mockMvc.perform(put("/updatePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); // Checks for Decision Policy. pep.setPolicyClass(PolicyClass.Decision); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setOnapName("xyz"); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); attributes.remove(AttributeType.MATCHING); attributes.put(AttributeType.SETTINGS, matching); pep.setAttributes(attributes); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); attributes.put(AttributeType.MATCHING, matching); pep.setAttributes(attributes); mockMvc.perform(put("/createPolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); mockMvc.perform(put("/updatePolicy").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); } @Test @@ -804,29 +912,32 @@ public class PolicyEngineServicesTest { .andExpect(status().isUnauthorized()); // Service Tests. mockMvc.perform(put("/createDictionaryItem").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, "tes123")) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, "tes123")).andExpect(status().isBadRequest()); pep.setDictionaryType(DictionaryType.MicroService); mockMvc.perform(put("/createDictionaryItem").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); - mockMvc.perform(put("/createDictionaryItem").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) + .contentType(MediaType.APPLICATION_JSON).headers(headers)) .andExpect(status().isBadRequest()); + mockMvc.perform(put("/createDictionaryItem").content(PolicyUtils.objectToJsonString(pep)) + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setDictionary("test dict"); pep.setRequestID(UUID.randomUUID()); mockMvc.perform(put("/createDictionaryItem").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setDictionaryJson("{\"test\":\"value\"}"); mockMvc.perform(put("/createDictionaryItem").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, UUID.randomUUID())) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, UUID.randomUUID())).andExpect(status().isBadRequest()); pep.setDictionaryJson("test123"); mockMvc.perform(put("/updateDictionaryItem").content(PolicyUtils.objectToJsonString(pep)) .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, "123")) .andExpect(status().isBadRequest()); pep.setDictionary("MicroServiceDictionary"); mockMvc.perform(put("/createDictionaryItem").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); } @Test @@ -839,18 +950,21 @@ public class PolicyEngineServicesTest { .andExpect(status().isUnauthorized()); // Service Tests. mockMvc.perform(post("/getDictionaryItems").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, "tes123")) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, "tes123")).andExpect(status().isBadRequest()); pep.setDictionaryType(DictionaryType.Common); mockMvc.perform(post("/getDictionaryItems").content(PolicyUtils.objectToJsonString(pep)) .contentType(MediaType.APPLICATION_JSON).headers(headers) - .header(UUIDHEADER, UUID.randomUUID().toString())).andExpect(status().isBadRequest()); + .header(UUIDHEADER, UUID.randomUUID().toString())) + .andExpect(status().isBadRequest()); pep.setDictionary("OnapName"); mockMvc.perform(post("/getDictionaryItems").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); pep.setRequestID(UUID.randomUUID()); mockMvc.perform(post("/getDictionaryItems").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers)).andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers)) + .andExpect(status().isBadRequest()); } @Test @@ -872,24 +986,24 @@ public class PolicyEngineServicesTest { .andExpect(status().isUnauthorized()); // Service Tests. mockMvc.perform(put("/createConfig").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, "tes123")) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, "tes123")).andExpect(status().isBadRequest()); pep.setPolicyScope("test"); mockMvc.perform(put("/createConfig").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, "tes123")) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, "tes123")).andExpect(status().isBadRequest()); pep.setPolicyName("name"); mockMvc.perform(put("/createConfig").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, "tes123")) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, "tes123")).andExpect(status().isBadRequest()); pep.setConfigType("OTHER"); mockMvc.perform(put("/createConfig").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, "tes123")) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, "tes123")).andExpect(status().isBadRequest()); pep.setTtlDate(new Date().toString()); mockMvc.perform(put("/updateConfig").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, "tes123")) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, "tes123")).andExpect(status().isBadRequest()); } @Test @@ -905,25 +1019,26 @@ public class PolicyEngineServicesTest { .andExpect(status().isUnauthorized()); // Service Tests. mockMvc.perform(put("/createFirewallConfig").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, "tes123")) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, "tes123")).andExpect(status().isBadRequest()); pep.setPolicyScope("test"); mockMvc.perform(put("/createFirewallConfig").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, "tes123")) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, "tes123")).andExpect(status().isBadRequest()); pep.setPolicyName("name"); mockMvc.perform(put("/createFirewallConfig").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, "tes123")) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, "tes123")).andExpect(status().isBadRequest()); pep.setTtlDate(new Date().toString()); mockMvc.perform(put("/updateFirewallConfig").content(PolicyUtils.objectToJsonString(pep)) - .contentType(MediaType.APPLICATION_JSON).headers(headers).header(UUIDHEADER, "tes123")) - .andExpect(status().isBadRequest()); + .contentType(MediaType.APPLICATION_JSON).headers(headers) + .header(UUIDHEADER, "tes123")).andExpect(status().isBadRequest()); } - private void setCreateUpdateImpl() throws NoSuchMethodException, SecurityException, IllegalAccessException, - IllegalArgumentException, InvocationTargetException { - Method setter = XACMLPdpServlet.class.getDeclaredMethod("setCreateUpdatePolicyConstructor", String.class); + private void setCreateUpdateImpl() throws NoSuchMethodException, SecurityException, + IllegalAccessException, IllegalArgumentException, InvocationTargetException { + Method setter = XACMLPdpServlet.class.getDeclaredMethod("setCreateUpdatePolicyConstructor", + String.class); setter.setAccessible(true); setter.invoke(new XACMLPdpServlet(), CreateUpdatePolicyServiceImpl.class.getName()); } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/utils/test/PolicyApiUtilsTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/utils/test/PolicyApiUtilsTest.java index a38603a33..d1da554d9 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/utils/test/PolicyApiUtilsTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/utils/test/PolicyApiUtilsTest.java @@ -4,12 +4,14 @@ * ================================================================================ * Copyright (C) 2018 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. @@ -23,246 +25,203 @@ package org.onap.policy.pdp.rest.api.utils.test; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; - import javax.json.Json; import javax.json.JsonArray; import javax.json.JsonObject; - import org.json.JSONObject; import org.junit.Test; import org.onap.policy.pdp.rest.api.utils.PolicyApiUtils; public class PolicyApiUtilsTest { - @Test - public void testValidateDirectoryJsonFields() { - - String dictonaryAction = "Action"; - - - JsonObject jsonObjAttrGood = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "REST") - .add("method", "GET") - .add("url", "http://foobar.com") - .add("body", "foobody") - .build(); - - JsonObject jsonObjAttrNull = Json.createObjectBuilder().add("attributeName", "").build(); - JsonObject jsonObjAttrBad = Json.createObjectBuilder().add("attributeName", "succ ess").build(); - JsonObject jsonObjectMissingAttrName = Json.createObjectBuilder().add("foo", "bar").build(); - - - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGood, dictonaryAction).contains("success")); - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrNull, dictonaryAction).contains("No Attribute Name provided")); - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrBad, dictonaryAction).contains("Invalid Attribute Name")); - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjectMissingAttrName, dictonaryAction).contains("Missing attributeName")); - - /* "type" parameter variations. */ - JsonObject jsonObjAttrGoodTemp = jsonObjAttrGood; - - //null/empty type - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "") - .add("method", "GET") - .add("url", "http://foobar.com") - .add("body", "foobody") - .build(); - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("No Type provided")); - - //missing type - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("method", "GET") - .add("url", "http://foobar.com") - .add("body", "foobody") - .build(); - - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("Missing type key in the dictionaryJson parameter")); - - //invalid type - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "INVALID") - .add("method", "GET") - .add("url", "http://foobar.com") - .add("body", "foobody") - .build(); - - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("Invalid Type value")); - - /* "method" parameter variations. */ - jsonObjAttrGoodTemp = jsonObjAttrGood; - - //null/empty method - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "REST") - .add("method", "") - .add("url", "http://foobar.com") - .add("body", "foobody") - .build(); - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("No Method provided")); - - //missing method - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "REST") - .add("url", "http://foobar.com") - .add("body", "foobody") - .build(); - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("Missing method key in the dictionaryJson parameter")); - - //valid method - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "REST") - .add("method", "GET") - .add("url", "http://foobar.com") - .add("body", "foobody") - .build(); - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("success")); - - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "REST") - .add("method", "PUT") - .add("url", "http://foobar.com") - .add("body", "foobody") - .build(); - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("success")); - - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "REST") - .add("method", "POST") - .add("url", "http://foobar.com") - .add("body", "foobody") - .build(); - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("success")); - - - //invalid method - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "REST") - .add("method", "INVALID") - .add("url", "http://foobar.com") - .add("body", "foobody") - .build(); - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("Invalid Method value")); - - - /* url parameter variations */ - jsonObjAttrGoodTemp = jsonObjAttrGood; - - //null/empty url - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "REST") - .add("method", "GET") - .add("url", "") - .add("body", "foobody") - .build(); - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("No URL provided")); - - //missing url - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "REST") - .add("method", "GET") - .add("body", "foobody") - .build(); - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("Missing url key in the dictionaryJson parameter")); - - /* body parameter variations */ - jsonObjAttrGoodTemp = jsonObjAttrGood; - - //null body - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "REST") - .add("method", "GET") - .add("url", "http://foobar.com") - .add("body", "") - .build(); - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("No Body provided")); - - //missing body - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "REST") - .add("method", "GET") - .add("url", "http://foobar.com") - .build(); - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("Missing body key in the dictionaryJson parameter")); - - - /*headers parameter variations*/ - JsonObject jsonObjOption; - JsonObject jsonObjNumber; - JsonArray jsonArrayHeaders; - - //missing number headers - jsonObjOption = Json.createObjectBuilder().add("option","foobar").build(); - //jsonObjNumber = Json.createObjectBuilder().add("number","foobar").build(); - - jsonArrayHeaders = Json.createArrayBuilder() - .add(jsonObjOption) - //.add(jsonObjNumber) - .build(); - - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "REST") - .add("method", "GET") - .add("url", "http://foobar.com") - .add("body", "foobody") - .add("headers", jsonArrayHeaders) - .build(); - - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("Missing number key in the headers list of the dictionaryJson parameter.")); - - //missing options headers - jsonObjOption = Json.createObjectBuilder().add("option","foobar").build(); - jsonObjNumber = Json.createObjectBuilder().add("number","foobar").build(); - - jsonArrayHeaders = Json.createArrayBuilder() - //.add(jsonObjOption) - .add(jsonObjNumber) - .build(); - - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "REST") - .add("method", "GET") - .add("url", "http://foobar.com") - .add("body", "foobody") - .add("headers", jsonArrayHeaders) - .build(); - - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("Missing option key in the headers list of the dictionaryJson parameter.")); - - //null option - jsonObjOption = Json.createObjectBuilder().add("option","").build(); - jsonObjNumber = Json.createObjectBuilder().add("number","foobar").build(); - - jsonArrayHeaders = Json.createArrayBuilder() - .add(jsonObjOption) - .add(jsonObjNumber) - .build(); - - jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") - .add("type", "REST") - .add("method", "GET") - .add("url", "http://foobar.com") - .add("body", "foobody") - .add("headers", jsonArrayHeaders) - .build(); - - assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction).contains("Missing required Option value")); - - //null number can't be tested - - } - - @Test - public void testStringToJsonObject() { - String jsonString = "{\"foo\":\"bar\"}"; - JsonObject obj = PolicyApiUtils.stringToJsonObject(jsonString); - assertTrue(obj.get("foo").toString().equals("\"bar\"")); - } - - @Test - public void testIsNumeric() { - assertFalse(PolicyApiUtils.isNumeric("notNumeric")); - assertTrue(PolicyApiUtils.isNumeric("2")); - } - - + @Test + public void testValidateDirectoryJsonFields() { + + String dictonaryAction = "Action"; + + JsonObject jsonObjAttrGood = Json.createObjectBuilder().add("attributeName", "success") + .add("type", "REST").add("method", "GET").add("url", "http://foobar.com") + .add("body", "foobody").build(); + + JsonObject jsonObjAttrNull = Json.createObjectBuilder().add("attributeName", "").build(); + JsonObject jsonObjAttrBad = + Json.createObjectBuilder().add("attributeName", "succ ess").build(); + JsonObject jsonObjectMissingAttrName = Json.createObjectBuilder().add("foo", "bar").build(); + + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGood, dictonaryAction) + .contains("success")); + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrNull, dictonaryAction) + .contains("No Attribute Name provided")); + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrBad, dictonaryAction) + .contains("Invalid Attribute Name")); + assertTrue(PolicyApiUtils + .validateDictionaryJsonFields(jsonObjectMissingAttrName, dictonaryAction) + .contains("Missing attributeName")); + + /* "type" parameter variations. */ + JsonObject jsonObjAttrGoodTemp = jsonObjAttrGood; + + // null/empty type + jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") + .add("type", "").add("method", "GET").add("url", "http://foobar.com") + .add("body", "foobody").build(); + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains("No Type provided")); + + // missing type + jsonObjAttrGoodTemp = + Json.createObjectBuilder().add("attributeName", "success").add("method", "GET") + .add("url", "http://foobar.com").add("body", "foobody").build(); + + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains("Missing type key in the dictionaryJson parameter")); + + // invalid type + jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") + .add("type", "INVALID").add("method", "GET").add("url", "http://foobar.com") + .add("body", "foobody").build(); + + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains("Invalid Type value")); + + /* "method" parameter variations. */ + jsonObjAttrGoodTemp = jsonObjAttrGood; + + // null/empty method + jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") + .add("type", "REST").add("method", "").add("url", "http://foobar.com") + .add("body", "foobody").build(); + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains("No Method provided")); + + // missing method + jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") + .add("type", "REST").add("url", "http://foobar.com").add("body", "foobody").build(); + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains("Missing method key in the dictionaryJson parameter")); + + // valid method + jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") + .add("type", "REST").add("method", "GET").add("url", "http://foobar.com") + .add("body", "foobody").build(); + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains("success")); + + jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") + .add("type", "REST").add("method", "PUT").add("url", "http://foobar.com") + .add("body", "foobody").build(); + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains("success")); + + jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") + .add("type", "REST").add("method", "POST").add("url", "http://foobar.com") + .add("body", "foobody").build(); + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains("success")); + + + // invalid method + jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") + .add("type", "REST").add("method", "INVALID").add("url", "http://foobar.com") + .add("body", "foobody").build(); + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains("Invalid Method value")); + + /* url parameter variations */ + jsonObjAttrGoodTemp = jsonObjAttrGood; + + // null/empty url + jsonObjAttrGoodTemp = + Json.createObjectBuilder().add("attributeName", "success").add("type", "REST") + .add("method", "GET").add("url", "").add("body", "foobody").build(); + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains("No URL provided")); + + // missing url + jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") + .add("type", "REST").add("method", "GET").add("body", "foobody").build(); + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains("Missing url key in the dictionaryJson parameter")); + + /* body parameter variations */ + jsonObjAttrGoodTemp = jsonObjAttrGood; + + // null body + jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") + .add("type", "REST").add("method", "GET").add("url", "http://foobar.com") + .add("body", "").build(); + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains("No Body provided")); + + // missing body + jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") + .add("type", "REST").add("method", "GET").add("url", "http://foobar.com").build(); + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains("Missing body key in the dictionaryJson parameter")); + + /* headers parameter variations */ + JsonObject jsonObjOption; + JsonObject jsonObjNumber; + JsonArray jsonArrayHeaders; + + // missing number headers + jsonObjOption = Json.createObjectBuilder().add("option", "foobar").build(); + // jsonObjNumber = Json.createObjectBuilder().add("number","foobar").build(); + + jsonArrayHeaders = Json.createArrayBuilder().add(jsonObjOption) + // .add(jsonObjNumber) + .build(); + + jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") + .add("type", "REST").add("method", "GET").add("url", "http://foobar.com") + .add("body", "foobody").add("headers", jsonArrayHeaders).build(); + + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains( + "Missing number key in the headers list of the dictionaryJson parameter.")); + + // missing options headers + jsonObjOption = Json.createObjectBuilder().add("option", "foobar").build(); + jsonObjNumber = Json.createObjectBuilder().add("number", "foobar").build(); + + jsonArrayHeaders = Json.createArrayBuilder() + // .add(jsonObjOption) + .add(jsonObjNumber).build(); + + jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") + .add("type", "REST").add("method", "GET").add("url", "http://foobar.com") + .add("body", "foobody").add("headers", jsonArrayHeaders).build(); + + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains( + "Missing option key in the headers list of the dictionaryJson parameter.")); + + // null option + jsonObjOption = Json.createObjectBuilder().add("option", "").build(); + jsonObjNumber = Json.createObjectBuilder().add("number", "foobar").build(); + + jsonArrayHeaders = Json.createArrayBuilder().add(jsonObjOption).add(jsonObjNumber).build(); + + jsonObjAttrGoodTemp = Json.createObjectBuilder().add("attributeName", "success") + .add("type", "REST").add("method", "GET").add("url", "http://foobar.com") + .add("body", "foobody").add("headers", jsonArrayHeaders).build(); + + assertTrue(PolicyApiUtils.validateDictionaryJsonFields(jsonObjAttrGoodTemp, dictonaryAction) + .contains("Missing required Option value")); + + // null number can't be tested + } + + @Test + public void testStringToJsonObject() { + String jsonString = "{\"foo\":\"bar\"}"; + JsonObject obj = PolicyApiUtils.stringToJsonObject(jsonString); + assertTrue(obj.get("foo").toString().equals("\"bar\"")); + } + + @Test + public void testIsNumeric() { + assertFalse(PolicyApiUtils.isNumeric("notNumeric")); + assertTrue(PolicyApiUtils.isNumeric("2")); + } } |