X-Git-Url: https://gerrit.onap.org/r/gitweb?p=policy%2Fengine.git;a=blobdiff_plain;f=ONAP-PAP-REST%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Fpolicy%2Fpap%2Fxacml%2Frest%2FXACMLPapServletTest.java;h=420e380b62f6852fffcf5c22f5422cede42ee1e6;hp=56d511cb32ef938daea6aa1cad04ac5d667e05e1;hb=2f41a033ed0eae09aa1624d8287687de8a972a5d;hpb=f18fbfc026de9cf02126f57844c37abfee607394 diff --git a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/XACMLPapServletTest.java b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/XACMLPapServletTest.java index 56d511cb3..420e380b6 100644 --- a/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/XACMLPapServletTest.java +++ b/ONAP-PAP-REST/src/test/java/org/onap/policy/pap/xacml/rest/XACMLPapServletTest.java @@ -2,7 +2,7 @@ * ============LICENSE_START======================================================= * ONAP-PAP-REST * ================================================================================ - * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved. + * Copyright (C) 2018-2019 AT&T Intellectual Property. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,31 +20,46 @@ package org.onap.policy.pap.xacml.rest; +import static org.assertj.core.api.Assertions.assertThatCode; +import static org.assertj.core.api.Assertions.assertThatThrownBy; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; + +import com.att.research.xacml.api.pap.PAPException; +import com.att.research.xacml.util.XACMLProperties; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.mockrunner.mock.web.MockHttpServletRequest; +import com.mockrunner.mock.web.MockHttpServletResponse; +import java.io.IOException; +import java.util.Properties; +import javax.servlet.ServletException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import org.junit.After; +import org.junit.Before; import org.junit.Test; -import org.onap.policy.pap.xacml.rest.XACMLPapServlet; public class XACMLPapServletTest { + String systemKey = "xacml.properties"; + String oldProperty = System.getProperty(systemKey); + + @Before + public void setup() { + // Set the system property temporarily + System.setProperty(systemKey, "xacml.pap.properties"); + } + @Test public void testSetAndGet() { - String systemKey = "xacml.properties"; String testVal = "testVal"; XACMLPapServlet servlet = new XACMLPapServlet(); - // Set the system property temporarily - String oldProperty = System.getProperty(systemKey); - System.setProperty(systemKey, "xacml.pap.properties"); - + assertNotNull(servlet); assertNotNull(XACMLPapServlet.getConfigHome()); assertNotNull(XACMLPapServlet.getActionHome()); assertEquals(XACMLPapServlet.getPersistenceUnit(), "XACML-PAP-REST"); - //assertNull(XACMLPapServlet.getEmf()); - //assertNull(XACMLPapServlet.getPDPFile()); - //assertNull(XACMLPapServlet.getPAPEngine()); - //assertNull(servlet.getIa()); - XACMLPapServlet.setPapDbDriver(testVal); assertEquals(XACMLPapServlet.getPapDbDriver(), testVal); XACMLPapServlet.setPapDbUrl(testVal); @@ -57,12 +72,38 @@ public class XACMLPapServletTest { assertEquals(XACMLPapServlet.getMsOnapName(), testVal); XACMLPapServlet.setMsPolicyName(testVal); assertEquals(XACMLPapServlet.getMsPolicyName(), testVal); + } + + @Test + public void testMethods() throws ServletException, IOException, PAPException { + XACMLPapServlet servlet = new XACMLPapServlet(); + + ObjectMapper mapper = new ObjectMapper(); + HttpServletResponse response = new MockHttpServletResponse(); + assertThatCode(() -> XACMLPapServlet.mapperWriteValue(mapper, response, "hello")).doesNotThrowAnyException(); + assertThatCode(() -> XACMLPapServlet.mapperWriteValue(null, null, null)).doesNotThrowAnyException(); + assertNull(XACMLPapServlet.getPapUrl()); + HttpServletRequest request = new MockHttpServletRequest(); + assertThatThrownBy(() -> servlet.doDelete(request, response)).isInstanceOf(NullPointerException.class); + + StringBuffer urlPath = new StringBuffer("http://foo"); + Properties policies = new Properties(); + servlet.populatePolicyURL(urlPath, policies); + assertNull(policies.getProperty("foo.url")); + + policies.setProperty(XACMLProperties.PROP_ROOTPOLICIES, "foo"); + policies.setProperty(XACMLProperties.PROP_REFERENCEDPOLICIES, "bar"); + servlet.populatePolicyURL(urlPath, policies); + assertEquals("http://foo?id=foo", policies.getProperty("foo.url")); + } + + @After + public void after() { // Restore the original system property if (oldProperty != null) { - System.setProperty(systemKey, oldProperty); - } - else { + System.setProperty(systemKey, oldProperty); + } else { System.clearProperty(systemKey); } }