diff options
29 files changed, 2423 insertions, 2352 deletions
diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/PapUrlResolverTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/PapUrlResolverTest.java index c8716c3bc..cf3ddb3b2 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/PapUrlResolverTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/PapUrlResolverTest.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. @@ -19,206 +21,218 @@ */ package org.onap.policy.pdp.rest; + import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Properties; - import org.junit.Assert; import org.junit.Test; import org.onap.policy.rest.XACMLRestProperties; public class PapUrlResolverTest { - - @Test - public void testPropertyModifications(){ - DateFormat df = new SimpleDateFormat(); - //first sort order - String urls = "http://one.localhost.com,http://two.localhost.com,http://three.localhost.com,http://four.localhost.com"; - String failed = "-1,-1,-1,-1"; - String succeeded = "-1,-1,-1,-1"; - PapUrlResolver rs = PapUrlResolver.getInstance(urls, failed, succeeded); - Assert.assertEquals(rs.getProperties().getProperty(XACMLRestProperties.PROP_PAP_URLS),urls); - - rs.failed(); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - rs.succeeded(); - Assert.assertFalse(rs.hasMoreUrls()); - Properties prop = rs.getProperties(); - Assert.assertEquals(df.format(new Date())+",-1,-1,-1",prop.getProperty(XACMLRestProperties.PROP_PAP_FAILED_URLS)); - Assert.assertEquals("-1,"+df.format(new Date())+",-1,-1",prop.getProperty(XACMLRestProperties.PROP_PAP_SUCCEEDED_URLS)); - - failed = prop.getProperty(XACMLRestProperties.PROP_PAP_FAILED_URLS); - succeeded = prop.getProperty(XACMLRestProperties.PROP_PAP_SUCCEEDED_URLS); - rs = PapUrlResolver.getInstance(urls, failed, succeeded); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://two.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://three.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://four.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://one.localhost.com", rs.getUrl()); - rs.succeeded(); - rs.getNext(); - Assert.assertFalse(rs.hasMoreUrls()); - prop = rs.getProperties(); - Assert.assertEquals("-1,-1,-1,-1",prop.getProperty(XACMLRestProperties.PROP_PAP_FAILED_URLS)); - - failed = prop.getProperty(XACMLRestProperties.PROP_PAP_FAILED_URLS); - succeeded = prop.getProperty(XACMLRestProperties.PROP_PAP_SUCCEEDED_URLS); - rs = PapUrlResolver.getInstance(urls, failed, succeeded); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://one.localhost.com", rs.getUrl()); - rs.succeeded(); - rs.getNext(); - Assert.assertFalse(rs.hasMoreUrls()); - prop = rs.getProperties(); - failed = prop.getProperty(XACMLRestProperties.PROP_PAP_FAILED_URLS); - succeeded = prop.getProperty(XACMLRestProperties.PROP_PAP_SUCCEEDED_URLS); - rs = PapUrlResolver.getInstance(urls, failed, succeeded); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://one.localhost.com", rs.getUrl()); - rs.succeeded(); - rs.getNext(); - Assert.assertFalse(rs.hasMoreUrls()); - prop = rs.getProperties(); - failed = prop.getProperty(XACMLRestProperties.PROP_PAP_FAILED_URLS); - succeeded = prop.getProperty(XACMLRestProperties.PROP_PAP_SUCCEEDED_URLS); - rs = PapUrlResolver.getInstance(urls, failed, succeeded); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://one.localhost.com", rs.getUrl()); - rs.succeeded(); - rs.getNext(); - Assert.assertFalse(rs.hasMoreUrls()); - - - prop = rs.getProperties(); - succeeded = prop.getProperty(XACMLRestProperties.PROP_PAP_SUCCEEDED_URLS); - } - @SuppressWarnings("unused") - @Test - public void testModifyUrl(){ - String newUrl = PapUrlResolver.modifyUrl("http://mypap1.com/pap?id=987654", "http://mypap2.com:45/pap/"); - int u = 8; - } - - @Test - public void testSorts(){ - long currentTime = new Date().getTime(); - DateFormat df = new SimpleDateFormat(); - //first sort order - String urls = "http://one.localhost.com,http://two.localhost.com,http://three.localhost.com,http://four.localhost.com"; - String failed = df.format(new Date(currentTime-3600000))+",-1,-1,"+df.format(new Date(currentTime-3200000)); - String succeeded = "-1,8/13/15 5:41 PM,8/13/15 4:41 PM,-1"; - PapUrlResolver rs = PapUrlResolver.getInstance(urls, failed, succeeded); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://two.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://three.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://one.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://four.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertFalse(rs.hasMoreUrls()); - - urls = "http://one.localhost.com,http://two.localhost.com,http://three.localhost.com,http://four.localhost.com"; - failed = "-1,-1,-1,-1"; - succeeded = "-1,"+df.format(new Date(currentTime-3600000))+","+df.format(new Date(currentTime-6600000))+",-1"; - rs = PapUrlResolver.getInstance(urls, failed, succeeded); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://one.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://two.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://three.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://four.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertFalse(rs.hasMoreUrls()); - - urls = "http://one.localhost.com,http://two.localhost.com,http://three.localhost.com,http://four.localhost.com"; - failed = "-1,-1,-1,-1"; - succeeded = "-1,-1,-1,-1"; - rs = PapUrlResolver.getInstance(urls, failed, succeeded); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://one.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://two.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://three.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://four.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertFalse(rs.hasMoreUrls()); - - urls = "http://one.localhost.com,http://two.localhost.com,http://three.localhost.com,http://four.localhost.com"; - failed = df.format(new Date(currentTime-3900000))+","+df.format(new Date(currentTime-5600000))+","+df.format(new Date(currentTime-4600000))+","+df.format(new Date(currentTime-3600000)); - succeeded = "-1,-1,-1,-1"; - rs = PapUrlResolver.getInstance(urls, failed, succeeded); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://two.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://three.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://one.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://four.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertFalse(rs.hasMoreUrls()); - - urls = "http://one.localhost.com,http://two.localhost.com,http://three.localhost.com,http://four.localhost.com"; - failed = df.format(new Date(currentTime-(3600000*4)))+",-1,-1,-1"; - succeeded = "-1,-1,-1,-1"; - rs = PapUrlResolver.getInstance(urls, failed, succeeded); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://two.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://three.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://four.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://one.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertFalse(rs.hasMoreUrls()); - - urls = "http://one.localhost.com,http://two.localhost.com,http://three.localhost.com,http://four.localhost.com"; - failed = df.format(new Date(currentTime-(3600000*6)))+",-1,-1,-1"; - succeeded = "-1,-1,-1,-1"; - rs = PapUrlResolver.getInstance(urls, failed, succeeded); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://one.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://two.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://three.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertTrue(rs.hasMoreUrls()); - Assert.assertEquals("http://four.localhost.com", rs.getUrl()); - rs.getNext(); - Assert.assertFalse(rs.hasMoreUrls()); - } + @Test + public void testPropertyModifications() { + DateFormat df = new SimpleDateFormat(); + // first sort order + String urls = "http://one.localhost.com,http://two.localhost.com," + + "http://three.localhost.com,http://four.localhost.com"; + String failed = "-1,-1,-1,-1"; + String succeeded = "-1,-1,-1,-1"; + PapUrlResolver rs = PapUrlResolver.getInstance(urls, failed, succeeded); + Assert.assertEquals(rs.getProperties().getProperty(XACMLRestProperties.PROP_PAP_URLS), + urls); + + rs.failed(); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + rs.succeeded(); + Assert.assertFalse(rs.hasMoreUrls()); + Properties prop = rs.getProperties(); + Assert.assertEquals(df.format(new Date()) + ",-1,-1,-1", + prop.getProperty(XACMLRestProperties.PROP_PAP_FAILED_URLS)); + Assert.assertEquals("-1," + df.format(new Date()) + ",-1,-1", + prop.getProperty(XACMLRestProperties.PROP_PAP_SUCCEEDED_URLS)); + + failed = prop.getProperty(XACMLRestProperties.PROP_PAP_FAILED_URLS); + succeeded = prop.getProperty(XACMLRestProperties.PROP_PAP_SUCCEEDED_URLS); + rs = PapUrlResolver.getInstance(urls, failed, succeeded); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://two.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://three.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://four.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://one.localhost.com", rs.getUrl()); + rs.succeeded(); + rs.getNext(); + Assert.assertFalse(rs.hasMoreUrls()); + prop = rs.getProperties(); + Assert.assertEquals("-1,-1,-1,-1", + prop.getProperty(XACMLRestProperties.PROP_PAP_FAILED_URLS)); + + failed = prop.getProperty(XACMLRestProperties.PROP_PAP_FAILED_URLS); + succeeded = prop.getProperty(XACMLRestProperties.PROP_PAP_SUCCEEDED_URLS); + rs = PapUrlResolver.getInstance(urls, failed, succeeded); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://one.localhost.com", rs.getUrl()); + rs.succeeded(); + rs.getNext(); + Assert.assertFalse(rs.hasMoreUrls()); + prop = rs.getProperties(); + failed = prop.getProperty(XACMLRestProperties.PROP_PAP_FAILED_URLS); + succeeded = prop.getProperty(XACMLRestProperties.PROP_PAP_SUCCEEDED_URLS); + rs = PapUrlResolver.getInstance(urls, failed, succeeded); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://one.localhost.com", rs.getUrl()); + rs.succeeded(); + rs.getNext(); + Assert.assertFalse(rs.hasMoreUrls()); + prop = rs.getProperties(); + failed = prop.getProperty(XACMLRestProperties.PROP_PAP_FAILED_URLS); + succeeded = prop.getProperty(XACMLRestProperties.PROP_PAP_SUCCEEDED_URLS); + rs = PapUrlResolver.getInstance(urls, failed, succeeded); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://one.localhost.com", rs.getUrl()); + rs.succeeded(); + rs.getNext(); + Assert.assertFalse(rs.hasMoreUrls()); + + prop = rs.getProperties(); + succeeded = prop.getProperty(XACMLRestProperties.PROP_PAP_SUCCEEDED_URLS); + } + + @SuppressWarnings("unused") + @Test + public void testModifyUrl() { + String newUrl = PapUrlResolver.modifyUrl("http://mypap1.com/pap?id=987654", + "http://mypap2.com:45/pap/"); + int u = 8; + } + + @Test + public void testSorts() { + long currentTime = new Date().getTime(); + DateFormat df = new SimpleDateFormat(); + // first sort order + String urls = + "http://one.localhost.com,http://two.localhost.com,http://three.localhost.com," + + "http://four.localhost.com"; + String failed = df.format(new Date(currentTime - 3600000)) + ",-1,-1," + + df.format(new Date(currentTime - 3200000)); + String succeeded = "-1,8/13/15 5:41 PM,8/13/15 4:41 PM,-1"; + PapUrlResolver rs = PapUrlResolver.getInstance(urls, failed, succeeded); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://two.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://three.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://one.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://four.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertFalse(rs.hasMoreUrls()); + + urls = "http://one.localhost.com,http://two.localhost.com,http://three.localhost.com,http://four.localhost.com"; + failed = "-1,-1,-1,-1"; + succeeded = "-1," + df.format(new Date(currentTime - 3600000)) + "," + + df.format(new Date(currentTime - 6600000)) + ",-1"; + rs = PapUrlResolver.getInstance(urls, failed, succeeded); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://one.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://two.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://three.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://four.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertFalse(rs.hasMoreUrls()); + + urls = "http://one.localhost.com,http://two.localhost.com,http://three.localhost.com,http://four.localhost.com"; + failed = "-1,-1,-1,-1"; + succeeded = "-1,-1,-1,-1"; + rs = PapUrlResolver.getInstance(urls, failed, succeeded); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://one.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://two.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://three.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://four.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertFalse(rs.hasMoreUrls()); + + urls = "http://one.localhost.com,http://two.localhost.com,http://three.localhost.com,http://four.localhost.com"; + failed = df.format(new Date(currentTime - 3900000)) + "," + + df.format(new Date(currentTime - 5600000)) + "," + + df.format(new Date(currentTime - 4600000)) + "," + + df.format(new Date(currentTime - 3600000)); + succeeded = "-1,-1,-1,-1"; + rs = PapUrlResolver.getInstance(urls, failed, succeeded); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://two.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://three.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://one.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://four.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertFalse(rs.hasMoreUrls()); + + urls = "http://one.localhost.com,http://two.localhost.com,http://three.localhost.com,http://four.localhost.com"; + failed = df.format(new Date(currentTime - (3600000 * 4))) + ",-1,-1,-1"; + succeeded = "-1,-1,-1,-1"; + rs = PapUrlResolver.getInstance(urls, failed, succeeded); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://two.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://three.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://four.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://one.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertFalse(rs.hasMoreUrls()); + + urls = "http://one.localhost.com,http://two.localhost.com,http://three.localhost.com,http://four.localhost.com"; + failed = df.format(new Date(currentTime - (3600000 * 6))) + ",-1,-1,-1"; + succeeded = "-1,-1,-1,-1"; + rs = PapUrlResolver.getInstance(urls, failed, succeeded); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://one.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://two.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://three.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertTrue(rs.hasMoreUrls()); + Assert.assertEquals("http://four.localhost.com", rs.getUrl()); + rs.getNext(); + Assert.assertFalse(rs.hasMoreUrls()); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/XACMLPdpServletTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/XACMLPdpServletTest.java index 8707ee0ff..14c231aed 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/XACMLPdpServletTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/XACMLPdpServletTest.java @@ -28,13 +28,11 @@ import java.util.Collections; import java.util.List; import java.util.Properties; import java.util.Random; - import javax.servlet.ServletConfig; import javax.servlet.ServletInputStream; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; - import org.junit.After; import org.junit.Before; import org.junit.Test; @@ -53,433 +51,418 @@ import org.powermock.core.classloader.annotations.PrepareForTest; import org.powermock.modules.junit4.PowerMockRunner; import org.springframework.mock.web.MockHttpServletResponse; import org.springframework.mock.web.MockServletConfig; - import com.att.research.xacml.util.XACMLProperties; import com.mockrunner.mock.web.MockServletInputStream; - import junit.framework.TestCase; @RunWith(PowerMockRunner.class) @PrepareForTest({IntegrityMonitor.class}) public class XACMLPdpServletTest extends TestCase { - private static Logger LOGGER = FlexLogger.getLogger(XACMLPdpServletTest.class); - private List<String> headers = new ArrayList<>(); - - private HttpServletRequest httpServletRequest; - private HttpServletResponse httpServletResponse; - private ServletOutputStream mockOutput; - private ServletInputStream mockInput; - private ServletConfig servletConfig; - private XACMLPdpServlet pdpServlet; - private Properties properties; - private String resourceName; - private static final String DEFAULT_DB_DRIVER = "org.h2.Driver"; - private static final String DEFAULT_DB_USER = "sa"; - private static final String DEFAULT_DB_PWD = ""; - private StdPDPStatus status; - private StdPDPPolicy foobarPolicy; - - private static final String ERROR_TEXT = "Exception occurred: "; - - @Override - @Before - public void setUp() { - status = new StdPDPStatus(); - foobarPolicy = new StdPDPPolicy(); - foobarPolicy.setId("foobar"); - foobarPolicy.setVersion("123"); - foobarPolicy.setName("nothing"); - status.addLoadedPolicy(foobarPolicy); - - properties = new Properties(); - properties.put(IntegrityAuditProperties.DB_DRIVER, XACMLPdpServletTest.DEFAULT_DB_DRIVER); - properties.put(IntegrityAuditProperties.DB_URL, "jdbc:h2:file:./sql/xacmlTest"); - properties.put(IntegrityAuditProperties.DB_USER, XACMLPdpServletTest.DEFAULT_DB_USER); - properties.put(IntegrityAuditProperties.DB_PWD, XACMLPdpServletTest.DEFAULT_DB_PWD); - properties.put(IntegrityAuditProperties.SITE_NAME, "SiteA"); - properties.put(IntegrityAuditProperties.NODE_TYPE, "pap"); - resourceName = "siteA.pdp1"; - - System.setProperty("com.sun.management.jmxremote.port", "9999"); - - IntegrityMonitor im = null; - try { - im = IntegrityMonitor.getInstance(resourceName, properties); - } catch (Exception e) { - e.printStackTrace(); + private static Logger LOGGER = FlexLogger.getLogger(XACMLPdpServletTest.class); + private List<String> headers = new ArrayList<>(); + + private HttpServletRequest httpServletRequest; + private HttpServletResponse httpServletResponse; + private ServletOutputStream mockOutput; + private ServletInputStream mockInput; + private ServletConfig servletConfig; + private XACMLPdpServlet pdpServlet; + private Properties properties; + private String resourceName; + private static final String DEFAULT_DB_DRIVER = "org.h2.Driver"; + private static final String DEFAULT_DB_USER = "sa"; + private static final String DEFAULT_DB_PWD = ""; + private StdPDPStatus status; + private StdPDPPolicy foobarPolicy; + + private static final String ERROR_TEXT = "Exception occurred: "; + + @Override + @Before + public void setUp() { + status = new StdPDPStatus(); + foobarPolicy = new StdPDPPolicy(); + foobarPolicy.setId("foobar"); + foobarPolicy.setVersion("123"); + foobarPolicy.setName("nothing"); + status.addLoadedPolicy(foobarPolicy); + + properties = new Properties(); + properties.put(IntegrityAuditProperties.DB_DRIVER, XACMLPdpServletTest.DEFAULT_DB_DRIVER); + properties.put(IntegrityAuditProperties.DB_URL, "jdbc:h2:file:./sql/xacmlTest"); + properties.put(IntegrityAuditProperties.DB_USER, XACMLPdpServletTest.DEFAULT_DB_USER); + properties.put(IntegrityAuditProperties.DB_PWD, XACMLPdpServletTest.DEFAULT_DB_PWD); + properties.put(IntegrityAuditProperties.SITE_NAME, "SiteA"); + properties.put(IntegrityAuditProperties.NODE_TYPE, "pap"); + resourceName = "siteA.pdp1"; + + System.setProperty("com.sun.management.jmxremote.port", "9999"); + + IntegrityMonitor im = null; + try { + im = IntegrityMonitor.getInstance(resourceName, properties); + } catch (Exception e) { + e.printStackTrace(); + } + + httpServletRequest = Mockito.mock(HttpServletRequest.class); + Mockito.when(httpServletRequest.getMethod()).thenReturn("POST"); + Mockito.when(httpServletRequest.getHeaderNames()).thenReturn(Collections.enumeration(headers)); + Mockito.when(httpServletRequest.getAttributeNames()).thenReturn(Collections.enumeration(headers)); + Mockito.when(httpServletRequest.getRequestURI()).thenReturn("/pdp/test"); + + mockOutput = Mockito.mock(ServletOutputStream.class); + + httpServletResponse = Mockito.mock(MockHttpServletResponse.class); + + try { + Mockito.when(httpServletResponse.getOutputStream()).thenReturn(mockOutput); + } catch (IOException e) { + fail(); + } + + servletConfig = Mockito.mock(MockServletConfig.class); + // servletConfig + Mockito.when(servletConfig.getInitParameterNames()).thenReturn(Collections.enumeration(headers)); + pdpServlet = new XACMLPdpServlet(); + pdpServlet.setIm(im); + + Mockito.when(servletConfig.getInitParameter("XACML_PROPERTIES_NAME")) + .thenReturn("src/test/resources/xacml.pdp.properties"); + + System.setProperty("xacml.properties", "src/test/resources/xacml.pdp.properties"); + System.setProperty("xacml.rest.pdp.config", "src/test/resources/config_testing"); + System.setProperty("xacml.rest.pdp.webapps", "src/test/resources/webapps"); + + System.setProperty("xacml.rest.pdp.register", "false"); + System.setProperty("com.sun.management.jmxremote.port", "9999"); + + im = Mockito.mock(IntegrityMonitor.class); + // Need PowerMockito for mocking static method getInstance(...) + PowerMockito.mockStatic(IntegrityMonitor.class); + try { + // when IntegrityMonitor.getInstance is called, return the mock object + PowerMockito.when(IntegrityMonitor.getInstance(Mockito.anyString(), Mockito.any(Properties.class))) + .thenReturn(im); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + } + + try { + Mockito.doNothing().when(im).startTransaction(); + } catch (IntegrityMonitorException e) { + fail(); + } + Mockito.doNothing().when(im).endTransaction(); } - httpServletRequest = Mockito.mock(HttpServletRequest.class); - Mockito.when(httpServletRequest.getMethod()).thenReturn("POST"); - Mockito.when(httpServletRequest.getHeaderNames()).thenReturn(Collections.enumeration(headers)); - Mockito.when(httpServletRequest.getAttributeNames()) - .thenReturn(Collections.enumeration(headers)); - Mockito.when(httpServletRequest.getRequestURI()).thenReturn("/pdp/test"); - - mockOutput = Mockito.mock(ServletOutputStream.class); - - httpServletResponse = Mockito.mock(MockHttpServletResponse.class); - - try { - Mockito.when(httpServletResponse.getOutputStream()).thenReturn(mockOutput); - } catch (IOException e) { - fail(); + @Override + @After + public void tearDown() { + System.clearProperty("xacml.rest.pdp.config"); } - servletConfig = Mockito.mock(MockServletConfig.class); - // servletConfig - Mockito.when(servletConfig.getInitParameterNames()) - .thenReturn(Collections.enumeration(headers)); - pdpServlet = new XACMLPdpServlet(); - pdpServlet.setIm(im); - - Mockito.when(servletConfig.getInitParameter("XACML_PROPERTIES_NAME")) - .thenReturn("src/test/resources/xacml.pdp.properties"); - - System.setProperty("xacml.properties", "src/test/resources/xacml.pdp.properties"); - System.setProperty("xacml.rest.pdp.config", "src/test/resources/config_testing"); - System.setProperty("xacml.rest.pdp.webapps", "src/test/resources/webapps"); - - System.setProperty("xacml.rest.pdp.register", "false"); - System.setProperty("com.sun.management.jmxremote.port", "9999"); - - im = Mockito.mock(IntegrityMonitor.class); - // Need PowerMockito for mocking static method getInstance(...) - PowerMockito.mockStatic(IntegrityMonitor.class); - try { - // when IntegrityMonitor.getInstance is called, return the mock object - PowerMockito - .when(IntegrityMonitor.getInstance(Mockito.anyString(), Mockito.any(Properties.class))) - .thenReturn(im); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); + @Test + public void testInit() { + LOGGER.info("XACMLPdpServletTest - testInit"); + try { + pdpServlet.init(servletConfig); + + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - try { - Mockito.doNothing().when(im).startTransaction(); - } catch (IntegrityMonitorException e) { - fail(); - } - Mockito.doNothing().when(im).endTransaction(); - } - - @Override - @After - public void tearDown() - { - System.clearProperty("xacml.rest.pdp.config"); - } - - @Test - public void testInit() { - LOGGER.info("XACMLPdpServletTest - testInit"); - try { - pdpServlet.init(servletConfig); - - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + @Test + public void testUebNotification() { + LOGGER.info("XACMLPdpServletTest - testUebNotification"); + try { - } - - } - - @Test - public void testUebNotification() { - LOGGER.info("XACMLPdpServletTest - testUebNotification"); - try { - - XACMLProperties.reloadProperties(); - System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME, - "src/test/resources/xacml.pdp.ueb.properties"); - XACMLProperties.getProperties(); + XACMLProperties.reloadProperties(); + System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME, "src/test/resources/xacml.pdp.ueb.properties"); + XACMLProperties.getProperties(); - pdpServlet.init(servletConfig); + pdpServlet.init(servletConfig); - status.setStatus(com.att.research.xacml.api.pap.PDPStatus.Status.UPDATING_CONFIGURATION); - - XACMLPdpLoader.validatePolicies(properties, status); - XACMLPdpLoader.sendNotification(); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + status.setStatus(com.att.research.xacml.api.pap.PDPStatus.Status.UPDATING_CONFIGURATION); + XACMLPdpLoader.validatePolicies(properties, status); + XACMLPdpLoader.sendNotification(); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } - - @Test - public void testDmaapNotification() { - LOGGER.info("XACMLPdpServletTest - testDmaapNotification"); - try { - - XACMLProperties.reloadProperties(); - System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME, - "src/test/resources/xacml.pdp.dmaap.properties"); - XACMLProperties.getProperties(); + @Test + public void testDmaapNotification() { + LOGGER.info("XACMLPdpServletTest - testDmaapNotification"); + try { - pdpServlet.init(servletConfig); + XACMLProperties.reloadProperties(); + System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME, "src/test/resources/xacml.pdp.dmaap.properties"); + XACMLProperties.getProperties(); - status.setStatus(com.att.research.xacml.api.pap.PDPStatus.Status.UPDATING_CONFIGURATION); + pdpServlet.init(servletConfig); - XACMLPdpLoader.validatePolicies(properties, status); - XACMLPdpLoader.sendNotification(); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + status.setStatus(com.att.research.xacml.api.pap.PDPStatus.Status.UPDATING_CONFIGURATION); + XACMLPdpLoader.validatePolicies(properties, status); + XACMLPdpLoader.sendNotification(); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } - - - @Test - public void testXACMLPdpRegisterThread() { - LOGGER.info("XACMLPdpServletTest - testXACMLPdpRegisterThread"); - try { - ONAPLoggingContext baseLoggingContext = new ONAPLoggingContext(); - baseLoggingContext.setServer("localhost"); - XACMLPdpRegisterThread regThread = new XACMLPdpRegisterThread(baseLoggingContext); - regThread.run(); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + @Test + public void testXACMLPdpRegisterThread() { + LOGGER.info("XACMLPdpServletTest - testXACMLPdpRegisterThread"); + try { + ONAPLoggingContext baseLoggingContext = new ONAPLoggingContext(); + baseLoggingContext.setServer("localhost"); + XACMLPdpRegisterThread regThread = new XACMLPdpRegisterThread(baseLoggingContext); + regThread.run(); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } - - @Test - public void testDoGetNoTypeError() { - LOGGER.info("XACMLPdpServletTest - testDoGetNoTypeError"); - try { - - pdpServlet.init(servletConfig); - pdpServlet.doGet(httpServletRequest, httpServletResponse); - Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + + @Test + public void testDoGetNoTypeError() { + LOGGER.info("XACMLPdpServletTest - testDoGetNoTypeError"); + try { + + pdpServlet.init(servletConfig); + pdpServlet.doGet(httpServletRequest, httpServletResponse); + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } - - @Test - public void testDoGetConfigType() { - LOGGER.info("XACMLPdpServletTest - testDoGetConfigType"); - Mockito.when(httpServletRequest.getParameter("type")).thenReturn("config"); - - try { - pdpServlet.init(servletConfig); - pdpServlet.doGet(httpServletRequest, httpServletResponse); - Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + + @Test + public void testDoGetConfigType() { + LOGGER.info("XACMLPdpServletTest - testDoGetConfigType"); + Mockito.when(httpServletRequest.getParameter("type")).thenReturn("config"); + + try { + pdpServlet.init(servletConfig); + pdpServlet.doGet(httpServletRequest, httpServletResponse); + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } + } - } - - @Test - public void testDoGetTypeHb() { - LOGGER.info("XACMLPdpServletTest - testDoGetTypeHb"); - try { - Mockito.when(httpServletRequest.getParameter("type")).thenReturn("hb"); - pdpServlet.init(servletConfig); - pdpServlet.doGet(httpServletRequest, httpServletResponse); - Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + @Test + public void testDoGetTypeHb() { + LOGGER.info("XACMLPdpServletTest - testDoGetTypeHb"); + try { + Mockito.when(httpServletRequest.getParameter("type")).thenReturn("hb"); + pdpServlet.init(servletConfig); + pdpServlet.doGet(httpServletRequest, httpServletResponse); + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } - - @Test - public void testDoGetTypeStatus() { - LOGGER.info("XACMLPdpServletTest - testDoGetTypeStatus"); - try { - Mockito.when(httpServletRequest.getParameter("type")).thenReturn("Status"); - pdpServlet.init(servletConfig); - pdpServlet.doGet(httpServletRequest, httpServletResponse); - Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + + @Test + public void testDoGetTypeStatus() { + LOGGER.info("XACMLPdpServletTest - testDoGetTypeStatus"); + try { + Mockito.when(httpServletRequest.getParameter("type")).thenReturn("Status"); + pdpServlet.init(servletConfig); + pdpServlet.doGet(httpServletRequest, httpServletResponse); + Mockito.verify(httpServletResponse).setStatus(HttpServletResponse.SC_OK); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } - - @Test - public void testDoPost() { - LOGGER.info("XACMLPdpServletTest - testDoPost"); - try { - pdpServlet.init(servletConfig); - pdpServlet.doPost(httpServletRequest, httpServletResponse); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + + @Test + public void testDoPost() { + LOGGER.info("XACMLPdpServletTest - testDoPost"); + try { + pdpServlet.init(servletConfig); + pdpServlet.doPost(httpServletRequest, httpServletResponse); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } - - @Test - public void testDoPostToLong() { - LOGGER.info("XACMLPdpServletTest - testDoPostToLong"); - try { - Mockito.when(httpServletRequest.getContentType()).thenReturn("stuff"); - Mockito.when(httpServletRequest.getContentLength()).thenReturn(32768); - - pdpServlet.init(servletConfig); - pdpServlet.doPost(httpServletRequest, httpServletResponse); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + + @Test + public void testDoPostToLong() { + LOGGER.info("XACMLPdpServletTest - testDoPostToLong"); + try { + Mockito.when(httpServletRequest.getContentType()).thenReturn("stuff"); + Mockito.when(httpServletRequest.getContentLength()).thenReturn(32768); + + pdpServlet.init(servletConfig); + pdpServlet.doPost(httpServletRequest, httpServletResponse); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } - - @Test - public void testDoPostContentLengthNegative() { - LOGGER.info("XACMLPdpServletTest - testDoPostToLong"); - try { - Mockito.when(httpServletRequest.getContentType()).thenReturn("stuff"); - Mockito.when(httpServletRequest.getContentLength()).thenReturn(-1); - - pdpServlet.init(servletConfig); - pdpServlet.doPost(httpServletRequest, httpServletResponse); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + + @Test + public void testDoPostContentLengthNegative() { + LOGGER.info("XACMLPdpServletTest - testDoPostToLong"); + try { + Mockito.when(httpServletRequest.getContentType()).thenReturn("stuff"); + Mockito.when(httpServletRequest.getContentLength()).thenReturn(-1); + + pdpServlet.init(servletConfig); + pdpServlet.doPost(httpServletRequest, httpServletResponse); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } - - @Test - public void testDoPostContentTypeNonValid() { - LOGGER.info("XACMLPdpServletTest - testDoPostToLong"); - try { - Mockito.when(httpServletRequest.getContentType()).thenReturn(";"); - Mockito.when(httpServletRequest.getContentLength()).thenReturn(30768); - - pdpServlet.init(servletConfig); - pdpServlet.doPost(httpServletRequest, httpServletResponse); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + + @Test + public void testDoPostContentTypeNonValid() { + LOGGER.info("XACMLPdpServletTest - testDoPostToLong"); + try { + Mockito.when(httpServletRequest.getContentType()).thenReturn(";"); + Mockito.when(httpServletRequest.getContentLength()).thenReturn(30768); + + pdpServlet.init(servletConfig); + pdpServlet.doPost(httpServletRequest, httpServletResponse); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } - - @Test - public void testDoPostContentTypeConfigurationError() { - LOGGER.info("XACMLPdpServletTest - testDoPostToLong"); - try { - Mockito.when(httpServletRequest.getContentType()).thenReturn("stuff"); - Mockito.when(httpServletRequest.getContentLength()).thenReturn(30768); - - pdpServlet.init(servletConfig); - pdpServlet.doPost(httpServletRequest, httpServletResponse); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + + @Test + public void testDoPostContentTypeConfigurationError() { + LOGGER.info("XACMLPdpServletTest - testDoPostToLong"); + try { + Mockito.when(httpServletRequest.getContentType()).thenReturn("stuff"); + Mockito.when(httpServletRequest.getContentLength()).thenReturn(30768); + + pdpServlet.init(servletConfig); + pdpServlet.doPost(httpServletRequest, httpServletResponse); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } - - @Test - public void testDoPutCacheEmpty() { - LOGGER.info("XACMLPdpServletTest - testDoPutCacheEmpty"); - mockInput = Mockito.mock(ServletInputStream.class); - - try { - Mockito.when(httpServletRequest.getParameter("cache")).thenReturn("cache"); - Mockito.when(httpServletRequest.getContentType()).thenReturn("text/x-java-properties"); - Mockito.when(httpServletRequest.getInputStream()).thenReturn(mockInput); - pdpServlet.init(servletConfig); - pdpServlet.doPut(httpServletRequest, httpServletResponse); - Mockito.verify(httpServletResponse).sendError(HttpServletResponse.SC_BAD_REQUEST, - "PUT must contain at least one property"); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + + @Test + public void testDoPutCacheEmpty() { + LOGGER.info("XACMLPdpServletTest - testDoPutCacheEmpty"); + mockInput = Mockito.mock(ServletInputStream.class); + + try { + Mockito.when(httpServletRequest.getParameter("cache")).thenReturn("cache"); + Mockito.when(httpServletRequest.getContentType()).thenReturn("text/x-java-properties"); + Mockito.when(httpServletRequest.getInputStream()).thenReturn(mockInput); + pdpServlet.init(servletConfig); + pdpServlet.doPut(httpServletRequest, httpServletResponse); + Mockito.verify(httpServletResponse).sendError(HttpServletResponse.SC_BAD_REQUEST, + "PUT must contain at least one property"); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } - - @Test - public void testDoPutConfigPolicies() { - LOGGER.info("XACMLPdpServletTest - testDoPutConfigPolicies"); - byte[] b = new byte[20]; - new Random().nextBytes(b); - - mockInput = new MockServletInputStream(b); - - try { - Mockito.when(httpServletRequest.getParameter("cache")).thenReturn("policies"); - Mockito.when(httpServletRequest.getContentType()).thenReturn("text/x-java-properties"); - Mockito.when(httpServletRequest.getInputStream()).thenReturn(mockInput); - pdpServlet.init(servletConfig); - pdpServlet.doPut(httpServletRequest, httpServletResponse); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + + @Test + public void testDoPutConfigPolicies() { + LOGGER.info("XACMLPdpServletTest - testDoPutConfigPolicies"); + byte[] b = new byte[20]; + new Random().nextBytes(b); + + mockInput = new MockServletInputStream(b); + + try { + Mockito.when(httpServletRequest.getParameter("cache")).thenReturn("policies"); + Mockito.when(httpServletRequest.getContentType()).thenReturn("text/x-java-properties"); + Mockito.when(httpServletRequest.getInputStream()).thenReturn(mockInput); + pdpServlet.init(servletConfig); + pdpServlet.doPut(httpServletRequest, httpServletResponse); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } - - public void testDoPutToLong() { - LOGGER.info("XACMLPdpServletTest - testDoPutToLong"); - try { - Mockito.when(httpServletRequest.getParameter("cache")).thenReturn("policies"); - - Mockito.when(httpServletRequest.getContentType()).thenReturn("text/x-java-properties"); - Mockito.when(httpServletRequest.getContentLength()).thenReturn(1000000000); - - pdpServlet.init(servletConfig); - pdpServlet.doPut(httpServletRequest, httpServletResponse); - Mockito.verify(httpServletResponse).sendError(HttpServletResponse.SC_BAD_REQUEST, - "Content-Length larger than server will accept."); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + + public void testDoPutToLong() { + LOGGER.info("XACMLPdpServletTest - testDoPutToLong"); + try { + Mockito.when(httpServletRequest.getParameter("cache")).thenReturn("policies"); + + Mockito.when(httpServletRequest.getContentType()).thenReturn("text/x-java-properties"); + Mockito.when(httpServletRequest.getContentLength()).thenReturn(1000000000); + + pdpServlet.init(servletConfig); + pdpServlet.doPut(httpServletRequest, httpServletResponse); + Mockito.verify(httpServletResponse).sendError(HttpServletResponse.SC_BAD_REQUEST, + "Content-Length larger than server will accept."); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } - - @Test - public void testDoPutInvalidContentType() { - LOGGER.info("XACMLPdpServletTest - testDoPutToLong"); - try { - Mockito.when(httpServletRequest.getParameter("cache")).thenReturn("policies"); - - Mockito.when(httpServletRequest.getContentType()).thenReturn("text/json"); - Mockito.when(httpServletRequest.getContentLength()).thenReturn(32768); - - pdpServlet.init(servletConfig); - pdpServlet.doPut(httpServletRequest, httpServletResponse); - Mockito.verify(httpServletResponse).sendError(HttpServletResponse.SC_BAD_REQUEST, - "Invalid cache: 'policies' or content-type: 'text/json'"); - assertTrue(true); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + + @Test + public void testDoPutInvalidContentType() { + LOGGER.info("XACMLPdpServletTest - testDoPutToLong"); + try { + Mockito.when(httpServletRequest.getParameter("cache")).thenReturn("policies"); + + Mockito.when(httpServletRequest.getContentType()).thenReturn("text/json"); + Mockito.when(httpServletRequest.getContentLength()).thenReturn(32768); + + pdpServlet.init(servletConfig); + pdpServlet.doPut(httpServletRequest, httpServletResponse); + Mockito.verify(httpServletResponse).sendError(HttpServletResponse.SC_BAD_REQUEST, + "Invalid cache: 'policies' or content-type: 'text/json'"); + assertTrue(true); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } - - @Test - public void testDestroy() { - LOGGER.info("XACMLPdpServletTest - testDestroy"); - - try { - pdpServlet.init(servletConfig); - pdpServlet.destroy(); - } catch (Exception e) { - LOGGER.error(ERROR_TEXT + e); - fail(); + + @Test + public void testDestroy() { + LOGGER.info("XACMLPdpServletTest - testDestroy"); + + try { + pdpServlet.init(servletConfig); + pdpServlet.destroy(); + } catch (Exception e) { + LOGGER.error(ERROR_TEXT + e); + fail(); + } } - } } 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")); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/auth/test/AuthenticationServiceTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/auth/test/AuthenticationServiceTest.java index 1585fe420..564187675 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/auth/test/AuthenticationServiceTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/auth/test/AuthenticationServiceTest.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. @@ -27,27 +29,26 @@ import org.junit.Test; import org.onap.policy.pdp.rest.restAuth.AuthenticationService; public class AuthenticationServiceTest { - private final String testCred = "testpdp:alpha456"; - private final String testCredEncoded = new String(Base64.getEncoder().encode(testCred.getBytes())); - private final String basicCred = "Basic " + testCredEncoded; - - @Test - public void testAuth() throws UnsupportedEncodingException { - String systemKey = "xacml.properties"; + private final String testCred = "testpdp:alpha456"; + private final String testCredEncoded = new String(Base64.getEncoder().encode(testCred.getBytes())); + private final String basicCred = "Basic " + testCredEncoded; + + @Test + public void testAuth() throws UnsupportedEncodingException { + String systemKey = "xacml.properties"; + + // Set the system property temporarily + String oldProperty = System.getProperty(systemKey); + System.setProperty(systemKey, "xacml.pdp.properties"); + + AuthenticationService service = new AuthenticationService(); + assertEquals(service.authenticate(basicCred), true); - // Set the system property temporarily - String oldProperty = System.getProperty(systemKey); - System.setProperty(systemKey, "xacml.pdp.properties"); - - AuthenticationService service = new AuthenticationService(); - assertEquals(service.authenticate(basicCred), true); - - // Restore the original system property - if (oldProperty != null) { - System.setProperty(systemKey, oldProperty); - } - else { - System.clearProperty(systemKey); - } - } + // Restore the original system property + if (oldProperty != null) { + System.setProperty(systemKey, oldProperty); + } else { + System.clearProperty(systemKey); + } + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/auth/test/FilterTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/auth/test/FilterTest.java index 1185eddff..99ecefb80 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/auth/test/FilterTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/auth/test/FilterTest.java @@ -4,12 +4,14 @@ * ================================================================================ * Copyright (C) 2017-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,177 +25,161 @@ package org.onap.policy.pdp.rest.auth.test; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; - import java.io.IOException; - import javax.servlet.FilterChain; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; - import org.junit.Before; import org.junit.Test; import org.onap.policy.pdp.rest.restAuth.PDPAuthenticationFilter; - import com.att.research.xacml.util.XACMLProperties; import com.mockrunner.mock.web.MockRequestDispatcher; public class FilterTest { - - private PDPAuthenticationFilter authenticationFilter = new PDPAuthenticationFilter(); - private final String VALIDHEADERVALUE = "Basic dGVzdHBkcDphbHBoYTQ1Ng=="; - - @Before - public void setUp() throws Exception{ - authenticationFilter.init(null); - XACMLProperties.reloadProperties(); - System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME, "src/test/resources/pass.xacml.pdp.properties"); - XACMLProperties.getProperties(); - } - - @Test - public void testDoFilterError() throws IOException, ServletException { - // create the objects to be mocked - HttpServletRequest httpServletRequest = mock(HttpServletRequest.class); - HttpServletResponse httpServletResponse = mock(HttpServletResponse.class); - FilterChain filterChain = mock(FilterChain.class); - // - when(httpServletRequest.getRequestURI()).thenReturn("error"); - authenticationFilter.doFilter(httpServletRequest, httpServletResponse, - filterChain); - // verify if unauthorized - verify(httpServletResponse).setStatus(HttpServletResponse.SC_UNAUTHORIZED); - } - - @Test - public void testDoFilterNotification() throws IOException, ServletException { - // create the objects to be mocked - HttpServletRequest httpServletRequest = mock(HttpServletRequest.class); - HttpServletResponse httpServletResponse = mock(HttpServletResponse.class); - FilterChain filterChain = mock(FilterChain.class); - // - when(httpServletRequest.getRequestURI()).thenReturn("notifications"); - authenticationFilter.doFilter(httpServletRequest, httpServletResponse, - filterChain); - verify(filterChain).doFilter(httpServletRequest,httpServletResponse); - } - - @Test - public void testDoFilterSwagger() throws Exception{ - // create the objects to be mocked - HttpServletRequest httpServletRequest = mock(HttpServletRequest.class); - HttpServletResponse httpServletResponse = mock(HttpServletResponse.class); - FilterChain filterChain = mock(FilterChain.class); - // - when(httpServletRequest.getRequestURI()).thenReturn("/pdp/swagger"); - when(httpServletRequest.getRequestDispatcher("/api/swagger")).thenReturn(new MockRequestDispatcher()); - authenticationFilter.doFilter(httpServletRequest, httpServletResponse, - filterChain); - verify(httpServletRequest).getRequestDispatcher("/api/swagger"); - when(httpServletRequest.getRequestURI()).thenReturn("/pdp/api-docs/"); - when(httpServletRequest.getRequestDispatcher("/api/api-docs/")).thenReturn(new MockRequestDispatcher()); - authenticationFilter.doFilter(httpServletRequest, httpServletResponse, - filterChain); - verify(httpServletRequest).getRequestDispatcher("/api/api-docs/"); - when(httpServletRequest.getRequestURI()).thenReturn("/pdp/configuration"); - when(httpServletRequest.getRequestDispatcher("/api/configuration")).thenReturn(new MockRequestDispatcher()); - authenticationFilter.doFilter(httpServletRequest, httpServletResponse, - filterChain); - verify(httpServletRequest).getRequestDispatcher("/api/configuration"); - } - - @Test - public void newRequestAuthFailTest() throws Exception{ - // create the objects to be mocked - HttpServletRequest httpServletRequest = mock(HttpServletRequest.class); - HttpServletResponse httpServletResponse = mock(HttpServletResponse.class); - FilterChain filterChain = mock(FilterChain.class); - // - when(httpServletRequest.getRequestURI()).thenReturn("/pdp/api/getConfig"); - when(httpServletRequest.getHeader(PDPAuthenticationFilter.AUTHENTICATION_HEADER)).thenReturn("error"); - authenticationFilter.doFilter(httpServletRequest, httpServletResponse, - filterChain); - // verify if unauthorized - verify(httpServletResponse).setStatus(HttpServletResponse.SC_UNAUTHORIZED); - } - - @Test - public void tokenFailureTest() throws Exception{ - // create the objects to be mocked - HttpServletRequest httpServletRequest = mock(HttpServletRequest.class); - HttpServletResponse httpServletResponse = mock(HttpServletResponse.class); - FilterChain filterChain = mock(FilterChain.class); - // - when(httpServletRequest.getRequestURI()).thenReturn("/pdp/api/getConfig"); - when(httpServletRequest.getHeader(PDPAuthenticationFilter.AUTHENTICATION_HEADER)).thenReturn("Basic test123"); - authenticationFilter.doFilter(httpServletRequest, httpServletResponse, - filterChain); - // verify if unauthorized - verify(httpServletResponse).setStatus(HttpServletResponse.SC_UNAUTHORIZED); - } - - @Test - public void oldRequestAuthPassTest() throws Exception{ - // create the objects to be mocked - HttpServletRequest httpServletRequest = mock(HttpServletRequest.class); - HttpServletResponse httpServletResponse = mock(HttpServletResponse.class); - FilterChain filterChain = mock(FilterChain.class); - // New request no environment header check - when(httpServletRequest.getRequestURI()).thenReturn("/pdp/api/getConfig"); - when(httpServletRequest.getRequestDispatcher("/api/getConfig")).thenReturn(new MockRequestDispatcher()); - when(httpServletRequest.getHeader(PDPAuthenticationFilter.AUTHENTICATION_HEADER)).thenReturn(VALIDHEADERVALUE); - authenticationFilter.doFilter(httpServletRequest, httpServletResponse, - filterChain); - // verify if authorized - verify(httpServletRequest).getRequestDispatcher("/api/getConfig"); - // - // Old Requests Checks - // - when(httpServletRequest.getRequestURI()).thenReturn("/pdp/getConfig"); - when(httpServletRequest.getRequestDispatcher("/api//getConfig")).thenReturn(new MockRequestDispatcher()); - when(httpServletRequest.getHeader(PDPAuthenticationFilter.AUTHENTICATION_HEADER)).thenReturn(VALIDHEADERVALUE); - authenticationFilter.doFilter(httpServletRequest, httpServletResponse, - filterChain); - // verify if authorized - verify(httpServletRequest).getRequestDispatcher("/api//getConfig"); - } - - @Test - public void newRequestAuthPassTest() throws Exception{ - // create the objects to be mocked - HttpServletRequest httpServletRequest = mock(HttpServletRequest.class); - HttpServletResponse httpServletResponse = mock(HttpServletResponse.class); - FilterChain filterChain = mock(FilterChain.class); - // - // Requests with Valid Environment Header values. - // - when(httpServletRequest.getRequestURI()).thenReturn("/pdp/getConfig"); - when(httpServletRequest.getRequestDispatcher("/api//getConfig")).thenReturn(new MockRequestDispatcher()); - when(httpServletRequest.getHeader(PDPAuthenticationFilter.ENVIRONMENT_HEADER)).thenReturn("DEVL"); - when(httpServletRequest.getHeader(PDPAuthenticationFilter.AUTHENTICATION_HEADER)).thenReturn(VALIDHEADERVALUE); - authenticationFilter.doFilter(httpServletRequest, httpServletResponse, - filterChain); - // verify if authorized - verify(httpServletRequest).getRequestDispatcher("/api//getConfig"); - // New request no environment header check - when(httpServletRequest.getRequestURI()).thenReturn("/pdp/api/getConfig"); - when(httpServletRequest.getRequestDispatcher("/api/getConfig")).thenReturn(new MockRequestDispatcher()); - when(httpServletRequest.getHeader(PDPAuthenticationFilter.AUTHENTICATION_HEADER)).thenReturn(VALIDHEADERVALUE); - authenticationFilter.doFilter(httpServletRequest, httpServletResponse, - filterChain); - // verify if authorized - verify(httpServletRequest).getRequestDispatcher("/api/getConfig"); - // - // - // Requests with InValid Environment Header - // - when(httpServletRequest.getRequestURI()).thenReturn("/pdp/getConfig"); - when(httpServletRequest.getRequestDispatcher("/api//getConfig")).thenReturn(new MockRequestDispatcher()); - when(httpServletRequest.getHeader(PDPAuthenticationFilter.ENVIRONMENT_HEADER)).thenReturn("TEST"); - when(httpServletRequest.getHeader(PDPAuthenticationFilter.AUTHENTICATION_HEADER)).thenReturn(VALIDHEADERVALUE); - authenticationFilter.doFilter(httpServletRequest, httpServletResponse, - filterChain); - // verify if unauthorized - verify(httpServletResponse).setStatus(HttpServletResponse.SC_UNAUTHORIZED); - } + + private PDPAuthenticationFilter authenticationFilter = new PDPAuthenticationFilter(); + private final String VALIDHEADERVALUE = "Basic dGVzdHBkcDphbHBoYTQ1Ng=="; + + @Before + public void setUp() throws Exception { + authenticationFilter.init(null); + XACMLProperties.reloadProperties(); + System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME, "src/test/resources/pass.xacml.pdp.properties"); + XACMLProperties.getProperties(); + } + + @Test + public void testDoFilterError() throws IOException, ServletException { + // create the objects to be mocked + HttpServletRequest httpServletRequest = mock(HttpServletRequest.class); + HttpServletResponse httpServletResponse = mock(HttpServletResponse.class); + FilterChain filterChain = mock(FilterChain.class); + // + when(httpServletRequest.getRequestURI()).thenReturn("error"); + authenticationFilter.doFilter(httpServletRequest, httpServletResponse, filterChain); + // verify if unauthorized + verify(httpServletResponse).setStatus(HttpServletResponse.SC_UNAUTHORIZED); + } + + @Test + public void testDoFilterNotification() throws IOException, ServletException { + // create the objects to be mocked + HttpServletRequest httpServletRequest = mock(HttpServletRequest.class); + HttpServletResponse httpServletResponse = mock(HttpServletResponse.class); + FilterChain filterChain = mock(FilterChain.class); + // + when(httpServletRequest.getRequestURI()).thenReturn("notifications"); + authenticationFilter.doFilter(httpServletRequest, httpServletResponse, filterChain); + verify(filterChain).doFilter(httpServletRequest, httpServletResponse); + } + + @Test + public void testDoFilterSwagger() throws Exception { + // create the objects to be mocked + HttpServletRequest httpServletRequest = mock(HttpServletRequest.class); + HttpServletResponse httpServletResponse = mock(HttpServletResponse.class); + FilterChain filterChain = mock(FilterChain.class); + // + when(httpServletRequest.getRequestURI()).thenReturn("/pdp/swagger"); + when(httpServletRequest.getRequestDispatcher("/api/swagger")).thenReturn(new MockRequestDispatcher()); + authenticationFilter.doFilter(httpServletRequest, httpServletResponse, filterChain); + verify(httpServletRequest).getRequestDispatcher("/api/swagger"); + when(httpServletRequest.getRequestURI()).thenReturn("/pdp/api-docs/"); + when(httpServletRequest.getRequestDispatcher("/api/api-docs/")).thenReturn(new MockRequestDispatcher()); + authenticationFilter.doFilter(httpServletRequest, httpServletResponse, filterChain); + verify(httpServletRequest).getRequestDispatcher("/api/api-docs/"); + when(httpServletRequest.getRequestURI()).thenReturn("/pdp/configuration"); + when(httpServletRequest.getRequestDispatcher("/api/configuration")).thenReturn(new MockRequestDispatcher()); + authenticationFilter.doFilter(httpServletRequest, httpServletResponse, filterChain); + verify(httpServletRequest).getRequestDispatcher("/api/configuration"); + } + + @Test + public void newRequestAuthFailTest() throws Exception { + // create the objects to be mocked + HttpServletRequest httpServletRequest = mock(HttpServletRequest.class); + HttpServletResponse httpServletResponse = mock(HttpServletResponse.class); + FilterChain filterChain = mock(FilterChain.class); + // + when(httpServletRequest.getRequestURI()).thenReturn("/pdp/api/getConfig"); + when(httpServletRequest.getHeader(PDPAuthenticationFilter.AUTHENTICATION_HEADER)).thenReturn("error"); + authenticationFilter.doFilter(httpServletRequest, httpServletResponse, filterChain); + // verify if unauthorized + verify(httpServletResponse).setStatus(HttpServletResponse.SC_UNAUTHORIZED); + } + + @Test + public void tokenFailureTest() throws Exception { + // create the objects to be mocked + HttpServletRequest httpServletRequest = mock(HttpServletRequest.class); + HttpServletResponse httpServletResponse = mock(HttpServletResponse.class); + FilterChain filterChain = mock(FilterChain.class); + // + when(httpServletRequest.getRequestURI()).thenReturn("/pdp/api/getConfig"); + when(httpServletRequest.getHeader(PDPAuthenticationFilter.AUTHENTICATION_HEADER)).thenReturn("Basic test123"); + authenticationFilter.doFilter(httpServletRequest, httpServletResponse, filterChain); + // verify if unauthorized + verify(httpServletResponse).setStatus(HttpServletResponse.SC_UNAUTHORIZED); + } + + @Test + public void oldRequestAuthPassTest() throws Exception { + // create the objects to be mocked + HttpServletRequest httpServletRequest = mock(HttpServletRequest.class); + HttpServletResponse httpServletResponse = mock(HttpServletResponse.class); + FilterChain filterChain = mock(FilterChain.class); + // New request no environment header check + when(httpServletRequest.getRequestURI()).thenReturn("/pdp/api/getConfig"); + when(httpServletRequest.getRequestDispatcher("/api/getConfig")).thenReturn(new MockRequestDispatcher()); + when(httpServletRequest.getHeader(PDPAuthenticationFilter.AUTHENTICATION_HEADER)).thenReturn(VALIDHEADERVALUE); + authenticationFilter.doFilter(httpServletRequest, httpServletResponse, filterChain); + // verify if authorized + verify(httpServletRequest).getRequestDispatcher("/api/getConfig"); + // + // Old Requests Checks + // + when(httpServletRequest.getRequestURI()).thenReturn("/pdp/getConfig"); + when(httpServletRequest.getRequestDispatcher("/api//getConfig")).thenReturn(new MockRequestDispatcher()); + when(httpServletRequest.getHeader(PDPAuthenticationFilter.AUTHENTICATION_HEADER)).thenReturn(VALIDHEADERVALUE); + authenticationFilter.doFilter(httpServletRequest, httpServletResponse, filterChain); + // verify if authorized + verify(httpServletRequest).getRequestDispatcher("/api//getConfig"); + } + + @Test + public void newRequestAuthPassTest() throws Exception { + // create the objects to be mocked + HttpServletRequest httpServletRequest = mock(HttpServletRequest.class); + HttpServletResponse httpServletResponse = mock(HttpServletResponse.class); + FilterChain filterChain = mock(FilterChain.class); + // + // Requests with Valid Environment Header values. + // + when(httpServletRequest.getRequestURI()).thenReturn("/pdp/getConfig"); + when(httpServletRequest.getRequestDispatcher("/api//getConfig")).thenReturn(new MockRequestDispatcher()); + when(httpServletRequest.getHeader(PDPAuthenticationFilter.ENVIRONMENT_HEADER)).thenReturn("DEVL"); + when(httpServletRequest.getHeader(PDPAuthenticationFilter.AUTHENTICATION_HEADER)).thenReturn(VALIDHEADERVALUE); + authenticationFilter.doFilter(httpServletRequest, httpServletResponse, filterChain); + // verify if authorized + verify(httpServletRequest).getRequestDispatcher("/api//getConfig"); + // New request no environment header check + when(httpServletRequest.getRequestURI()).thenReturn("/pdp/api/getConfig"); + when(httpServletRequest.getRequestDispatcher("/api/getConfig")).thenReturn(new MockRequestDispatcher()); + when(httpServletRequest.getHeader(PDPAuthenticationFilter.AUTHENTICATION_HEADER)).thenReturn(VALIDHEADERVALUE); + authenticationFilter.doFilter(httpServletRequest, httpServletResponse, filterChain); + // verify if authorized + verify(httpServletRequest).getRequestDispatcher("/api/getConfig"); + // + // + // Requests with InValid Environment Header + // + when(httpServletRequest.getRequestURI()).thenReturn("/pdp/getConfig"); + when(httpServletRequest.getRequestDispatcher("/api//getConfig")).thenReturn(new MockRequestDispatcher()); + when(httpServletRequest.getHeader(PDPAuthenticationFilter.ENVIRONMENT_HEADER)).thenReturn("TEST"); + when(httpServletRequest.getHeader(PDPAuthenticationFilter.AUTHENTICATION_HEADER)).thenReturn(VALIDHEADERVALUE); + authenticationFilter.doFilter(httpServletRequest, httpServletResponse, filterChain); + // verify if unauthorized + verify(httpServletResponse).setStatus(HttpServletResponse.SC_UNAUTHORIZED); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/config/PDPRestInitializerTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/config/PDPRestInitializerTest.java index b2dc98ad0..8a53975d6 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/config/PDPRestInitializerTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/config/PDPRestInitializerTest.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. @@ -28,17 +30,16 @@ import org.junit.Test; import org.mockito.Mockito; public class PDPRestInitializerTest { - @Test - public void testNegativeStartup() throws ServletException { - try { - PDPRestInitializer init = new PDPRestInitializer(); - ServletContext container = Mockito.mock(ServletContext.class); - init.onStartup(container); - fail("Expecting an exception."); - } - catch (Exception ex) { - // Expecting an exception - assertTrue(true); - } - } + @Test + public void testNegativeStartup() throws ServletException { + try { + PDPRestInitializer init = new PDPRestInitializer(); + ServletContext container = Mockito.mock(ServletContext.class); + init.onStartup(container); + fail("Expecting an exception."); + } catch (Exception ex) { + // Expecting an exception + assertTrue(true); + } + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/impl/test/XACMLPdpPIPFinderFactoryTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/impl/test/XACMLPdpPIPFinderFactoryTest.java index d10d3a7be..dceadfa25 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/impl/test/XACMLPdpPIPFinderFactoryTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/impl/test/XACMLPdpPIPFinderFactoryTest.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. @@ -28,19 +30,19 @@ import com.att.research.xacml.api.pip.PIPException; import com.att.research.xacml.api.pip.PIPFinder; public class XACMLPdpPIPFinderFactoryTest { - @Test - public void testGets() throws PIPException { - // Test constructors - Properties props = new Properties(); - XACMLPdpPIPFinderFactory blankFactory = new XACMLPdpPIPFinderFactory(); - assertNotNull(blankFactory); - XACMLPdpPIPFinderFactory factory = new XACMLPdpPIPFinderFactory(props); - assertNotNull(factory); - - // Test get - PIPFinder finder = factory.getFinder(); - assertNotNull(finder); - finder = blankFactory.getFinder(props); - assertNotNull(finder); - } + @Test + public void testGets() throws PIPException { + // Test constructors + Properties props = new Properties(); + XACMLPdpPIPFinderFactory blankFactory = new XACMLPdpPIPFinderFactory(); + assertNotNull(blankFactory); + XACMLPdpPIPFinderFactory factory = new XACMLPdpPIPFinderFactory(props); + assertNotNull(factory); + + // Test get + PIPFinder finder = factory.getFinder(); + assertNotNull(finder); + finder = blankFactory.getFinder(props); + assertNotNull(finder); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/impl/test/XACMLPdpPolicyFinderFactoryTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/impl/test/XACMLPdpPolicyFinderFactoryTest.java index af2ea7271..11811ecf3 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/impl/test/XACMLPdpPolicyFinderFactoryTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/impl/test/XACMLPdpPolicyFinderFactoryTest.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. @@ -22,58 +24,53 @@ package org.onap.policy.pdp.rest.impl.test; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; - import java.io.FileInputStream; import java.io.IOException; import java.util.Properties; - import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.junit.Test; import org.onap.policy.pdp.rest.impl.XACMLPdpPolicyFinderFactory; - import com.att.research.xacml.util.XACMLProperties; public class XACMLPdpPolicyFinderFactoryTest { - private static Log LOGGER = LogFactory.getLog(XACMLPdpPolicyFinderFactoryTest.class); - - @Test - public void testDefaultConstructor() throws IOException { - - LOGGER.info("XACMLPdpPolicyFinderFactoryTest - testDefaultConstructor"); - try { - XACMLProperties.reloadProperties(); - System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME, "src/test/resources/xacml.pdp.properties"); - XACMLProperties.getProperties(); - - XACMLPdpPolicyFinderFactory finderFactory = new XACMLPdpPolicyFinderFactory(); - - finderFactory.getPolicyFinder(); - - assertTrue(true); - } catch (Exception e) { - LOGGER.error("Exception Occured"+e); - fail(); - - } - } - @Test - public void testPropertiesConstructor () { - - LOGGER.info("XACMLPdpPolicyFinderFactoryTest - testPropertiesConstructor"); - try { - Properties properties = new Properties(); - FileInputStream input = new FileInputStream("src/test/resources/xacml.pdp.properties"); - properties.load(input); - - XACMLPdpPolicyFinderFactory finderFactory = new XACMLPdpPolicyFinderFactory(properties); - - assertTrue(true); - } catch (Exception e) { - LOGGER.error("Exception Occured"+e); - fail(); - - } - - } + private static Log LOGGER = LogFactory.getLog(XACMLPdpPolicyFinderFactoryTest.class); + + @Test + public void testDefaultConstructor() throws IOException { + + LOGGER.info("XACMLPdpPolicyFinderFactoryTest - testDefaultConstructor"); + try { + XACMLProperties.reloadProperties(); + System.setProperty(XACMLProperties.XACML_PROPERTIES_NAME, "src/test/resources/xacml.pdp.properties"); + XACMLProperties.getProperties(); + + XACMLPdpPolicyFinderFactory finderFactory = new XACMLPdpPolicyFinderFactory(); + + finderFactory.getPolicyFinder(); + + assertTrue(true); + } catch (Exception e) { + LOGGER.error("Exception Occured" + e); + fail(); + } + } + + @Test + public void testPropertiesConstructor() { + + LOGGER.info("XACMLPdpPolicyFinderFactoryTest - testPropertiesConstructor"); + try { + Properties properties = new Properties(); + FileInputStream input = new FileInputStream("src/test/resources/xacml.pdp.properties"); + properties.load(input); + + XACMLPdpPolicyFinderFactory finderFactory = new XACMLPdpPolicyFinderFactory(properties); + + assertTrue(true); + } catch (Exception e) { + LOGGER.error("Exception Occured" + e); + fail(); + } + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/jmx/DummyServerContextImpl.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/jmx/DummyServerContextImpl.java index 056b73199..e1498a8dc 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/jmx/DummyServerContextImpl.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/jmx/DummyServerContextImpl.java @@ -4,6 +4,8 @@ * ================================================================================ * 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 @@ -27,7 +29,6 @@ import java.util.Enumeration; import java.util.EventListener; import java.util.Map; import java.util.Set; - import javax.servlet.Filter; import javax.servlet.FilterRegistration; import javax.servlet.RequestDispatcher; @@ -259,8 +260,8 @@ public class DummyServerContextImpl implements ServletContext { } @Override - public javax.servlet.FilterRegistration.Dynamic addFilter( - String filterName, Class<? extends Filter> filterClass) { + public javax.servlet.FilterRegistration.Dynamic addFilter(String filterName, + Class<? extends Filter> filterClass) { // TODO Auto-generated method stub return null; } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/jmx/PdpRestMBeanListenerTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/jmx/PdpRestMBeanListenerTest.java index 59e14db1e..7fcc84bb9 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/jmx/PdpRestMBeanListenerTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/jmx/PdpRestMBeanListenerTest.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. @@ -21,35 +23,30 @@ package org.onap.policy.pdp.rest.jmx; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; - import javax.servlet.ServletContextEvent; - import org.junit.Test; import org.onap.policy.common.logging.flexlogger.FlexLogger; import org.onap.policy.common.logging.flexlogger.Logger; public class PdpRestMBeanListenerTest { - private static Logger LOGGER = FlexLogger.getLogger(PdpRestMBeanListenerTest.class); - - @Test - public void test() { + private static Logger LOGGER = FlexLogger.getLogger(PdpRestMBeanListenerTest.class); + + @Test + public void test() { + + try { + PdpRestMBeanListener listener = new PdpRestMBeanListener(); + DummyServerContextImpl source = new DummyServerContextImpl(); + ServletContextEvent event = new ServletContextEvent(source); - try { - PdpRestMBeanListener listener = new PdpRestMBeanListener(); - DummyServerContextImpl source = new DummyServerContextImpl(); - ServletContextEvent event = new ServletContextEvent(source); - - listener.contextInitialized(event); - listener.contextDestroyed(event); - - assertTrue(true); - } catch (Exception e) { - LOGGER.error("Exception Occured"+e); - fail(); - - } - - } + listener.contextInitialized(event); + listener.contextDestroyed(event); + assertTrue(true); + } catch (Exception e) { + LOGGER.error("Exception Occured" + e); + fail(); + } + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/notifications/RemovedTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/notifications/RemovedTest.java index 98b073eb8..2636847e7 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/notifications/RemovedTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/notifications/RemovedTest.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. @@ -24,14 +26,14 @@ import static org.junit.Assert.assertEquals; import org.junit.Test; public class RemovedTest { - @Test - public void testRemoved() { - String testVal = "testVal"; - - Removed removed = new Removed(); - removed.setVersionNo(testVal); - assertEquals(removed.getVersionNo(), testVal); - removed.setPolicyName(testVal); - assertEquals(removed.getPolicyName(), testVal); - } + @Test + public void testRemoved() { + String testVal = "testVal"; + + Removed removed = new Removed(); + removed.setVersionNo(testVal); + assertEquals(removed.getVersionNo(), testVal); + removed.setPolicyName(testVal); + assertEquals(removed.getPolicyName(), testVal); + } } diff --git a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/notifications/test/NotificationTest.java b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/notifications/test/NotificationTest.java index a18f93275..261226527 100644 --- a/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/notifications/test/NotificationTest.java +++ b/ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/notifications/test/NotificationTest.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. @@ -20,12 +22,10 @@ package org.onap.policy.pdp.rest.notifications.test; import static org.junit.Assert.assertEquals; - import java.util.ArrayList; import java.util.Collection; import java.util.Collections; import java.util.List; - import org.junit.Test; import org.onap.policy.api.NotificationType; import org.onap.policy.pdp.rest.notifications.Notification; @@ -33,45 +33,41 @@ import org.onap.policy.pdp.rest.notifications.Removed; import org.onap.policy.pdp.rest.notifications.Updated; public class NotificationTest { - - @Test - public void test() { - List<Removed> removedPolicies = new ArrayList<>(); - List<Updated> loadedPolicies = new ArrayList<>(); - - Updated u1 = new Updated(); - Removed r1 = new Removed(); - Notification n = new Notification(); + @Test + public void test() { + List<Removed> removedPolicies = new ArrayList<>(); + List<Updated> loadedPolicies = new ArrayList<>(); + + Updated u1 = new Updated(); + Removed r1 = new Removed(); + Notification n = new Notification(); + + u1.setPolicyName("update"); + u1.setVersionNo("1"); + u1.setMatches(null); + u1.setUpdateType(null); + + assertEquals("update", u1.getPolicyName()); + assertEquals("1", u1.getVersionNo()); + assertEquals(null, u1.getMatches()); + assertEquals(null, u1.getUpdateType()); + + loadedPolicies.add(u1); + + r1.setPolicyName("removed"); + r1.setVersionNo("1"); + assertEquals(r1.getPolicyName(), "removed"); + assertEquals(r1.getVersionNo(), "1"); + + removedPolicies.add(r1); + + n.setLoadedPolicies(loadedPolicies); + n.setRemovedPolicies(removedPolicies); + n.setNotificationType(NotificationType.BOTH); - u1.setPolicyName("update"); - u1.setVersionNo("1"); - u1.setMatches(null); - u1.setUpdateType(null); - - assertEquals("update", u1.getPolicyName()); - assertEquals("1", u1.getVersionNo()); - assertEquals(null, u1.getMatches()); - assertEquals(null, u1.getUpdateType()); - - loadedPolicies.add(u1); - - r1.setPolicyName("removed"); - r1.setVersionNo("1"); - assertEquals(r1.getPolicyName(),"removed"); - assertEquals(r1.getVersionNo(),"1"); - - removedPolicies.add(r1); - - n.setLoadedPolicies(loadedPolicies); - n.setRemovedPolicies(removedPolicies); - n.setNotificationType(NotificationType.BOTH); - - assertEquals(removedPolicies, n.getRemovedPolicies()); - assertEquals(loadedPolicies, n.getLoadedPolicies()); - assertEquals(NotificationType.BOTH, n.getNotificationType()); - - - - } + assertEquals(removedPolicies, n.getRemovedPolicies()); + assertEquals(loadedPolicies, n.getLoadedPolicies()); + assertEquals(NotificationType.BOTH, n.getNotificationType()); + } } |