JUnit additions and powermock pom fixes 15/39215/2
authorbobbymander <bobby.mander@att.com>
Tue, 27 Mar 2018 17:54:17 +0000 (13:54 -0400)
committerbobbymander <bobby.mander@att.com>
Tue, 27 Mar 2018 18:16:09 +0000 (14:16 -0400)
Issue-ID: POLICY-602
Change-Id: I2484b47cc52a07413de69c1022a056fd0cf2d7d7
Signed-off-by: bobbymander <bobby.mander@att.com>
13 files changed:
ONAP-PDP-REST/pom.xml
ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/XACMLPdpServletTest.java
ONAP-PDP-REST/src/test/java/org/onap/policy/pdp/rest/api/services/BRMSRawPolicyServiceTest.java
ONAP-PDP/pom.xml
ONAP-PDP/src/test/java/org/onap/policy/xacml/pdp/ONAPPDPEngineFactoryTest.java
ONAP-PDP/src/test/java/org/onap/policy/xacml/pdp/ONAPPDPEngineTest.java [new file with mode: 0644]
ONAP-REST/pom.xml
ONAP-XACML/pom.xml
ONAP-XACML/src/test/java/org/onap/policy/xacml/test/std/pap/StdEngineFactoryTest.java
ONAP-XACML/src/test/java/org/onap/policy/xacml/test/std/pap/StdPDPItemSetChangeNotifierTest.java [new file with mode: 0644]
PolicyEngineAPI/pom.xml
PolicyEngineAPI/src/test/java/org/onap/policy/std/StdPolicyEngineTest.java
PolicyEngineUtils/src/test/java/org/onap/policy/utils/test/BackUpMonitorEntityTest.java [new file with mode: 0644]

index b559269..f800a8f 100644 (file)
                </plugins>
        </build>
        <dependencies>
+               <!-- https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito -->
+               <dependency>
+               <groupId>org.powermock</groupId>
+               <artifactId>powermock-api-mockito</artifactId>
+               <version>1.7.3</version>
+               <scope>test</scope>
+               </dependency>
+               <dependency>
+            <groupId>org.powermock</groupId>
+            <artifactId>powermock-module-junit4</artifactId>
+            <version>1.7.3</version>
+            <scope>test</scope>
+        </dependency>
+               <!-- https://mvnrepository.com/artifact/org.mockito/mockito-all -->
+               <dependency>
+                   <groupId>org.mockito</groupId>
+                   <artifactId>mockito-all</artifactId>
+                   <version>1.10.19</version>
+                   <scope>test</scope>
+               </dependency>
                <dependency>
                        <groupId>com.h2database</groupId>
                        <artifactId>h2</artifactId>
                        <version>3.1.200-oss</version>
                        <scope>test</scope>
                </dependency>
-               <dependency>
-                       <groupId>org.mockito</groupId>
-                       <artifactId>mockito-core</artifactId>
-                       <version>1.9.5</version>
-               </dependency>
                <dependency>
                        <groupId>org.springframework</groupId>
                        <artifactId>spring-mock</artifactId>
                        <artifactId>mockrunner</artifactId>
                        <version>0.3.1</version>
                </dependency>
-               <dependency>
-                       <groupId>org.powermock</groupId>
-                       <artifactId>powermock-api-mockito</artifactId>
-                       <version>1.5.6</version>
-               </dependency>
-               <dependency>
-                       <groupId>org.powermock</groupId>
-                       <artifactId>powermock-module-junit4</artifactId>
-                       <version>1.5.6</version>
-               </dependency>
                <dependency>
                        <groupId>org.springframework</groupId>
                        <artifactId>spring-core</artifactId>
index 8c7fd7e..b017bc2 100644 (file)
 
 package org.onap.policy.pdp.rest;
 
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assert.fail;
-
 import java.io.IOException;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 import java.util.Properties;
 import java.util.Random;
-
 import javax.persistence.EntityManager;
 import javax.persistence.EntityManagerFactory;
 import javax.persistence.EntityTransaction;
@@ -39,475 +35,468 @@ import javax.servlet.ServletInputStream;
 import javax.servlet.ServletOutputStream;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
-
 import org.junit.Before;
 import org.junit.Test;
+import org.junit.runner.RunWith;
 import org.mockito.Mockito;
-import org.onap.policy.common.ia.DbDAO;
 import org.onap.policy.common.ia.IntegrityAuditProperties;
 import org.onap.policy.common.im.IntegrityMonitor;
 import org.onap.policy.common.im.IntegrityMonitorException;
 import org.onap.policy.common.logging.ONAPLoggingContext;
 import org.onap.policy.common.logging.flexlogger.FlexLogger;
 import org.onap.policy.common.logging.flexlogger.Logger;
-import org.onap.policy.rest.XACMLRestProperties;
 import org.onap.policy.xacml.std.pap.StdPDPPolicy;
 import org.onap.policy.xacml.std.pap.StdPDPStatus;
 import org.powermock.api.mockito.PowerMockito;
+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;
 
-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 IntegrityMonitor im;
-       
-       private DbDAO dbDAO;
-       private String persistenceUnit;
-       private Properties properties;
-       private String resourceName;
-       private String dbDriver;
-       private String dbUrl;
-       private String dbUser;
-       private String dbPwd;
-       private String siteName;
-       private String nodeType;
-       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;
-
-    @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");
-               //properties.put("com.sun.management.jmxremote.port", "9999");
-               dbDriver = XACMLPdpServletTest.DEFAULT_DB_DRIVER;
-               dbUrl = "jdbc:h2:file:./sql/xacmlTest";
-               dbUser = XACMLPdpServletTest.DEFAULT_DB_USER;
-               dbPwd = XACMLPdpServletTest.DEFAULT_DB_PWD;
-               siteName = "SiteA";
-               nodeType = "pdp";
-               persistenceUnit = "testPdpPU";
-               resourceName = "siteA.pdp1";
-               
-               System.setProperty("com.sun.management.jmxremote.port", "9999");
-               
-               EntityManagerFactory emf = Persistence.createEntityManagerFactory(persistenceUnit, properties);
-               
-               EntityManager em = emf.createEntityManager();
-               // Start a transaction
-               EntityTransaction et = em.getTransaction();
-               
-               IntegrityMonitor im = null;
-               try {
-                       im = IntegrityMonitor.getInstance(resourceName, properties);
-               } catch (Exception e2) {
-                       // TODO Auto-generated catch block
-                       e2.printStackTrace();
-               }
-               //cleanDb(persistenceUnit, properties);
-               
-       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.rootPolicies", "test_PolicyEngine.xml");
-               System.setProperty("xacml.referencedPolicies", "test_PolicyEngine.xml");
-               System.setProperty("test_PolicyEngine.xml.file", "config_testing\\test_PolicyEngine.xml");
-               */
-               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 e1) {
-                       LOGGER.error("Exception Occured"+e1);
-               }
-               
-               try {
-                       Mockito.doNothing().when(im).startTransaction();
-               } catch (IntegrityMonitorException e) {
-                       fail();
-               }
-               Mockito.doNothing().when(im).endTransaction();
+@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 String persistenceUnit;
+  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;
+
+  @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");
+    persistenceUnit = "testPdpPU";
+    resourceName = "siteA.pdp1";
+
+    System.setProperty("com.sun.management.jmxremote.port", "9999");
+
+    EntityManagerFactory emf = Persistence.createEntityManagerFactory(persistenceUnit, properties);
+
+    EntityManager em = emf.createEntityManager();
+    // Start a transaction
+    EntityTransaction et = em.getTransaction();
+
+    IntegrityMonitor im = null;
+    try {
+      im = IntegrityMonitor.getInstance(resourceName, properties);
+    } catch (Exception e2) {
+      // TODO Auto-generated catch block
+      e2.printStackTrace();
+    }
+    // cleanDb(persistenceUnit, properties);
+
+    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.rootPolicies", "test_PolicyEngine.xml");
+     * System.setProperty("xacml.referencedPolicies", "test_PolicyEngine.xml");
+     * System.setProperty("test_PolicyEngine.xml.file", "config_testing\\test_PolicyEngine.xml");
+     */
+    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 e1) {
+      LOGGER.error("Exception Occured" + e1);
+    }
+
+    try {
+      Mockito.doNothing().when(im).startTransaction();
+    } catch (IntegrityMonitorException e) {
+      fail();
+    }
+    Mockito.doNothing().when(im).endTransaction();
+  }
+
+  @Test
+  public void testInit() {
+    LOGGER.info("XACMLPdpServletTest - testInit");
+    try {
+      pdpServlet.init(servletConfig);
+
+      assertTrue(true);
+    } catch (Exception e) {
+      LOGGER.error("Exception Occured" + e);
+      fail();
+
+    }
+
+  }
+
+  @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();
+
+      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("Exception Occured" + 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();
+
+      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("Exception Occured" + e);
+      fail();
+
     }
 
-       @Test
-    public void testInit(){
-               LOGGER.info("XACMLPdpServletTest - testInit");
-               try {   
-                       pdpServlet.init(servletConfig);
-
-                       assertTrue(true);
-               } catch (Exception e) {
-                       LOGGER.error("Exception Occured"+e);
-                       fail();
-                       
-               }
-
-       }
-
-       @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();
-
-                  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("Exception Occured"+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();
-               
-                       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("Exception Occured"+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("Exception Occured"+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){
-                       System.out.println("Unexpected exception in testDoGetNoTypeError");
-                       LOGGER.error("Exception Occured"+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){
-                       System.out.println("Unexpected exception in testDoGetConfigType");
-                       LOGGER.error("Exception Occured"+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){
-                       System.out.println("Unexpected exception in testDoGetTypeHb");
-                       LOGGER.error("Exception Occured"+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){
-                       System.out.println("Unexpected exception in testDoGetTypeStatus");
-                       LOGGER.error("Exception Occured"+e);
-                       fail();
-               }
-       }       
-    
-       @Test
-       public void testDoPost(){
-               LOGGER.info("XACMLPdpServletTest - testDoPost");
-               try{
-                       pdpServlet.init(servletConfig);
-                       pdpServlet.doPost(httpServletRequest, httpServletResponse);
-                       assertTrue(true);
-               }catch (Exception e){
-                       System.out.println("Unexpected exception in testDoPost");
-                       LOGGER.error("Exception Occured"+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){
-                       System.out.println("Unexpected exception in testDoPostToLong");
-                       LOGGER.error("Exception Occured"+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){
-                       System.out.println("Unexpected exception in testDoPostContentLengthNegative");
-                       LOGGER.error("Exception Occured"+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){
-                       System.out.println("Unexpected exception in testDoPostContentTypeNonValid");
-                       LOGGER.error("Exception Occured"+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){
-                       System.out.println("Unexpected exception in testDoPostContentTypeConfigurationError");
-                       LOGGER.error("Exception Occured"+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){
-                       System.out.println("Unexpected exception in testDoPutCacheEmpty");
-                       LOGGER.error("Exception Occured"+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){
-                       System.out.println("Unexpected exception in testDoPutConfigPolicies");
-                       LOGGER.error("Exception Occured"+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){
-                       System.out.println("Unexpected exception in testDoPutToLong");
-                       LOGGER.error("Exception Occured"+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){
-                       System.out.println("Unexpected exception in testDoPutInvalidContentType");
-                       LOGGER.error("Exception Occured"+e);
-                       fail();
-               }
-       }               
-
-       @Test
-       public void testDestroy(){
-               LOGGER.info("XACMLPdpServletTest - testDestroy");
-               
-               try{
-                       pdpServlet.init(servletConfig);
-                       pdpServlet.destroy();
-               }catch(Exception e){
-                       System.out.println("Unexpected exception in testDestroy");
-                       LOGGER.error("Exception Occured"+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("Exception Occured" + 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) {
+      System.out.println("Unexpected exception in testDoGetNoTypeError");
+      LOGGER.error("Exception Occured" + 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) {
+      System.out.println("Unexpected exception in testDoGetConfigType");
+      LOGGER.error("Exception Occured" + 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) {
+      System.out.println("Unexpected exception in testDoGetTypeHb");
+      LOGGER.error("Exception Occured" + 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) {
+      System.out.println("Unexpected exception in testDoGetTypeStatus");
+      LOGGER.error("Exception Occured" + e);
+      fail();
+    }
+  }
+
+  @Test
+  public void testDoPost() {
+    LOGGER.info("XACMLPdpServletTest - testDoPost");
+    try {
+      pdpServlet.init(servletConfig);
+      pdpServlet.doPost(httpServletRequest, httpServletResponse);
+      assertTrue(true);
+    } catch (Exception e) {
+      System.out.println("Unexpected exception in testDoPost");
+      LOGGER.error("Exception Occured" + 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) {
+      System.out.println("Unexpected exception in testDoPostToLong");
+      LOGGER.error("Exception Occured" + 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) {
+      System.out.println("Unexpected exception in testDoPostContentLengthNegative");
+      LOGGER.error("Exception Occured" + 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) {
+      System.out.println("Unexpected exception in testDoPostContentTypeNonValid");
+      LOGGER.error("Exception Occured" + 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) {
+      System.out.println("Unexpected exception in testDoPostContentTypeConfigurationError");
+      LOGGER.error("Exception Occured" + 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) {
+      System.out.println("Unexpected exception in testDoPutCacheEmpty");
+      LOGGER.error("Exception Occured" + 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) {
+      System.out.println("Unexpected exception in testDoPutConfigPolicies");
+      LOGGER.error("Exception Occured" + 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) {
+      System.out.println("Unexpected exception in testDoPutToLong");
+      LOGGER.error("Exception Occured" + 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) {
+      System.out.println("Unexpected exception in testDoPutInvalidContentType");
+      LOGGER.error("Exception Occured" + e);
+      fail();
+    }
+  }
+
+  @Test
+  public void testDestroy() {
+    LOGGER.info("XACMLPdpServletTest - testDestroy");
+
+    try {
+      pdpServlet.init(servletConfig);
+      pdpServlet.destroy();
+    } catch (Exception e) {
+      System.out.println("Unexpected exception in testDestroy");
+      LOGGER.error("Exception Occured" + e);
+      fail();
+    }
+  }
 }
index 5f20dfb..b9e9403 100644 (file)
 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.Test;
 import org.onap.policy.api.PolicyParameters;
 
 public class BRMSRawPolicyServiceTest {
-       @Test
-       public void testRaw() throws FileNotFoundException, IOException  {
-               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);
-               prop.clear();
-               
-               String systemKey = "xacml.properties";
-               String testVal = "testVal";
-               PolicyParameters testParams = new PolicyParameters();
-                               
-               // Set the system property temporarily
-               String oldProperty = System.getProperty(systemKey);
-               System.setProperty(systemKey, "xacml.pdp.properties");
-               
-               BRMSRawPolicyService service = new BRMSRawPolicyService(testVal, testVal, testParams, testVal);
-               assertEquals(false, service.getValidation());
-               assertEquals("PE300 - Data Issue:  No Rule Body given", service.getMessage());
-               
-               // Restore the original system property
-               if (oldProperty != null) {
-                       System.setProperty(systemKey, oldProperty);
-               }
-               else {
-                       System.clearProperty(systemKey);
-               } 
-       } 
+  @Test
+  public void testRaw() throws FileNotFoundException, IOException {
+    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);
+    prop.clear();
+
+    String systemKey = "xacml.properties";
+    String testVal = "testVal";
+    PolicyParameters testParams = new PolicyParameters();
+
+    // Set the system property temporarily
+    String oldProperty = System.getProperty(systemKey);
+    System.setProperty(systemKey, "xacml.pdp.properties");
+
+    BRMSRawPolicyService service = new BRMSRawPolicyService(testVal, testVal, testParams, testVal);
+    assertEquals(false, service.getValidation());
+    assertEquals("PE300 - Data Issue:  No Rule Body given", service.getMessage());
+
+    // Restore the original system property
+    if (oldProperty != null) {
+      System.setProperty(systemKey, oldProperty);
+    } else {
+      System.clearProperty(systemKey);
+    }
+  }
 }
index 02057bd..a2cbc8b 100644 (file)
                <version>1.2.0-SNAPSHOT</version>
        </parent>
        <dependencies>
+               <dependency>
+                       <groupId>org.mockito</groupId>
+                       <artifactId>mockito-core</artifactId>
+                       <version>1.10.19</version>
+                       <scope>test</scope>
+               </dependency>  
+               <!-- https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito -->
+               <dependency>
+               <groupId>org.powermock</groupId>
+               <artifactId>powermock-api-mockito</artifactId>
+               <version>1.7.3</version>
+               <scope>test</scope>
+               </dependency>
+               <dependency>
+            <groupId>org.powermock</groupId>
+            <artifactId>powermock-module-junit4</artifactId>
+            <version>1.7.3</version>
+            <scope>test</scope>
+        </dependency>
                <dependency>
                        <groupId>org.onap.policy.engine</groupId>
                        <version>${project.version}</version>
                <version>${project.version}</version>
                <scope>test</scope>
        </dependency>
+       <dependency>
+                       <groupId>com.mockrunner</groupId>
+                       <artifactId>mockrunner</artifactId>
+                       <version>0.3.1</version>
+               </dependency>
        </dependencies>
 
 </project>
index 0c9d246..1bde7dd 100644 (file)
@@ -2,7 +2,7 @@
  * ============LICENSE_START=======================================================
  * ONAP-PDP
  * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -21,32 +21,66 @@ package org.onap.policy.xacml.pdp;
 
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
-
 import java.util.Properties;
-
 import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.mockito.Mockito;
+import org.powermock.api.mockito.PowerMockito;
+import org.powermock.core.classloader.annotations.PrepareForTest;
+import org.powermock.modules.junit4.PowerMockRunner;
+import com.att.research.xacml.util.FactoryException;
+import com.att.research.xacml.util.FactoryFinder;
+import com.att.research.xacmlatt.pdp.eval.EvaluationContextFactory;
 
+@RunWith(PowerMockRunner.class)
 public class ONAPPDPEngineFactoryTest {
+  @Test
+  public final void testNewEngine() {
+    ONAPPDPEngineFactory pdpEngine = new ONAPPDPEngineFactory();
+    try {
+      assertTrue(pdpEngine.newEngine() != null);
+    } catch (Exception e) {
+      fail("operation failed, e=" + e);
+    }
+  }
+
+  @Test
+  public final void testNewEngineProperties() {
+    ONAPPDPEngineFactory pdpEngine = new ONAPPDPEngineFactory();
+    Properties properties = new Properties();
+    try {
+      assertTrue(pdpEngine.newEngine(properties) != null);
+    } catch (Exception e) {
+      fail("operation failed, e=" + e);
+    }
+  }
+
+  @PrepareForTest({EvaluationContextFactory.class, FactoryFinder.class})
+  @Test(expected = FactoryException.class)
+  public void negTestEngine() throws FactoryException {
+    // Setup test data
+    PowerMockito.mockStatic(FactoryFinder.class);
+    PowerMockito.when(FactoryFinder.find(Mockito.any(), Mockito.any(), Mockito.any()))
+        .thenReturn(null);
 
-       @Test
-       public final void testNewEngine() {
-               ONAPPDPEngineFactory pdpEngine = new ONAPPDPEngineFactory();
-               try{
-                       assertTrue(pdpEngine.newEngine() != null);
-               }catch (Exception e) {
-                       fail("operation failed, e="+e);
-               }
+    // Negative test factory
+    ONAPPDPEngineFactory factory = new ONAPPDPEngineFactory();
+    factory.newEngine();
+    fail("Expecting an exception.");
+  }
 
-       }
+  @PrepareForTest({EvaluationContextFactory.class, FactoryFinder.class})
+  @Test(expected = FactoryException.class)
+  public void negTestEngine2() throws FactoryException {
+    // Setup test data
+    PowerMockito.mockStatic(FactoryFinder.class);
+    PowerMockito.when(FactoryFinder.find(Mockito.any(), Mockito.any(), Mockito.any()))
+        .thenReturn(null);
 
-       @Test
-       public final void testNewEngineProperties() {
-               ONAPPDPEngineFactory pdpEngine = new ONAPPDPEngineFactory();
-               Properties properties = new Properties();
-               try{
-                       assertTrue(pdpEngine.newEngine(properties) != null);
-               }catch (Exception e) {
-                       fail("operation failed, e="+e);
-               }
-       }
+    // Negative test factory
+    ONAPPDPEngineFactory factory = new ONAPPDPEngineFactory();
+    Properties properties = new Properties();
+    factory.newEngine(properties);
+    fail("Expecting an exception.");
+  }
 }
diff --git a/ONAP-PDP/src/test/java/org/onap/policy/xacml/pdp/ONAPPDPEngineTest.java b/ONAP-PDP/src/test/java/org/onap/policy/xacml/pdp/ONAPPDPEngineTest.java
new file mode 100644 (file)
index 0000000..6eb6e4c
--- /dev/null
@@ -0,0 +1,45 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP-PDP
+ * ================================================================================
+ * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * 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.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.policy.xacml.pdp;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import org.junit.Test;
+import org.mockito.Mockito;
+import com.att.research.xacml.api.Request;
+import com.att.research.xacml.api.Response;
+import com.att.research.xacml.api.pdp.PDPException;
+import com.att.research.xacml.api.pdp.ScopeResolver;
+import com.att.research.xacmlatt.pdp.eval.EvaluationContextFactory;
+
+public class ONAPPDPEngineTest {
+  @Test
+  public void testEngine() throws PDPException {
+    EvaluationContextFactory factory = Mockito.mock(EvaluationContextFactory.class);
+    ScopeResolver resolver = Mockito.mock(ScopeResolver.class);
+    ONAPPDPEngine engine = new ONAPPDPEngine(factory, resolver);
+    assertNotNull(engine);
+
+    Request pepRequest = Mockito.mock(Request.class);
+    Response response = engine.decide(pepRequest);
+    assertEquals(1, response.getResults().size());
+  }
+}
index 5111d51..920ef21 100644 (file)
        Apache Ivy version: 2.0.0-beta1 20071206070608 -->
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
-
        <modelVersion>4.0.0</modelVersion>
-
        <parent>
                <groupId>org.onap.policy.engine</groupId>
                <artifactId>PolicyEngineSuite</artifactId>
                <version>1.2.0-SNAPSHOT</version>
        </parent>
-
        <artifactId>ONAP-REST</artifactId>
-
        <description>ONAP REST</description>
-
        <packaging>jar</packaging>
-
        <dependencies>
            <!-- https://mvnrepository.com/artifact/org.yaml/snakeyaml -->
                <dependency>
                    <groupId>org.yaml</groupId>
                    <artifactId>snakeyaml</artifactId>
                    <version>1.16</version>
+               </dependency>
+                       <!-- https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito -->
+               <dependency>
+               <groupId>org.powermock</groupId>
+               <artifactId>powermock-api-mockito</artifactId>
+               <version>1.7.3</version>
+               <scope>test</scope>
+               </dependency>
+               <dependency>
+            <groupId>org.powermock</groupId>
+            <artifactId>powermock-module-junit4</artifactId>
+            <version>1.7.3</version>
+            <scope>test</scope>
+        </dependency>
+               <!-- https://mvnrepository.com/artifact/org.mockito/mockito-all -->
+               <dependency>
+                   <groupId>org.mockito</groupId>
+                   <artifactId>mockito-all</artifactId>
+                   <version>1.10.19</version>
+                   <scope>test</scope>
                </dependency>
                <dependency>
                        <groupId>com.h2database</groupId>
                        <version>4.11</version>
                        <scope>test</scope>
                </dependency>
-               <dependency>
-                       <groupId>org.mockito</groupId>
-                       <artifactId>mockito-core</artifactId>
-                       <version>1.9.5</version>
-               </dependency>
                <dependency>
                        <groupId>org.springframework</groupId>
                        <artifactId>spring-mock</artifactId>
                        <groupId>org.apache.tomcat</groupId>
                        <artifactId>tomcat-dbcp</artifactId>
                        <version>8.5.9</version>
-               </dependency>
-               <dependency>
-               <groupId>org.powermock</groupId>
-               <artifactId>powermock-module-junit4-common</artifactId>
-               <version>1.6.4</version>
-               </dependency>
-               
+               </dependency>           
        </dependencies>
-
        <properties>
                <springframework.version>4.3.3.RELEASE</springframework.version>
                <hibernate.version>4.3.10.Final</hibernate.version>
index b6f12c0..8bfa06b 100644 (file)
        <artifactId>ONAP-XACML</artifactId>
        <packaging>jar</packaging>
        <dependencies>
+               <!-- https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito -->
+               <dependency>
+               <groupId>org.powermock</groupId>
+               <artifactId>powermock-api-mockito</artifactId>
+               <version>1.7.3</version>
+               <scope>test</scope>
+               </dependency>
+               <dependency>
+            <groupId>org.powermock</groupId>
+            <artifactId>powermock-module-junit4</artifactId>
+            <version>1.7.3</version>
+            <scope>test</scope>
+        </dependency>
+               <dependency>
+                       <groupId>org.mockito</groupId>
+                       <artifactId>mockito-core</artifactId>
+                       <version>1.10.19</version>
+                       <scope>test</scope>
+               </dependency>  
                <dependency>
                        <groupId>org.onap.policy.engine</groupId>
                        <version>${project.version}</version>
                        <version>4.11</version>
                        <scope>test</scope>
                </dependency> 
-               <dependency>
-                       <groupId>org.mockito</groupId>
-                       <artifactId>mockito-core</artifactId>
-                       <version>2.7.22</version>
-               </dependency>  
                <dependency>
                        <groupId>org.springframework</groupId>
                        <artifactId>spring-mock</artifactId>
index 3fa4955..500136f 100644 (file)
@@ -2,7 +2,7 @@
  * ============LICENSE_START=======================================================
  * ONAP-XACML
  * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2017-2018 AT&T Intellectual Property. All rights reserved.
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
 package org.onap.policy.xacml.test.std.pap;
 
 import static org.junit.Assert.assertTrue;
-
+import static org.junit.Assert.fail;
 import java.io.IOException;
 import java.util.Properties;
-
 import org.junit.Test;
 import org.onap.policy.xacml.std.pap.StdEngineFactory;
-
 import com.att.research.xacml.api.pap.PAPException;
+import com.att.research.xacml.std.pap.StdEngine;
 import com.att.research.xacml.util.FactoryException;
 
 public class StdEngineFactoryTest {
+  @Test
+  public void testStdEngineFactory() throws FactoryException, PAPException, IOException {
+    StdEngineFactory stdFactory = new StdEngineFactory();
+    System.setProperty("xacml.pap.pdps", "src/test/resources/pdps");
+    assertTrue(stdFactory.newEngine() != null);
+    Properties properties = new Properties();
+    properties.setProperty("xacml.pap.pdps", "src/test/resources/pdps");
+    assertTrue(stdFactory.newEngine(properties) != null);
+
+    StdEngineFactory stdFactoryNew = new StdEngineFactory();
+    System.setProperty("xacml.pap.pdps", "src/test/resources/pdpstest");
+    assertTrue(stdFactoryNew.newEngine() != null);
+  }
+
+  @Test
+  public void testNegativeCase() throws FactoryException, PAPException {
+    // Setup test data
+    Properties props = new Properties();
+    props.setProperty(StdEngine.PROP_PAP_REPO, "/tmp");
 
+    // Set the system property temporarily
+    String systemKey = StdEngine.PROP_PAP_REPO;
+    String oldProperty = System.getProperty(systemKey);
+    System.setProperty(systemKey, "/tmp");
 
-       @Test
-       public void testStdEngineFactory() throws FactoryException, PAPException, IOException{
-               
-               StdEngineFactory stdFactory = new StdEngineFactory();
-               System.setProperty("xacml.pap.pdps", "src/test/resources/pdps");
-               assertTrue(stdFactory.newEngine() != null);
-               Properties properties = new Properties();
-               properties.setProperty("xacml.pap.pdps", "src/test/resources/pdps");
-               assertTrue(stdFactory.newEngine(properties) != null);
-               
-               StdEngineFactory stdFactoryNew = new StdEngineFactory();
-               System.setProperty("xacml.pap.pdps", "src/test/resources/pdpstest");
-               assertTrue(stdFactoryNew.newEngine() != null);
+    // Test factory failure cases
+    try {
+      StdEngineFactory factory = new StdEngineFactory();
+      factory.newEngine();
+      factory.newEngine(props);
+    } catch (Exception ex) {
+      fail("Not expecting any exceptions: " + ex);
+    }
 
-       }
+    // Restore the original system property
+    if (oldProperty != null) {
+      System.setProperty(systemKey, oldProperty);
+    } else {
+      System.clearProperty(systemKey);
+    }
+  }
 }
diff --git a/ONAP-XACML/src/test/java/org/onap/policy/xacml/test/std/pap/StdPDPItemSetChangeNotifierTest.java b/ONAP-XACML/src/test/java/org/onap/policy/xacml/test/std/pap/StdPDPItemSetChangeNotifierTest.java
new file mode 100644 (file)
index 0000000..1be34ee
--- /dev/null
@@ -0,0 +1,43 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP-XACML
+ * ================================================================================
+ * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * 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.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.policy.xacml.test.std.pap;
+
+import org.junit.Test;
+import org.mockito.Mockito;
+import org.onap.policy.xacml.api.pap.OnapPDP;
+import org.onap.policy.xacml.api.pap.OnapPDPGroup;
+import org.onap.policy.xacml.std.pap.StdPDPItemSetChangeNotifier;
+import org.onap.policy.xacml.std.pap.StdPDPItemSetChangeNotifier.StdItemSetChangeListener;
+
+public class StdPDPItemSetChangeNotifierTest {
+  @Test
+  public void testNotifier() {
+    StdPDPItemSetChangeNotifier notifier = new StdPDPItemSetChangeNotifier();
+    StdItemSetChangeListener listener = Mockito.mock(StdItemSetChangeListener.class);
+    notifier.addItemSetChangeListener(listener);
+    notifier.removeItemSetChangeListener(listener);
+    notifier.fireChanged();
+    OnapPDP pdp = Mockito.mock(OnapPDP.class);
+    notifier.firePDPChanged(pdp);
+    OnapPDPGroup group = Mockito.mock(OnapPDPGroup.class);
+    notifier.firePDPGroupChanged(group);
+  }
+}
index be3700e..6ffef75 100644 (file)
        
        <artifactId>PolicyEngineAPI</artifactId>
        <dependencies>
+               <!-- https://mvnrepository.com/artifact/org.powermock/powermock-api-mockito -->
+               <dependency>
+               <groupId>org.powermock</groupId>
+               <artifactId>powermock-api-mockito</artifactId>
+               <version>1.7.3</version>
+               <scope>test</scope>
+               </dependency>
+               <dependency>
+            <groupId>org.powermock</groupId>
+            <artifactId>powermock-module-junit4</artifactId>
+            <version>1.7.3</version>
+            <scope>test</scope>
+        </dependency>
+               <!-- https://mvnrepository.com/artifact/org.mockito/mockito-all -->
+               <dependency>
+                   <groupId>org.mockito</groupId>
+                   <artifactId>mockito-all</artifactId>
+                   <version>1.10.19</version>
+                   <scope>test</scope>
+               </dependency>
                <dependency>
                        <groupId>com.fasterxml.jackson.core</groupId>
                        <artifactId>jackson-databind</artifactId>
                                </exclusion>
                        </exclusions>
                </dependency>
-               <!-- https://mvnrepository.com/artifact/org.mockito/mockito-all -->
-               <dependency>
-                   <groupId>org.mockito</groupId>
-                   <artifactId>mockito-all</artifactId>
-                   <version>1.10.19</version>
-               </dependency>
        </dependencies>
        <build>
                <plugins>
index 1218f19..4ede028 100644 (file)
@@ -22,8 +22,8 @@ package org.onap.policy.std;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
-import static org.mockito.ArgumentMatchers.any;
-import static org.mockito.ArgumentMatchers.eq;
+import static org.mockito.Matchers.any;
+import static org.mockito.Matchers.eq;
 import static org.mockito.Mockito.doReturn;
 import static org.mockito.Mockito.doThrow;
 import static org.mockito.Mockito.spy;
@@ -72,7 +72,6 @@ import org.junit.Test;
 import org.junit.rules.TemporaryFolder;
 import org.junit.runner.RunWith;
 import org.mockito.Mockito;
-import org.mockito.junit.MockitoJUnitRunner;
 import org.onap.policy.api.ConfigRequestParameters;
 import org.onap.policy.api.DecisionRequestParameters;
 import org.onap.policy.api.DecisionResponse;
@@ -102,826 +101,887 @@ import org.onap.policy.api.PushPolicyParameters;
 import org.onap.policy.models.APIDictionaryResponse;
 import org.onap.policy.models.APIPolicyConfigResponse;
 import org.onap.policy.std.utils.PolicyConfigConstants;
+import org.powermock.modules.junit4.PowerMockRunner;
 import org.springframework.http.HttpMethod;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 import org.springframework.web.client.HttpClientErrorException;
 import org.springframework.web.client.RestClientException;
 
-@RunWith(MockitoJUnitRunner.class)
+@RunWith(PowerMockRunner.class)
 public class StdPolicyEngineTest {
 
-    private static final String ONAP_NAME_VAL = "ONAP_NAME";
-    private static final String POLICY_VERSION = "1.0.0";
-    private static final String POLICY_NAME = "ONAP";
-    private static final String COMMENTS = "";
-    private static final UUID REQUEST_UUID = UUID.randomUUID();
-    private static final String SERVER_NAME = "localhost.com";
-    private static final String PDP_PROP_VALUE = "http://localhost:8092/pdp/ , test, test";
-    private static final String PDP_PROP_VALUE_1 = "https://localhost:8091/pdp/ , onap, onap";
-    private static final String JSON_CONFIGURATION = "{\"name\":\"value\"}";
-    private static final String XML_CONFIGURATION =
-            "<map><entry><string>name</string><string>value</string></entry></map>";
-
-    @Rule
-    public TemporaryFolder temporaryFolder = new TemporaryFolder();
-
-    private static final String CONFIG_PROPERTIES_FILE = "config_pass.properties";
-    private static final String INVALID_CONFIG_PROPERTY_FILE = "config_fail.properties";
-
-    @Test
-    public void testStdPolicyEngineInitialize_noException() throws Exception {
-        final File file = temporaryFolder.newFile(CONFIG_PROPERTIES_FILE);
-
-        creatPropertyFile(file, getDefaultProperties());
-
-        final StdPolicyEngine policyEngine = new StdPolicyEngine(file.toString(), (String) null);
-        policyEngine.setScheme(NotificationScheme.MANUAL_NOTIFICATIONS);
-        assertEquals("TEST", StdPolicyEngine.getEnvironment());
-        assertEquals("http://localhost:8092/pdp/", StdPolicyEngine.getPDPURL());
-        assertEquals(Arrays.asList(UEB, DMAAP), policyEngine.getNotificationType());
-        assertEquals(Arrays.asList(SERVER_NAME, SERVER_NAME), policyEngine.getNotificationURLList());
-    }
-    
-    @Test
-    public void testStdPolicyEngineWithPropertiesInitialize_noException() throws Exception {
-        final StdPolicyEngine policyEngine = new StdPolicyEngine(getDefaultProperties(), (String) null);
-        policyEngine.setScheme(NotificationScheme.MANUAL_NOTIFICATIONS);
-        assertEquals("TEST", StdPolicyEngine.getEnvironment());
-        assertEquals("http://localhost:8092/pdp/", StdPolicyEngine.getPDPURL());
-        assertEquals(Arrays.asList(UEB, DMAAP), policyEngine.getNotificationType());
-        assertEquals(Arrays.asList(SERVER_NAME, SERVER_NAME), policyEngine.getNotificationURLList());
-    }
-
-    @Test
-    public void testStdPolicyEngineInitializeWithSingleServerName_noException() throws Exception {
-        final File file = temporaryFolder.newFile(CONFIG_PROPERTIES_FILE);
-
-        final Properties properties = new Properties();
-        properties.setProperty(PDP_URL_PROP_NAME, PDP_PROP_VALUE);
-        properties.setProperty(CLIENT_ID_PROP_NAME, "test");
-        properties.setProperty(CLIENT_KEY_PROP_NAME, "test");
-        properties.setProperty(NOTIFICATION_TYPE_PROP_NAME, UEB);
-        properties.setProperty(NOTIFICATION_SERVERS_PROP_NAME, SERVER_NAME);
-        properties.setProperty(NOTIFICATION_TOPIC_PROP_NAME, "test");
-        properties.setProperty(ENVIRONMENT_PROP_NAME, "TEST");
-        creatPropertyFile(file, properties);
-
-        final StdPolicyEngine policyEngine = new StdPolicyEngine(file.toString(), (String) null);
-        policyEngine.setScheme(NotificationScheme.MANUAL_NOTIFICATIONS);
-        assertEquals(Arrays.asList(SERVER_NAME), policyEngine.getNotificationURLList());
-    }
-
-    @Test
-    public void testStdPolicyEngineInitializeWithSingleNotificationType_noException() throws Exception {
-        final File file = temporaryFolder.newFile(CONFIG_PROPERTIES_FILE);
-
-        final Properties properties = new Properties();
-        properties.setProperty(PDP_URL_PROP_NAME, PDP_PROP_VALUE);
-        properties.setProperty(CLIENT_ID_PROP_NAME, "test");
-        properties.setProperty(CLIENT_KEY_PROP_NAME, "test");
-        properties.setProperty(NOTIFICATION_TYPE_PROP_NAME, UEB);
-        properties.setProperty(NOTIFICATION_SERVERS_PROP_NAME, SERVER_NAME);
-        properties.setProperty(NOTIFICATION_TOPIC_PROP_NAME, "test");
-        properties.setProperty(ENVIRONMENT_PROP_NAME, "TEST");
-        creatPropertyFile(file, properties);
-
-        final StdPolicyEngine policyEngine = new StdPolicyEngine(file.toString(), (String) null);
-        policyEngine.setScheme(NotificationScheme.MANUAL_NOTIFICATIONS);
-        assertEquals(Arrays.asList(UEB), policyEngine.getNotificationType());
-    }
-
-    @Test(expected = PolicyEngineException.class)
-    public void testStdPolicyEngineInitialize_InvalidPropertyFile_Exception() throws PolicyEngineException {
-        new StdPolicyEngine("Invalid.properties", (String) null);
-    }
-
-    @Test(expected = PolicyEngineException.class)
-    public void testStdPolicyEngineInitialize_InvalidPropertyFileWithExt_Exception() throws Exception {
-        final File emptyFile = temporaryFolder.newFile("EmptyFile.txt");
-        new StdPolicyEngine(emptyFile.toString(), (String) null);
-    }
-
-    @Test(expected = PolicyEngineException.class)
-    public void testStdPolicyEngineInitialize_NullArguments_Exception() throws Exception {
-        new StdPolicyEngine((String)null, (String) null);
-    }
-
-    @Test(expected = PolicyEngineException.class)
-    public void testStdPolicyEngineWithPropertiesInitialize_NullArguments_Exception() throws Exception {
-        new StdPolicyEngine((Properties)null, (String) null);
-    }
-
-    @Test(expected = PolicyEngineException.class)
-    public void testStdPolicyEngineInitialize_PropertyFileMissingMandatoryProperties_Exception() throws Exception {
-        final File file = temporaryFolder.newFile(INVALID_CONFIG_PROPERTY_FILE);
-        final Properties properties = new Properties();
-        properties.setProperty(PDP_URL_PROP_NAME, PDP_PROP_VALUE);
-        creatPropertyFile(file, properties);
-
-        new StdPolicyEngine(file.toString(), (String) null);
-    }
-
-    @Test
-    public void testStdPolicyEngineInitialize_MultiplePdp_noException() throws Exception {
-        final File file = temporaryFolder.newFile(CONFIG_PROPERTIES_FILE);
-
-        final Properties properties = new Properties();
-        properties.setProperty(PDP_URL_PROP_NAME, PDP_PROP_VALUE + PolicyConfigConstants.SEMICOLLON + PDP_PROP_VALUE_1);
-        properties.setProperty(CLIENT_ID_PROP_NAME, "test");
-        properties.setProperty(CLIENT_KEY_PROP_NAME, "test");
-        properties.setProperty(NOTIFICATION_TYPE_PROP_NAME, UEB + COMMA + DMAAP);
-        properties.setProperty(NOTIFICATION_SERVERS_PROP_NAME, SERVER_NAME + COMMA + SERVER_NAME);
-        properties.setProperty(NOTIFICATION_TOPIC_PROP_NAME, "test");
-        properties.setProperty(ENVIRONMENT_PROP_NAME, "TEST");
-        creatPropertyFile(file, properties);
-
-        final StdPolicyEngine policyEngine = new StdPolicyEngine(file.toString(), (String) null);
-        policyEngine.setScheme(NotificationScheme.MANUAL_NOTIFICATIONS);
-        assertEquals("http://localhost:8092/pdp/", StdPolicyEngine.getPDPURL());
-        StdPolicyEngine.rotatePDPList();
-        assertEquals("https://localhost:8091/pdp/", StdPolicyEngine.getPDPURL());
-        assertEquals(Arrays.asList(UEB, DMAAP), policyEngine.getNotificationType());
-        assertEquals(Arrays.asList(SERVER_NAME, SERVER_NAME), policyEngine.getNotificationURLList());
-    }
-
-    @Test(expected = PolicyEngineException.class)
-    public void testStdPolicyEngineInitialize_NoPDP_noException() throws Exception {
-        final File file = temporaryFolder.newFile(CONFIG_PROPERTIES_FILE);
-
-        final Properties properties = new Properties();
-        properties.setProperty(CLIENT_ID_PROP_NAME, "test");
-        properties.setProperty(CLIENT_KEY_PROP_NAME, "test");
-        properties.setProperty(NOTIFICATION_TYPE_PROP_NAME, UEB + COMMA + DMAAP);
-        properties.setProperty(NOTIFICATION_SERVERS_PROP_NAME, SERVER_NAME + COMMA + SERVER_NAME);
-        properties.setProperty(NOTIFICATION_TOPIC_PROP_NAME, "test");
-        properties.setProperty(ENVIRONMENT_PROP_NAME, "TEST");
-        creatPropertyFile(file, properties);
-
-        new StdPolicyEngine(file.toString(), (String) null);
-    }
-
-    @Test
-    public void testStdPolicyEngineInitializeNotificationTypeDMMAP_noException() throws Exception {
-        final File file = temporaryFolder.newFile(CONFIG_PROPERTIES_FILE);
-
-        final Properties properties = new Properties();
-        properties.setProperty(PDP_URL_PROP_NAME, PDP_PROP_VALUE);
-        properties.setProperty(CLIENT_ID_PROP_NAME, "test");
-        properties.setProperty(CLIENT_KEY_PROP_NAME, "test");
-        properties.setProperty(NOTIFICATION_TYPE_PROP_NAME, DMAAP);
-        properties.setProperty(NOTIFICATION_SERVERS_PROP_NAME, SERVER_NAME + COMMA + SERVER_NAME);
-        properties.setProperty(NOTIFICATION_TOPIC_PROP_NAME, "test");
-        properties.setProperty(ENVIRONMENT_PROP_NAME, "TEST");
-        creatPropertyFile(file, properties);
-
-        final StdPolicyEngine policyEngine = new StdPolicyEngine(file.toString(), (String) null);
-        policyEngine.setScheme(NotificationScheme.MANUAL_NOTIFICATIONS);
-
-        assertEquals(Arrays.asList(DMAAP), policyEngine.getNotificationType());
-
-    }
-
-    @Test
-    public void testStdPolicyEngineSendEvent_noException() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
-        doReturn(new ResponseEntity<>(getStdPolicyResponse(), HttpStatus.ACCEPTED)).when(spyPolicyEngine)
-                .callNewPDP(eq(SEND_EVENT_RESOURCE_NAME), any(), any(), any());
-
-        final Collection<PolicyResponse> actualPolicyResponses =
-                spyPolicyEngine.sendEvent(Collections.emptyMap(), REQUEST_UUID);
-
-        assertEquals(1, actualPolicyResponses.size());
-
-    }
-
-    @Test(expected = PolicyEventException.class)
-    public void testStdPolicyEngineSendEvent_NullEventRequestParameters_Exception() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
-        spyPolicyEngine.sendEvent((EventRequestParameters) null);
-    }
-
-    @Test(expected = PolicyEventException.class)
-    public void testStdPolicyEngineSendEvent_EventRequestParameters_CallPDPThrow401Exception_Exception()
-            throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
-        Mockito.doThrow(new RuntimeException(new RestClientException("Error 401"))).when(spyPolicyEngine)
-                .callNewPDP(any(), any(), any(), any());
+  private static final String ONAP_NAME_VAL = "ONAP_NAME";
+  private static final String POLICY_VERSION = "1.0.0";
+  private static final String POLICY_NAME = "ONAP";
+  private static final String COMMENTS = "";
+  private static final UUID REQUEST_UUID = UUID.randomUUID();
+  private static final String SERVER_NAME = "localhost.com";
+  private static final String PDP_PROP_VALUE = "http://localhost:8092/pdp/ , test, test";
+  private static final String PDP_PROP_VALUE_1 = "https://localhost:8091/pdp/ , onap, onap";
+  private static final String JSON_CONFIGURATION = "{\"name\":\"value\"}";
+  private static final String XML_CONFIGURATION =
+      "<map><entry><string>name</string><string>value</string></entry></map>";
+
+  @Rule
+  public TemporaryFolder temporaryFolder = new TemporaryFolder();
+
+  private static final String CONFIG_PROPERTIES_FILE = "config_pass.properties";
+  private static final String INVALID_CONFIG_PROPERTY_FILE = "config_fail.properties";
+
+  @Test
+  public void testStdPolicyEngineInitialize_noException() throws Exception {
+    final File file = temporaryFolder.newFile(CONFIG_PROPERTIES_FILE);
+
+    creatPropertyFile(file, getDefaultProperties());
+
+    final StdPolicyEngine policyEngine = new StdPolicyEngine(file.toString(), (String) null);
+    policyEngine.setScheme(NotificationScheme.MANUAL_NOTIFICATIONS);
+    assertEquals("TEST", StdPolicyEngine.getEnvironment());
+    assertEquals("http://localhost:8092/pdp/", StdPolicyEngine.getPDPURL());
+    assertEquals(Arrays.asList(UEB, DMAAP), policyEngine.getNotificationType());
+    assertEquals(Arrays.asList(SERVER_NAME, SERVER_NAME), policyEngine.getNotificationURLList());
+  }
+
+  @Test
+  public void testStdPolicyEngineWithPropertiesInitialize_noException() throws Exception {
+    final StdPolicyEngine policyEngine = new StdPolicyEngine(getDefaultProperties(), (String) null);
+    policyEngine.setScheme(NotificationScheme.MANUAL_NOTIFICATIONS);
+    assertEquals("TEST", StdPolicyEngine.getEnvironment());
+    assertEquals("http://localhost:8092/pdp/", StdPolicyEngine.getPDPURL());
+    assertEquals(Arrays.asList(UEB, DMAAP), policyEngine.getNotificationType());
+    assertEquals(Arrays.asList(SERVER_NAME, SERVER_NAME), policyEngine.getNotificationURLList());
+  }
+
+  @Test
+  public void testStdPolicyEngineInitializeWithSingleServerName_noException() throws Exception {
+    final File file = temporaryFolder.newFile(CONFIG_PROPERTIES_FILE);
+
+    final Properties properties = new Properties();
+    properties.setProperty(PDP_URL_PROP_NAME, PDP_PROP_VALUE);
+    properties.setProperty(CLIENT_ID_PROP_NAME, "test");
+    properties.setProperty(CLIENT_KEY_PROP_NAME, "test");
+    properties.setProperty(NOTIFICATION_TYPE_PROP_NAME, UEB);
+    properties.setProperty(NOTIFICATION_SERVERS_PROP_NAME, SERVER_NAME);
+    properties.setProperty(NOTIFICATION_TOPIC_PROP_NAME, "test");
+    properties.setProperty(ENVIRONMENT_PROP_NAME, "TEST");
+    creatPropertyFile(file, properties);
+
+    final StdPolicyEngine policyEngine = new StdPolicyEngine(file.toString(), (String) null);
+    policyEngine.setScheme(NotificationScheme.MANUAL_NOTIFICATIONS);
+    assertEquals(Arrays.asList(SERVER_NAME), policyEngine.getNotificationURLList());
+  }
+
+  @Test
+  public void testStdPolicyEngineInitializeWithSingleNotificationType_noException()
+      throws Exception {
+    final File file = temporaryFolder.newFile(CONFIG_PROPERTIES_FILE);
+
+    final Properties properties = new Properties();
+    properties.setProperty(PDP_URL_PROP_NAME, PDP_PROP_VALUE);
+    properties.setProperty(CLIENT_ID_PROP_NAME, "test");
+    properties.setProperty(CLIENT_KEY_PROP_NAME, "test");
+    properties.setProperty(NOTIFICATION_TYPE_PROP_NAME, UEB);
+    properties.setProperty(NOTIFICATION_SERVERS_PROP_NAME, SERVER_NAME);
+    properties.setProperty(NOTIFICATION_TOPIC_PROP_NAME, "test");
+    properties.setProperty(ENVIRONMENT_PROP_NAME, "TEST");
+    creatPropertyFile(file, properties);
+
+    final StdPolicyEngine policyEngine = new StdPolicyEngine(file.toString(), (String) null);
+    policyEngine.setScheme(NotificationScheme.MANUAL_NOTIFICATIONS);
+    assertEquals(Arrays.asList(UEB), policyEngine.getNotificationType());
+  }
+
+  @Test(expected = PolicyEngineException.class)
+  public void testStdPolicyEngineInitialize_InvalidPropertyFile_Exception()
+      throws PolicyEngineException {
+    new StdPolicyEngine("Invalid.properties", (String) null);
+  }
+
+  @Test(expected = PolicyEngineException.class)
+  public void testStdPolicyEngineInitialize_InvalidPropertyFileWithExt_Exception()
+      throws Exception {
+    final File emptyFile = temporaryFolder.newFile("EmptyFile.txt");
+    new StdPolicyEngine(emptyFile.toString(), (String) null);
+  }
+
+  @Test(expected = PolicyEngineException.class)
+  public void testStdPolicyEngineInitialize_NullArguments_Exception() throws Exception {
+    new StdPolicyEngine((String) null, (String) null);
+  }
+
+  @Test(expected = PolicyEngineException.class)
+  public void testStdPolicyEngineWithPropertiesInitialize_NullArguments_Exception()
+      throws Exception {
+    new StdPolicyEngine((Properties) null, (String) null);
+  }
+
+  @Test(expected = PolicyEngineException.class)
+  public void testStdPolicyEngineInitialize_PropertyFileMissingMandatoryProperties_Exception()
+      throws Exception {
+    final File file = temporaryFolder.newFile(INVALID_CONFIG_PROPERTY_FILE);
+    final Properties properties = new Properties();
+    properties.setProperty(PDP_URL_PROP_NAME, PDP_PROP_VALUE);
+    creatPropertyFile(file, properties);
+
+    new StdPolicyEngine(file.toString(), (String) null);
+  }
+
+  @Test
+  public void testStdPolicyEngineInitialize_MultiplePdp_noException() throws Exception {
+    final File file = temporaryFolder.newFile(CONFIG_PROPERTIES_FILE);
+
+    final Properties properties = new Properties();
+    properties.setProperty(PDP_URL_PROP_NAME,
+        PDP_PROP_VALUE + PolicyConfigConstants.SEMICOLLON + PDP_PROP_VALUE_1);
+    properties.setProperty(CLIENT_ID_PROP_NAME, "test");
+    properties.setProperty(CLIENT_KEY_PROP_NAME, "test");
+    properties.setProperty(NOTIFICATION_TYPE_PROP_NAME, UEB + COMMA + DMAAP);
+    properties.setProperty(NOTIFICATION_SERVERS_PROP_NAME, SERVER_NAME + COMMA + SERVER_NAME);
+    properties.setProperty(NOTIFICATION_TOPIC_PROP_NAME, "test");
+    properties.setProperty(ENVIRONMENT_PROP_NAME, "TEST");
+    creatPropertyFile(file, properties);
+
+    final StdPolicyEngine policyEngine = new StdPolicyEngine(file.toString(), (String) null);
+    policyEngine.setScheme(NotificationScheme.MANUAL_NOTIFICATIONS);
+    assertEquals("http://localhost:8092/pdp/", StdPolicyEngine.getPDPURL());
+    StdPolicyEngine.rotatePDPList();
+    assertEquals("https://localhost:8091/pdp/", StdPolicyEngine.getPDPURL());
+    assertEquals(Arrays.asList(UEB, DMAAP), policyEngine.getNotificationType());
+    assertEquals(Arrays.asList(SERVER_NAME, SERVER_NAME), policyEngine.getNotificationURLList());
+  }
+
+  @Test(expected = PolicyEngineException.class)
+  public void testStdPolicyEngineInitialize_NoPDP_noException() throws Exception {
+    final File file = temporaryFolder.newFile(CONFIG_PROPERTIES_FILE);
+
+    final Properties properties = new Properties();
+    properties.setProperty(CLIENT_ID_PROP_NAME, "test");
+    properties.setProperty(CLIENT_KEY_PROP_NAME, "test");
+    properties.setProperty(NOTIFICATION_TYPE_PROP_NAME, UEB + COMMA + DMAAP);
+    properties.setProperty(NOTIFICATION_SERVERS_PROP_NAME, SERVER_NAME + COMMA + SERVER_NAME);
+    properties.setProperty(NOTIFICATION_TOPIC_PROP_NAME, "test");
+    properties.setProperty(ENVIRONMENT_PROP_NAME, "TEST");
+    creatPropertyFile(file, properties);
+
+    new StdPolicyEngine(file.toString(), (String) null);
+  }
+
+  @Test
+  public void testStdPolicyEngineInitializeNotificationTypeDMMAP_noException() throws Exception {
+    final File file = temporaryFolder.newFile(CONFIG_PROPERTIES_FILE);
+
+    final Properties properties = new Properties();
+    properties.setProperty(PDP_URL_PROP_NAME, PDP_PROP_VALUE);
+    properties.setProperty(CLIENT_ID_PROP_NAME, "test");
+    properties.setProperty(CLIENT_KEY_PROP_NAME, "test");
+    properties.setProperty(NOTIFICATION_TYPE_PROP_NAME, DMAAP);
+    properties.setProperty(NOTIFICATION_SERVERS_PROP_NAME, SERVER_NAME + COMMA + SERVER_NAME);
+    properties.setProperty(NOTIFICATION_TOPIC_PROP_NAME, "test");
+    properties.setProperty(ENVIRONMENT_PROP_NAME, "TEST");
+    creatPropertyFile(file, properties);
+
+    final StdPolicyEngine policyEngine = new StdPolicyEngine(file.toString(), (String) null);
+    policyEngine.setScheme(NotificationScheme.MANUAL_NOTIFICATIONS);
+
+    assertEquals(Arrays.asList(DMAAP), policyEngine.getNotificationType());
+
+  }
+
+  @Test
+  public void testStdPolicyEngineSendEvent_noException() throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    doReturn(new ResponseEntity<>(getStdPolicyResponse(), HttpStatus.ACCEPTED))
+        .when(spyPolicyEngine).callNewPDP(eq(SEND_EVENT_RESOURCE_NAME), any(), any(), any());
+
+    final Collection<PolicyResponse> actualPolicyResponses =
         spyPolicyEngine.sendEvent(Collections.emptyMap(), REQUEST_UUID);
-    }
 
-    @Test
-    public void testStdPolicyEngineSendEvent_EventRequestParameters_noException() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    assertEquals(1, actualPolicyResponses.size());
 
-        final ResponseEntity<StdPolicyResponse[]> stubbedResponse =
-                new ResponseEntity<>(getStdPolicyResponse(), HttpStatus.ACCEPTED);
+  }
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(SEND_EVENT_RESOURCE_NAME), any(), any(), any());
+  @Test(expected = PolicyEventException.class)
+  public void testStdPolicyEngineSendEvent_NullEventRequestParameters_Exception() throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    spyPolicyEngine.sendEvent((EventRequestParameters) null);
+  }
 
-        final EventRequestParameters eventRequestParameters = new EventRequestParameters();
-        eventRequestParameters.setEventAttributes(Collections.emptyMap());
-        eventRequestParameters.setRequestID(REQUEST_UUID);
+  @Test(expected = PolicyEventException.class)
+  public void testStdPolicyEngineSendEvent_EventRequestParameters_CallPDPThrow401Exception_Exception()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    Mockito.doThrow(new RuntimeException(new RestClientException("Error 401")))
+        .when(spyPolicyEngine).callNewPDP(any(), any(), any(), any());
+    spyPolicyEngine.sendEvent(Collections.emptyMap(), REQUEST_UUID);
+  }
 
-        final Collection<PolicyResponse> actualPolicyResponses = spyPolicyEngine.sendEvent(eventRequestParameters);
+  @Test
+  public void testStdPolicyEngineSendEvent_EventRequestParameters_noException() throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        assertEquals(1, actualPolicyResponses.size());
+    final ResponseEntity<StdPolicyResponse[]> stubbedResponse =
+        new ResponseEntity<>(getStdPolicyResponse(), HttpStatus.ACCEPTED);
 
-    }
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(SEND_EVENT_RESOURCE_NAME), any(),
+        any(), any());
 
-    @Test
-    public void testStdPolicyEngineGetConfig_ConfigRequestParametersPolicyConfigJSON_noException() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    final EventRequestParameters eventRequestParameters = new EventRequestParameters();
+    eventRequestParameters.setEventAttributes(Collections.emptyMap());
+    eventRequestParameters.setRequestID(REQUEST_UUID);
 
-        final ResponseEntity<APIPolicyConfigResponse[]> stubbedResponse = new ResponseEntity<>(
-                getAPIPolicyConfigResponse(PolicyType.JSON, JSON_CONFIGURATION), HttpStatus.ACCEPTED);
+    final Collection<PolicyResponse> actualPolicyResponses =
+        spyPolicyEngine.sendEvent(eventRequestParameters);
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_CONFIG_RESOURCE_NAME), eq(HttpMethod.POST),
-                any(), any());
+    assertEquals(1, actualPolicyResponses.size());
 
-        final Collection<PolicyConfig> actualPolicyResponses = spyPolicyEngine.getConfig(new ConfigRequestParameters());
+  }
 
-        assertEquals(1, actualPolicyResponses.size());
+  @Test
+  public void testStdPolicyEngineGetConfig_ConfigRequestParametersPolicyConfigJSON_noException()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        final PolicyConfig actualPolicyConfig = actualPolicyResponses.iterator().next();
-        assertNotNull(actualPolicyConfig.toJSON());
+    final ResponseEntity<APIPolicyConfigResponse[]> stubbedResponse = new ResponseEntity<>(
+        getAPIPolicyConfigResponse(PolicyType.JSON, JSON_CONFIGURATION), HttpStatus.ACCEPTED);
 
-    }
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_CONFIG_RESOURCE_NAME),
+        eq(HttpMethod.POST), any(), any());
 
-    @Test
-    public void testStdPolicyEngineGetConfig_ConfigRequestParametersPolicyConfigOther_noException() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    final Collection<PolicyConfig> actualPolicyResponses =
+        spyPolicyEngine.getConfig(new ConfigRequestParameters());
 
-        final ResponseEntity<APIPolicyConfigResponse[]> stubbedResponse =
-                new ResponseEntity<>(getAPIPolicyConfigResponse(PolicyType.OTHER, COMMENTS), HttpStatus.ACCEPTED);
+    assertEquals(1, actualPolicyResponses.size());
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_CONFIG_RESOURCE_NAME), eq(HttpMethod.POST),
-                any(), any());
+    final PolicyConfig actualPolicyConfig = actualPolicyResponses.iterator().next();
+    assertNotNull(actualPolicyConfig.toJSON());
 
-        final Collection<PolicyConfig> actualPolicyResponses = spyPolicyEngine.getConfig(new ConfigRequestParameters());
+  }
 
-        assertEquals(1, actualPolicyResponses.size());
+  @Test
+  public void testStdPolicyEngineGetConfig_ConfigRequestParametersPolicyConfigOther_noException()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        final PolicyConfig actualPolicyConfig = actualPolicyResponses.iterator().next();
-        assertNotNull(actualPolicyConfig.toOther());
+    final ResponseEntity<APIPolicyConfigResponse[]> stubbedResponse = new ResponseEntity<>(
+        getAPIPolicyConfigResponse(PolicyType.OTHER, COMMENTS), HttpStatus.ACCEPTED);
 
-    }
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_CONFIG_RESOURCE_NAME),
+        eq(HttpMethod.POST), any(), any());
 
-    @Test
-    public void testStdPolicyEngineGetConfig_ConfigRequestParametersPolicyConfigXML_noException() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    final Collection<PolicyConfig> actualPolicyResponses =
+        spyPolicyEngine.getConfig(new ConfigRequestParameters());
 
-        final ResponseEntity<APIPolicyConfigResponse[]> stubbedResponse = new ResponseEntity<>(
-                getAPIPolicyConfigResponse(PolicyType.XML, XML_CONFIGURATION), HttpStatus.ACCEPTED);
+    assertEquals(1, actualPolicyResponses.size());
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_CONFIG_RESOURCE_NAME), eq(HttpMethod.POST),
-                any(), any());
+    final PolicyConfig actualPolicyConfig = actualPolicyResponses.iterator().next();
+    assertNotNull(actualPolicyConfig.toOther());
 
-        final Collection<PolicyConfig> actualPolicyResponses = spyPolicyEngine.getConfig(new ConfigRequestParameters());
+  }
 
-        assertEquals(1, actualPolicyResponses.size());
+  @Test
+  public void testStdPolicyEngineGetConfig_ConfigRequestParametersPolicyConfigXML_noException()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        final PolicyConfig actualPolicyConfig = actualPolicyResponses.iterator().next();
-        assertNotNull(actualPolicyConfig.toXML());
+    final ResponseEntity<APIPolicyConfigResponse[]> stubbedResponse = new ResponseEntity<>(
+        getAPIPolicyConfigResponse(PolicyType.XML, XML_CONFIGURATION), HttpStatus.ACCEPTED);
 
-    }
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_CONFIG_RESOURCE_NAME),
+        eq(HttpMethod.POST), any(), any());
 
-    @Test
-    public void testStdPolicyEngineGetConfig_ConfigRequestParametersPolicyConfigProperties_noException()
-            throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    final Collection<PolicyConfig> actualPolicyResponses =
+        spyPolicyEngine.getConfig(new ConfigRequestParameters());
 
-        final ResponseEntity<APIPolicyConfigResponse[]> stubbedResponse =
-                new ResponseEntity<>(getAPIPolicyConfigResponse(PolicyType.PROPERTIES, COMMENTS), HttpStatus.ACCEPTED);
+    assertEquals(1, actualPolicyResponses.size());
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_CONFIG_RESOURCE_NAME), eq(HttpMethod.POST),
-                any(), any());
+    final PolicyConfig actualPolicyConfig = actualPolicyResponses.iterator().next();
+    assertNotNull(actualPolicyConfig.toXML());
 
-        final Collection<PolicyConfig> actualPolicyResponses = spyPolicyEngine.getConfig(new ConfigRequestParameters());
+  }
 
-        assertEquals(1, actualPolicyResponses.size());
+  @Test
+  public void testStdPolicyEngineGetConfig_ConfigRequestParametersPolicyConfigProperties_noException()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        final PolicyConfig actualPolicyConfig = actualPolicyResponses.iterator().next();
-        assertNotNull(actualPolicyConfig.toProperties());
+    final ResponseEntity<APIPolicyConfigResponse[]> stubbedResponse = new ResponseEntity<>(
+        getAPIPolicyConfigResponse(PolicyType.PROPERTIES, COMMENTS), HttpStatus.ACCEPTED);
 
-    }
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_CONFIG_RESOURCE_NAME),
+        eq(HttpMethod.POST), any(), any());
 
-    @Test(expected = PolicyConfigException.class)
-    public void testStdPolicyEngineSendEvent_ConfigRequestParameters_CallPDPThrow404Exception_Exception()
-            throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
-        doThrow(new RuntimeException(new RestClientException("Error 404"))).when(spyPolicyEngine).callNewPDP(any(),
-                any(), any(), any());
+    final Collection<PolicyConfig> actualPolicyResponses =
         spyPolicyEngine.getConfig(new ConfigRequestParameters());
-    }
 
-    @Test
-    public void testStdPolicyEngineListConfig_ConfigRequestParametersPolicyConfigProperties_noException()
-            throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    assertEquals(1, actualPolicyResponses.size());
 
-        final APIPolicyConfigResponse[] apiPolicyConfigResponse =
-                getAPIPolicyConfigResponse(PolicyType.JSON, JSON_CONFIGURATION);
+    final PolicyConfig actualPolicyConfig = actualPolicyResponses.iterator().next();
+    assertNotNull(actualPolicyConfig.toProperties());
 
-        final ResponseEntity<APIPolicyConfigResponse[]> stubbedResponse =
-                new ResponseEntity<>(apiPolicyConfigResponse, HttpStatus.ACCEPTED);
+  }
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_CONFIG_RESOURCE_NAME), eq(HttpMethod.POST),
-                any(), any());
+  @Test(expected = PolicyConfigException.class)
+  public void testStdPolicyEngineSendEvent_ConfigRequestParameters_CallPDPThrow404Exception_Exception()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    doThrow(new RuntimeException(new RestClientException("Error 404"))).when(spyPolicyEngine)
+        .callNewPDP(any(), any(), any(), any());
+    spyPolicyEngine.getConfig(new ConfigRequestParameters());
+  }
 
-        final Collection<String> actualResponse = spyPolicyEngine.listConfig(new ConfigRequestParameters());
-        assertEquals(1, actualResponse.size());
-        assertNotNull(actualResponse.iterator().next());
+  @Test
+  public void testStdPolicyEngineListConfig_ConfigRequestParametersPolicyConfigProperties_noException()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-    }
+    final APIPolicyConfigResponse[] apiPolicyConfigResponse =
+        getAPIPolicyConfigResponse(PolicyType.JSON, JSON_CONFIGURATION);
 
-    @Test
-    public void testStdPolicyEngineListConfig_ConfigRequestParametersMessageConfigContainsPE300_noException()
-            throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    final ResponseEntity<APIPolicyConfigResponse[]> stubbedResponse =
+        new ResponseEntity<>(apiPolicyConfigResponse, HttpStatus.ACCEPTED);
 
-        final APIPolicyConfigResponse[] apiPolicyConfigResponse =
-                getAPIPolicyConfigResponse(PolicyType.JSON, JSON_CONFIGURATION, PolicyConfigConstants.PE300);
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_CONFIG_RESOURCE_NAME),
+        eq(HttpMethod.POST), any(), any());
 
-        final ResponseEntity<APIPolicyConfigResponse[]> stubbedResponse =
-                new ResponseEntity<>(apiPolicyConfigResponse, HttpStatus.ACCEPTED);
+    final Collection<String> actualResponse =
+        spyPolicyEngine.listConfig(new ConfigRequestParameters());
+    assertEquals(1, actualResponse.size());
+    assertNotNull(actualResponse.iterator().next());
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_CONFIG_RESOURCE_NAME), eq(HttpMethod.POST),
-                any(), any());
+  }
 
-        final Collection<String> actualResponse = spyPolicyEngine.listConfig(new ConfigRequestParameters());
+  @Test
+  public void testStdPolicyEngineListConfig_ConfigRequestParametersMessageConfigContainsPE300_noException()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        assertEquals(1, actualResponse.size());
+    final APIPolicyConfigResponse[] apiPolicyConfigResponse = getAPIPolicyConfigResponse(
+        PolicyType.JSON, JSON_CONFIGURATION, PolicyConfigConstants.PE300);
 
-    }
-
-    @Test
-    public void testStdPolicyEngineListConfig_ConfigRequestParametersWithTestProperty_noException() throws Exception {
-        final Properties defaultProperties = getDefaultProperties();
-        defaultProperties.setProperty(PolicyConfigConstants.JUNIT_PROP_NAME, "test");
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine("test" + CONFIG_PROPERTIES_FILE, defaultProperties);
+    final ResponseEntity<APIPolicyConfigResponse[]> stubbedResponse =
+        new ResponseEntity<>(apiPolicyConfigResponse, HttpStatus.ACCEPTED);
 
-        final Collection<String> actualResponse = spyPolicyEngine.listConfig(new ConfigRequestParameters());
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_CONFIG_RESOURCE_NAME),
+        eq(HttpMethod.POST), any(), any());
 
-        assertEquals(1, actualResponse.size());
+    final Collection<String> actualResponse =
+        spyPolicyEngine.listConfig(new ConfigRequestParameters());
 
-    }
+    assertEquals(1, actualResponse.size());
 
-    @Test
-    public void testStdPolicyEnginGetDecision_PolicyDecision_noException() throws Exception {
+  }
 
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+  @Test
+  public void testStdPolicyEngineListConfig_ConfigRequestParametersWithTestProperty_noException()
+      throws Exception {
+    final Properties defaultProperties = getDefaultProperties();
+    defaultProperties.setProperty(PolicyConfigConstants.JUNIT_PROP_NAME, "test");
+    final StdPolicyEngine spyPolicyEngine =
+        getSpyPolicyEngine("test" + CONFIG_PROPERTIES_FILE, defaultProperties);
 
-        final ResponseEntity<StdDecisionResponse> stubbedResponse =
-                new ResponseEntity<>(getStdDecisionResponse(), HttpStatus.ACCEPTED);
+    final Collection<String> actualResponse =
+        spyPolicyEngine.listConfig(new ConfigRequestParameters());
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_DECISION_RESOURCE_NAME), eq(HttpMethod.POST),
-                any(), any());
+    assertEquals(1, actualResponse.size());
 
-        final DecisionResponse actualResponse =
-                spyPolicyEngine.getDecision(ONAP_NAME_VAL, Collections.emptyMap(), REQUEST_UUID);
+  }
 
-        assertNotNull(actualResponse);
-    }
+  @Test
+  public void testStdPolicyEnginGetDecision_PolicyDecision_noException() throws Exception {
 
-    @Test(expected = PolicyDecisionException.class)
-    public void testStdPolicyEngineGetDecision_PolicyDecision_CallPDPThrow400Exception_Exception() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
-        doThrow(new RuntimeException(new RestClientException("Error 400"))).when(spyPolicyEngine)
-                .callNewPDP(eq(GET_DECISION_RESOURCE_NAME), eq(HttpMethod.POST), any(), any());
-        spyPolicyEngine.getDecision(ONAP_NAME_VAL, Collections.emptyMap(), REQUEST_UUID);
-    }
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-    @Test
-    public void testStdPolicyEnginGetDecision_DecisionRequestParameters_noException() throws Exception {
+    final ResponseEntity<StdDecisionResponse> stubbedResponse =
+        new ResponseEntity<>(getStdDecisionResponse(), HttpStatus.ACCEPTED);
 
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_DECISION_RESOURCE_NAME),
+        eq(HttpMethod.POST), any(), any());
 
-        final ResponseEntity<StdDecisionResponse> stubbedResponse =
-                new ResponseEntity<>(getStdDecisionResponse(), HttpStatus.ACCEPTED);
+    final DecisionResponse actualResponse =
+        spyPolicyEngine.getDecision(ONAP_NAME_VAL, Collections.emptyMap(), REQUEST_UUID);
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_DECISION_RESOURCE_NAME), eq(HttpMethod.POST),
-                any(), any());
+    assertNotNull(actualResponse);
+  }
 
-        final DecisionRequestParameters requestParameters = new DecisionRequestParameters();
-        requestParameters.setOnapName(ONAP_NAME_VAL);
-        requestParameters.setRequestID(REQUEST_UUID);
-        requestParameters.setDecisionAttributes(Collections.emptyMap());
+  @Test(expected = PolicyDecisionException.class)
+  public void testStdPolicyEngineGetDecision_PolicyDecision_CallPDPThrow400Exception_Exception()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    doThrow(new RuntimeException(new RestClientException("Error 400"))).when(spyPolicyEngine)
+        .callNewPDP(eq(GET_DECISION_RESOURCE_NAME), eq(HttpMethod.POST), any(), any());
+    spyPolicyEngine.getDecision(ONAP_NAME_VAL, Collections.emptyMap(), REQUEST_UUID);
+  }
 
-        final DecisionResponse actualResponse = spyPolicyEngine.getDecision(requestParameters);
+  @Test
+  public void testStdPolicyEnginGetDecision_DecisionRequestParameters_noException()
+      throws Exception {
 
-        assertNotNull(actualResponse);
-    }
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-    @Test(expected = PolicyDecisionException.class)
-    public void ttestStdPolicyEnginGetDecision_NullDecisionRequestParameters_Exception() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
-        spyPolicyEngine.getDecision((DecisionRequestParameters) null);
-    }
+    final ResponseEntity<StdDecisionResponse> stubbedResponse =
+        new ResponseEntity<>(getStdDecisionResponse(), HttpStatus.ACCEPTED);
 
-    @Test
-    public void testStdPolicyEnginGetMetrics_MetricsRequestParameters_noException() throws Exception {
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_DECISION_RESOURCE_NAME),
+        eq(HttpMethod.POST), any(), any());
 
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    final DecisionRequestParameters requestParameters = new DecisionRequestParameters();
+    requestParameters.setOnapName(ONAP_NAME_VAL);
+    requestParameters.setRequestID(REQUEST_UUID);
+    requestParameters.setDecisionAttributes(Collections.emptyMap());
 
-        final ResponseEntity<String> stubbedResponse = new ResponseEntity<>("Metrics", HttpStatus.ACCEPTED);
+    final DecisionResponse actualResponse = spyPolicyEngine.getDecision(requestParameters);
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_METRICS_RESOURCE_NAME), eq(HttpMethod.GET),
-                any(), any());
+    assertNotNull(actualResponse);
+  }
 
-        final MetricsResponse actualResponse = spyPolicyEngine.getMetrics(new MetricsRequestParameters());
-        assertNotNull(actualResponse);
-        assertEquals(HttpStatus.ACCEPTED.value(), actualResponse.getResponseCode());
+  @Test(expected = PolicyDecisionException.class)
+  public void ttestStdPolicyEnginGetDecision_NullDecisionRequestParameters_Exception()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    spyPolicyEngine.getDecision((DecisionRequestParameters) null);
+  }
 
-    }
+  @Test
+  public void testStdPolicyEnginGetMetrics_MetricsRequestParameters_noException() throws Exception {
 
-    @Test
-    public void testStdPolicyEngineGetMetrics_MetricsRequestParametersCallPDPThrowHttpException_ResponseWithHttpCode()
-            throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
-        doThrow(new PolicyException(new HttpClientErrorException(HttpStatus.BAD_GATEWAY))).when(spyPolicyEngine)
-                .callNewPDP(eq(GET_METRICS_RESOURCE_NAME), eq(HttpMethod.GET), any(), any());
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        final MetricsResponse actualResponse = spyPolicyEngine.getMetrics(new MetricsRequestParameters());
-        assertNotNull(actualResponse);
-        assertEquals(HttpStatus.BAD_GATEWAY.value(), actualResponse.getResponseCode());
+    final ResponseEntity<String> stubbedResponse =
+        new ResponseEntity<>("Metrics", HttpStatus.ACCEPTED);
 
-    }
-
-    @Test(expected = PolicyException.class)
-    public void testStdPolicyEngineGetMetrics_MetricsRequestParametersCallPDPThrowPolicyException_Exception()
-            throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
-        doThrow(PolicyException.class).when(spyPolicyEngine).callNewPDP(eq(GET_METRICS_RESOURCE_NAME),
-                eq(HttpMethod.GET), any(), any());
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_METRICS_RESOURCE_NAME),
+        eq(HttpMethod.GET), any(), any());
 
+    final MetricsResponse actualResponse =
         spyPolicyEngine.getMetrics(new MetricsRequestParameters());
+    assertNotNull(actualResponse);
+    assertEquals(HttpStatus.ACCEPTED.value(), actualResponse.getResponseCode());
 
-    }
-
-    @Test
-    public void testStdPolicyEnginPushPolicy_PushPolicyParameters_noException() throws Exception {
+  }
 
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+  @Test
+  public void testStdPolicyEngineGetMetrics_MetricsRequestParametersCallPDPThrowHttpException_ResponseWithHttpCode()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    doThrow(new PolicyException(new HttpClientErrorException(HttpStatus.BAD_GATEWAY)))
+        .when(spyPolicyEngine)
+        .callNewPDP(eq(GET_METRICS_RESOURCE_NAME), eq(HttpMethod.GET), any(), any());
 
-        final ResponseEntity<String> stubbedResponse = new ResponseEntity<>("Successful", HttpStatus.OK);
+    final MetricsResponse actualResponse =
+        spyPolicyEngine.getMetrics(new MetricsRequestParameters());
+    assertNotNull(actualResponse);
+    assertEquals(HttpStatus.BAD_GATEWAY.value(), actualResponse.getResponseCode());
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(PUSH_POLICY_RESOURCE_NAME), eq(HttpMethod.PUT),
-                any(), any());
+  }
 
-        final PolicyChangeResponse actualResponse = spyPolicyEngine.pushPolicy(new PushPolicyParameters());
+  @Test(expected = PolicyException.class)
+  public void testStdPolicyEngineGetMetrics_MetricsRequestParametersCallPDPThrowPolicyException_Exception()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    doThrow(PolicyException.class).when(spyPolicyEngine).callNewPDP(eq(GET_METRICS_RESOURCE_NAME),
+        eq(HttpMethod.GET), any(), any());
 
-        assertNotNull(actualResponse);
-        assertEquals(HttpStatus.OK.value(), actualResponse.getResponseCode());
-    }
+    spyPolicyEngine.getMetrics(new MetricsRequestParameters());
 
-    @Test
-    public void testStdPolicyEnginePushPolicy_PushPolicyParametersThrowsHttpClientErrorException_ResponseWithHttpCode()
-            throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
-        doThrow(new PolicyException(new HttpClientErrorException(HttpStatus.BAD_GATEWAY))).when(spyPolicyEngine)
-                .callNewPDP(eq(PUSH_POLICY_RESOURCE_NAME), eq(HttpMethod.PUT), any(), any());
+  }
 
-        final PolicyChangeResponse actualResponse = spyPolicyEngine.pushPolicy(new PushPolicyParameters());
+  @Test
+  public void testStdPolicyEnginPushPolicy_PushPolicyParameters_noException() throws Exception {
 
-        assertNotNull(actualResponse);
-        assertEquals(HttpStatus.BAD_GATEWAY.value(), actualResponse.getResponseCode());
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-    }
+    final ResponseEntity<String> stubbedResponse =
+        new ResponseEntity<>("Successful", HttpStatus.OK);
 
-    @Test(expected = PolicyException.class)
-    public void testStdPolicyEnginePushPolicy_PushPolicyParameters_Exception() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
-        doThrow(PolicyException.class).when(spyPolicyEngine).callNewPDP(eq(PUSH_POLICY_RESOURCE_NAME),
-                eq(HttpMethod.PUT), any(), any());
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(PUSH_POLICY_RESOURCE_NAME),
+        eq(HttpMethod.PUT), any(), any());
 
+    final PolicyChangeResponse actualResponse =
         spyPolicyEngine.pushPolicy(new PushPolicyParameters());
 
-    }
+    assertNotNull(actualResponse);
+    assertEquals(HttpStatus.OK.value(), actualResponse.getResponseCode());
+  }
 
-    @Test
-    public void testStdPolicyEnginDeletePolicy_DeletePolicyParameters_noException() throws Exception {
+  @Test
+  public void testStdPolicyEnginePushPolicy_PushPolicyParametersThrowsHttpClientErrorException_ResponseWithHttpCode()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    doThrow(new PolicyException(new HttpClientErrorException(HttpStatus.BAD_GATEWAY)))
+        .when(spyPolicyEngine)
+        .callNewPDP(eq(PUSH_POLICY_RESOURCE_NAME), eq(HttpMethod.PUT), any(), any());
 
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    final PolicyChangeResponse actualResponse =
+        spyPolicyEngine.pushPolicy(new PushPolicyParameters());
 
-        final ResponseEntity<String> stubbedResponse = new ResponseEntity<>("Successful", HttpStatus.OK);
+    assertNotNull(actualResponse);
+    assertEquals(HttpStatus.BAD_GATEWAY.value(), actualResponse.getResponseCode());
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(DELETE_POLICY_RESOURCE_NAME),
-                eq(HttpMethod.DELETE), any(), any());
+  }
 
-        final PolicyChangeResponse actualResponse = spyPolicyEngine.deletePolicy(new DeletePolicyParameters());
+  @Test(expected = PolicyException.class)
+  public void testStdPolicyEnginePushPolicy_PushPolicyParameters_Exception() throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    doThrow(PolicyException.class).when(spyPolicyEngine).callNewPDP(eq(PUSH_POLICY_RESOURCE_NAME),
+        eq(HttpMethod.PUT), any(), any());
 
-        assertNotNull(actualResponse);
-        assertEquals(HttpStatus.OK.value(), actualResponse.getResponseCode());
-    }
+    spyPolicyEngine.pushPolicy(new PushPolicyParameters());
 
-    @Test
-    public void testStdPolicyEnginGetDictionaryItem_DictionaryParameters_noException() throws Exception {
+  }
 
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+  @Test
+  public void testStdPolicyEnginDeletePolicy_DeletePolicyParameters_noException() throws Exception {
 
-        final ResponseEntity<APIDictionaryResponse> stubbedResponse =
-                new ResponseEntity<>(getAPIDictionaryResponse(), HttpStatus.OK);
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(GET_DICTIONARY_ITEMS_RESOURCE_NAME),
-                eq(HttpMethod.POST), any(), any());
+    final ResponseEntity<String> stubbedResponse =
+        new ResponseEntity<>("Successful", HttpStatus.OK);
 
-        final DictionaryResponse actualResponse = spyPolicyEngine.getDictionaryItem(new DictionaryParameters());
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(DELETE_POLICY_RESOURCE_NAME),
+        eq(HttpMethod.DELETE), any(), any());
 
-        assertNotNull(actualResponse);
-    }
+    final PolicyChangeResponse actualResponse =
+        spyPolicyEngine.deletePolicy(new DeletePolicyParameters());
 
-    @Test
-    public void testStdPolicyGetDictionaryItem_DictionaryParametersWithHttp400ExceptionThrown_ResponseWithHttpCode()
-            throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
-        doThrow(new RuntimeException(new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Error 400")))
-                .when(spyPolicyEngine)
-                .callNewPDP(eq(GET_DICTIONARY_ITEMS_RESOURCE_NAME), eq(HttpMethod.POST), any(), any());
+    assertNotNull(actualResponse);
+    assertEquals(HttpStatus.OK.value(), actualResponse.getResponseCode());
+  }
 
-        final DictionaryResponse actualResponse = spyPolicyEngine.getDictionaryItem(new DictionaryParameters());
+  @Test
+  public void testStdPolicyEnginGetDictionaryItem_DictionaryParameters_noException()
+      throws Exception {
 
-        assertNotNull(actualResponse);
-        assertEquals(HttpStatus.BAD_REQUEST.value(), actualResponse.getResponseCode());
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-    }
+    final ResponseEntity<APIDictionaryResponse> stubbedResponse =
+        new ResponseEntity<>(getAPIDictionaryResponse(), HttpStatus.OK);
 
-    @Test
-    public void testStdPolicyGetDictionaryItem_DictionaryParametersWithHttp401ExceptionThrown_ResponseWithHttpCode()
-            throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
-        doThrow(new RuntimeException(new HttpClientErrorException(HttpStatus.UNAUTHORIZED, "Error 401")))
-                .when(spyPolicyEngine)
-                .callNewPDP(eq(GET_DICTIONARY_ITEMS_RESOURCE_NAME), eq(HttpMethod.POST), any(), any());
+    doReturn(stubbedResponse).when(spyPolicyEngine)
+        .callNewPDP(eq(GET_DICTIONARY_ITEMS_RESOURCE_NAME), eq(HttpMethod.POST), any(), any());
 
-        final DictionaryResponse actualResponse = spyPolicyEngine.getDictionaryItem(new DictionaryParameters());
+    final DictionaryResponse actualResponse =
+        spyPolicyEngine.getDictionaryItem(new DictionaryParameters());
 
-        assertNotNull(actualResponse);
-        assertEquals(HttpStatus.UNAUTHORIZED.value(), actualResponse.getResponseCode());
+    assertNotNull(actualResponse);
+  }
 
-    }
+  @Test
+  public void testStdPolicyGetDictionaryItem_DictionaryParametersWithHttp400ExceptionThrown_ResponseWithHttpCode()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    doThrow(new RuntimeException(new HttpClientErrorException(HttpStatus.BAD_REQUEST, "Error 400")))
+        .when(spyPolicyEngine)
+        .callNewPDP(eq(GET_DICTIONARY_ITEMS_RESOURCE_NAME), eq(HttpMethod.POST), any(), any());
 
-    @Test
-    public void testStdPolicyGetDictionaryItem_DictionaryParametersWithRunTimeExceptionThrown_ResponseWithHttpCode()
-            throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
-        doThrow(new RuntimeException(new HttpClientErrorException(HttpStatus.INTERNAL_SERVER_ERROR, "Error")))
-                .when(spyPolicyEngine)
-                .callNewPDP(eq(GET_DICTIONARY_ITEMS_RESOURCE_NAME), eq(HttpMethod.POST), any(), any());
+    final DictionaryResponse actualResponse =
+        spyPolicyEngine.getDictionaryItem(new DictionaryParameters());
 
-        final DictionaryResponse actualResponse = spyPolicyEngine.getDictionaryItem(new DictionaryParameters());
+    assertNotNull(actualResponse);
+    assertEquals(HttpStatus.BAD_REQUEST.value(), actualResponse.getResponseCode());
 
-        assertNotNull(actualResponse);
-        assertEquals(HttpStatus.INTERNAL_SERVER_ERROR.value(), actualResponse.getResponseCode());
+  }
 
-    }
+  @Test
+  public void testStdPolicyGetDictionaryItem_DictionaryParametersWithHttp401ExceptionThrown_ResponseWithHttpCode()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    doThrow(
+        new RuntimeException(new HttpClientErrorException(HttpStatus.UNAUTHORIZED, "Error 401")))
+            .when(spyPolicyEngine)
+            .callNewPDP(eq(GET_DICTIONARY_ITEMS_RESOURCE_NAME), eq(HttpMethod.POST), any(), any());
 
-    @Test
-    public void testStdPolicyEnginCreateDictionaryItem_DictionaryParameters_noException() throws Exception {
+    final DictionaryResponse actualResponse =
+        spyPolicyEngine.getDictionaryItem(new DictionaryParameters());
 
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    assertNotNull(actualResponse);
+    assertEquals(HttpStatus.UNAUTHORIZED.value(), actualResponse.getResponseCode());
 
-        final ResponseEntity<String> stubbedResponse = new ResponseEntity<>("Successful", HttpStatus.OK);
+  }
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(CREATE_DICTIONARY_ITEM_RESOURCE_NAME),
-                eq(HttpMethod.PUT), any(), any());
+  @Test
+  public void testStdPolicyGetDictionaryItem_DictionaryParametersWithRunTimeExceptionThrown_ResponseWithHttpCode()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    doThrow(new RuntimeException(
+        new HttpClientErrorException(HttpStatus.INTERNAL_SERVER_ERROR, "Error")))
+            .when(spyPolicyEngine)
+            .callNewPDP(eq(GET_DICTIONARY_ITEMS_RESOURCE_NAME), eq(HttpMethod.POST), any(), any());
 
-        final PolicyChangeResponse actualResponse = spyPolicyEngine.createDictionaryItem(new DictionaryParameters());
+    final DictionaryResponse actualResponse =
+        spyPolicyEngine.getDictionaryItem(new DictionaryParameters());
 
-        assertNotNull(actualResponse);
-        assertEquals(HttpStatus.OK.value(), actualResponse.getResponseCode());
-    }
+    assertNotNull(actualResponse);
+    assertEquals(HttpStatus.INTERNAL_SERVER_ERROR.value(), actualResponse.getResponseCode());
 
-    @Test
-    public void testStdPolicyEnginUpdateDictionaryItem_DictionaryParameters_noException() throws Exception {
+  }
 
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+  @Test
+  public void testStdPolicyEnginCreateDictionaryItem_DictionaryParameters_noException()
+      throws Exception {
 
-        final ResponseEntity<String> stubbedResponse = new ResponseEntity<>("Successful", HttpStatus.OK);
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(UPDATE_DICTIONARY_ITEM_RESOURCE_NAME),
-                eq(HttpMethod.PUT), any(), any());
+    final ResponseEntity<String> stubbedResponse =
+        new ResponseEntity<>("Successful", HttpStatus.OK);
 
-        final PolicyChangeResponse actualResponse = spyPolicyEngine.updateDictionaryItem(new DictionaryParameters());
+    doReturn(stubbedResponse).when(spyPolicyEngine)
+        .callNewPDP(eq(CREATE_DICTIONARY_ITEM_RESOURCE_NAME), eq(HttpMethod.PUT), any(), any());
 
-        assertNotNull(actualResponse);
-        assertEquals(HttpStatus.OK.value(), actualResponse.getResponseCode());
-    }
+    final PolicyChangeResponse actualResponse =
+        spyPolicyEngine.createDictionaryItem(new DictionaryParameters());
 
-    @Test
-    public void testStdPolicyEnginPolicyEngineImport_ImportParameters_noException() throws Exception {
-        final File emptyfile = temporaryFolder.newFile("emptyFile.txt");
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    assertNotNull(actualResponse);
+    assertEquals(HttpStatus.OK.value(), actualResponse.getResponseCode());
+  }
 
-        final ResponseEntity<String> stubbedResponse = new ResponseEntity<>("Successful", HttpStatus.OK);
+  @Test
+  public void testStdPolicyEnginUpdateDictionaryItem_DictionaryParameters_noException()
+      throws Exception {
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(POLICY_ENGINE_IMPORT_RESOURCE_NAME),
-                eq(HttpMethod.POST), any(), any());
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        final ImportParameters importParameters = new ImportParameters();
-        importParameters.setFilePath(emptyfile.toString());
-        final PolicyChangeResponse actualResponse = spyPolicyEngine.policyEngineImport(importParameters);
+    final ResponseEntity<String> stubbedResponse =
+        new ResponseEntity<>("Successful", HttpStatus.OK);
 
-        assertNotNull(actualResponse);
-        assertEquals(HttpStatus.OK.value(), actualResponse.getResponseCode());
-    }
+    doReturn(stubbedResponse).when(spyPolicyEngine)
+        .callNewPDP(eq(UPDATE_DICTIONARY_ITEM_RESOURCE_NAME), eq(HttpMethod.PUT), any(), any());
 
-    @Test
-    public void testStdPolicyEnginCreatePolicy_PolicyParameters_noException() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    final PolicyChangeResponse actualResponse =
+        spyPolicyEngine.updateDictionaryItem(new DictionaryParameters());
 
-        final ResponseEntity<String> stubbedResponse = new ResponseEntity<>("Successful", HttpStatus.OK);
+    assertNotNull(actualResponse);
+    assertEquals(HttpStatus.OK.value(), actualResponse.getResponseCode());
+  }
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(CREATE_POLICY_RESOURCE_NAME), eq(HttpMethod.PUT),
-                any(), any());
+  @Test
+  public void testStdPolicyEnginPolicyEngineImport_ImportParameters_noException() throws Exception {
+    final File emptyfile = temporaryFolder.newFile("emptyFile.txt");
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        final PolicyChangeResponse actualResponse = spyPolicyEngine.createPolicy(new PolicyParameters());
+    final ResponseEntity<String> stubbedResponse =
+        new ResponseEntity<>("Successful", HttpStatus.OK);
 
-        assertNotNull(actualResponse);
-        assertEquals(HttpStatus.OK.value(), actualResponse.getResponseCode());
-    }
+    doReturn(stubbedResponse).when(spyPolicyEngine)
+        .callNewPDP(eq(POLICY_ENGINE_IMPORT_RESOURCE_NAME), eq(HttpMethod.POST), any(), any());
 
-    @Test
-    public void testStdPolicyEnginUpdatePolicy_PolicyParameters_noException() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    final ImportParameters importParameters = new ImportParameters();
+    importParameters.setFilePath(emptyfile.toString());
+    final PolicyChangeResponse actualResponse =
+        spyPolicyEngine.policyEngineImport(importParameters);
 
-        final ResponseEntity<String> stubbedResponse = new ResponseEntity<>("Successful", HttpStatus.OK);
+    assertNotNull(actualResponse);
+    assertEquals(HttpStatus.OK.value(), actualResponse.getResponseCode());
+  }
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(UPDATE_POLICY_RESOURCE_NAME), eq(HttpMethod.PUT),
-                any(), any());
+  @Test
+  public void testStdPolicyEnginCreatePolicy_PolicyParameters_noException() throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        final PolicyChangeResponse actualResponse = spyPolicyEngine.updatePolicy(new PolicyParameters());
+    final ResponseEntity<String> stubbedResponse =
+        new ResponseEntity<>("Successful", HttpStatus.OK);
 
-        assertNotNull(actualResponse);
-        assertEquals(HttpStatus.OK.value(), actualResponse.getResponseCode());
-    }
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(CREATE_POLICY_RESOURCE_NAME),
+        eq(HttpMethod.PUT), any(), any());
 
-    @Test(expected = PolicyException.class)
-    public void testStdPolicyEnginPushPolicy_NullValues_Exception() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    final PolicyChangeResponse actualResponse =
+        spyPolicyEngine.createPolicy(new PolicyParameters());
 
-        spyPolicyEngine.pushPolicy(null, null, null, null, null);
-    }
+    assertNotNull(actualResponse);
+    assertEquals(HttpStatus.OK.value(), actualResponse.getResponseCode());
+  }
 
-    @Test(expected = PolicyException.class)
-    public void testStdPolicyEnginPushPolicy_EmptyPolicyScope_Exception() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+  @Test
+  public void testStdPolicyEnginUpdatePolicy_PolicyParameters_noException() throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        spyPolicyEngine.pushPolicy("", null, null, null, null);
-    }
+    final ResponseEntity<String> stubbedResponse =
+        new ResponseEntity<>("Successful", HttpStatus.OK);
 
-    @Test(expected = PolicyException.class)
-    public void testStdPolicyEnginPushPolicy_EmptyPolicyName_Exception() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(UPDATE_POLICY_RESOURCE_NAME),
+        eq(HttpMethod.PUT), any(), any());
 
-        spyPolicyEngine.pushPolicy("POLICY_SCOPE", "", null, null, null);
-    }
+    final PolicyChangeResponse actualResponse =
+        spyPolicyEngine.updatePolicy(new PolicyParameters());
 
-    @Test
-    public void testStdPolicyEnginPushPolicy_PolicyParameters_noException() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+    assertNotNull(actualResponse);
+    assertEquals(HttpStatus.OK.value(), actualResponse.getResponseCode());
+  }
 
-        final ResponseEntity<String> stubbedResponse = new ResponseEntity<>("Successful", HttpStatus.OK);
+  @Test(expected = PolicyException.class)
+  public void testStdPolicyEnginPushPolicy_NullValues_Exception() throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(PUSH_POLICY_RESOURCE_NAME), eq(HttpMethod.PUT),
-                any(), any());
+    spyPolicyEngine.pushPolicy(null, null, null, null, null);
+  }
 
-        final String actualResponse =
-                spyPolicyEngine.pushPolicy("POLICY_SCOPE", ONAP_NAME_VAL, "POLICY_TYPE", "POLICY_GROUP", REQUEST_UUID);
+  @Test(expected = PolicyException.class)
+  public void testStdPolicyEnginPushPolicy_EmptyPolicyScope_Exception() throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        assertNotNull(actualResponse);
-    }
+    spyPolicyEngine.pushPolicy("", null, null, null, null);
+  }
 
-    @Test
-    public void testStdPolicyEnginCreateUpdateConfigPolicy_PolicyParameters_noException() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
+  @Test(expected = PolicyException.class)
+  public void testStdPolicyEnginPushPolicy_EmptyPolicyName_Exception() throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        final ResponseEntity<String> stubbedResponse = new ResponseEntity<>("Successful", HttpStatus.OK);
+    spyPolicyEngine.pushPolicy("POLICY_SCOPE", "", null, null, null);
+  }
 
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(UPDATE_POLICY_RESOURCE_NAME), eq(HttpMethod.PUT),
-                any(), any());
+  @Test
+  public void testStdPolicyEnginPushPolicy_PolicyParameters_noException() throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-        final String actualResponse = spyPolicyEngine.createUpdateConfigPolicy("POLICY_NAME", ONAP_NAME_VAL,
-                ONAP_NAME_VAL, "CONFIG_NAME", Collections.emptyMap(), PolicyType.JSON.toString().toUpperCase(), "",
-                "POLICY_SCOPE", REQUEST_UUID, "", "", "", new Date().toString(), true);
+    final ResponseEntity<String> stubbedResponse =
+        new ResponseEntity<>("Successful", HttpStatus.OK);
 
-        assertNotNull(actualResponse);
-    }
-
-    @Test(expected = PolicyException.class)
-    public void testStdPolicyEnginCreateUpdateConfigPolicy_NullPolicyName_Exception() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
-
-        spyPolicyEngine.createUpdateConfigPolicy(null, null, null, null, null, null, null, null, null, null, null, null,
-                null, true);
-    }
-
-    @Test
-    public void testStdPolicyEnginCreateUpdateConfigFirewallPolicy_PolicyParameters_noException() throws Exception {
-        final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
-
-        final ResponseEntity<String> stubbedResponse = new ResponseEntity<>("Successful", HttpStatus.OK);
-
-        doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(UPDATE_POLICY_RESOURCE_NAME), eq(HttpMethod.PUT),
-                any(), any());
-
-        final String actualResponse =
-                spyPolicyEngine.createUpdateConfigFirewallPolicy("POLICY_NAME", getJsonObject(JSON_CONFIGURATION),
-                        "POLICY_SCOPE", REQUEST_UUID, "", "", "", new Date().toString(), true);
-
-        assertNotNull(actualResponse);
-    }
-
-    private JsonObject getJsonObject(final String jsonString) {
-        try (final JsonReader jsonReader = Json.createReader(new StringReader(jsonString));) {
-            return jsonReader.readObject();
-        }
-    }
-
-    private StdPolicyEngine getSpyPolicyEngine() throws IOException, PolicyEngineException {
-        return getSpyPolicyEngine(CONFIG_PROPERTIES_FILE, getDefaultProperties());
-    }
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(PUSH_POLICY_RESOURCE_NAME),
+        eq(HttpMethod.PUT), any(), any());
 
-    private StdPolicyEngine getSpyPolicyEngine(final String filename, final Properties properties)
-            throws IOException, PolicyEngineException {
-        final File file = temporaryFolder.newFile(filename);
+    final String actualResponse = spyPolicyEngine.pushPolicy("POLICY_SCOPE", ONAP_NAME_VAL,
+        "POLICY_TYPE", "POLICY_GROUP", REQUEST_UUID);
 
-        creatPropertyFile(file, properties);
+    assertNotNull(actualResponse);
+  }
 
-        final StdPolicyEngine spyPolicyEngine = spy(new StdPolicyEngine(file.toString(), (String) null));
-        spyPolicyEngine.setScheme(NotificationScheme.MANUAL_NOTIFICATIONS);
-        return spyPolicyEngine;
-    }
+  @Test
+  public void testStdPolicyEnginCreateUpdateConfigPolicy_PolicyParameters_noException()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-    private Properties getDefaultProperties() {
-        final Properties properties = new Properties();
-        properties.setProperty(PDP_URL_PROP_NAME, PDP_PROP_VALUE);
-        properties.setProperty(CLIENT_ID_PROP_NAME, "test");
-        properties.setProperty(CLIENT_KEY_PROP_NAME, "test");
-        properties.setProperty(NOTIFICATION_TYPE_PROP_NAME, UEB + COMMA + DMAAP);
-        properties.setProperty(NOTIFICATION_SERVERS_PROP_NAME, SERVER_NAME + COMMA + SERVER_NAME);
-        properties.setProperty(NOTIFICATION_TOPIC_PROP_NAME, "test");
-        properties.setProperty(ENVIRONMENT_PROP_NAME, "TEST");
-        properties.setProperty(PolicyConfigConstants.JUNIT_PROP_NAME, "false");
-        return properties;
-    }
+    final ResponseEntity<String> stubbedResponse =
+        new ResponseEntity<>("Successful", HttpStatus.OK);
 
-    private StdDecisionResponse getStdDecisionResponse() {
-        final StdDecisionResponse response = new StdDecisionResponse();
-        response.setDecision(PolicyDecision.PERMIT);
-        response.setDetails(PolicyDecision.PERMIT.name());
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(UPDATE_POLICY_RESOURCE_NAME),
+        eq(HttpMethod.PUT), any(), any());
 
-        return response;
-    }
+    final String actualResponse =
+        spyPolicyEngine.createUpdateConfigPolicy("POLICY_NAME", ONAP_NAME_VAL, ONAP_NAME_VAL,
+            "CONFIG_NAME", Collections.emptyMap(), PolicyType.JSON.toString().toUpperCase(), "",
+            "POLICY_SCOPE", REQUEST_UUID, "", "", "", new Date().toString(), true);
 
-    private APIDictionaryResponse getAPIDictionaryResponse() {
-        final APIDictionaryResponse response = new APIDictionaryResponse();
-        response.setResponseCode(0);
-        response.setResponseMessage("");
-        response.setDictionaryData(Collections.<String, String>emptyMap());
-        response.setDictionaryJson(Collections.<String, String>emptyMap());
-        return response;
-    }
+    assertNotNull(actualResponse);
+  }
 
-    private StdPolicyResponse[] getStdPolicyResponse() {
-        final StdPolicyResponse response = new StdPolicyResponse();
-        response.setPolicyResponseStatus(PolicyResponseStatus.ACTION_TAKEN);
-        return new StdPolicyResponse[] {response};
-    }
+  @Test(expected = PolicyException.class)
+  public void testStdPolicyEnginCreateUpdateConfigPolicy_NullPolicyName_Exception()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-    private void creatPropertyFile(final File file, final Properties properties) throws IOException {
-        try (final BufferedWriter bufferedWriter = Files.newBufferedWriter(file.toPath());) {
-            properties.store(bufferedWriter, COMMENTS);
-        }
-    }
+    spyPolicyEngine.createUpdateConfigPolicy(null, null, null, null, null, null, null, null, null,
+        null, null, null, null, true);
+  }
+
+  @Test
+  public void testStdPolicyEnginCreateUpdateConfigFirewallPolicy_PolicyParameters_noException()
+      throws Exception {
+    final StdPolicyEngine spyPolicyEngine = getSpyPolicyEngine();
 
-    private APIPolicyConfigResponse[] getAPIPolicyConfigResponse(final PolicyType policyType,
-            final String configuration) {
-
-        return getAPIPolicyConfigResponse(policyType, configuration, null);
-    }
-
-    private APIPolicyConfigResponse[] getAPIPolicyConfigResponse(final PolicyType policyType,
-            final String configuration, final String policyConfigMessage) {
-        final APIPolicyConfigResponse configResponse = new APIPolicyConfigResponse();
-        configResponse.setConfig(configuration);
-        configResponse.setMatchingConditions(getMatchingConditions());
-        configResponse.setPolicyConfigStatus(PolicyConfigStatus.CONFIG_RETRIEVED);
-        configResponse.setPolicyName(POLICY_NAME);
-        configResponse.setPolicyType(PolicyConfigType.BRMS_RAW);
-        configResponse.setType(policyType);
-        configResponse.setPolicyVersion(POLICY_VERSION);
-        configResponse.setProperty(Collections.emptyMap());
-        configResponse.setPolicyConfigMessage(policyConfigMessage);
-
-        return new APIPolicyConfigResponse[] {configResponse};
-    }
-
-    private Map<String, String> getMatchingConditions() {
-        final Map<String, String> attributes = new HashMap<>();
-        attributes.put(ONAP_NAME, POLICY_NAME);
-        attributes.put(CONFIG_NAME, "Configuration_name");
-        return attributes;
-    }
+    final ResponseEntity<String> stubbedResponse =
+        new ResponseEntity<>("Successful", HttpStatus.OK);
+
+    doReturn(stubbedResponse).when(spyPolicyEngine).callNewPDP(eq(UPDATE_POLICY_RESOURCE_NAME),
+        eq(HttpMethod.PUT), any(), any());
+
+    final String actualResponse = spyPolicyEngine.createUpdateConfigFirewallPolicy("POLICY_NAME",
+        getJsonObject(JSON_CONFIGURATION), "POLICY_SCOPE", REQUEST_UUID, "", "", "",
+        new Date().toString(), true);
+
+    assertNotNull(actualResponse);
+  }
+
+  private JsonObject getJsonObject(final String jsonString) {
+    try (final JsonReader jsonReader = Json.createReader(new StringReader(jsonString));) {
+      return jsonReader.readObject();
+    }
+  }
+
+  private StdPolicyEngine getSpyPolicyEngine() throws IOException, PolicyEngineException {
+    return getSpyPolicyEngine(CONFIG_PROPERTIES_FILE, getDefaultProperties());
+  }
+
+  private StdPolicyEngine getSpyPolicyEngine(final String filename, final Properties properties)
+      throws IOException, PolicyEngineException {
+    final File file = temporaryFolder.newFile(filename);
+
+    creatPropertyFile(file, properties);
+
+    final StdPolicyEngine spyPolicyEngine =
+        spy(new StdPolicyEngine(file.toString(), (String) null));
+    spyPolicyEngine.setScheme(NotificationScheme.MANUAL_NOTIFICATIONS);
+    return spyPolicyEngine;
+  }
+
+  private Properties getDefaultProperties() {
+    final Properties properties = new Properties();
+    properties.setProperty(PDP_URL_PROP_NAME, PDP_PROP_VALUE);
+    properties.setProperty(CLIENT_ID_PROP_NAME, "test");
+    properties.setProperty(CLIENT_KEY_PROP_NAME, "test");
+    properties.setProperty(NOTIFICATION_TYPE_PROP_NAME, UEB + COMMA + DMAAP);
+    properties.setProperty(NOTIFICATION_SERVERS_PROP_NAME, SERVER_NAME + COMMA + SERVER_NAME);
+    properties.setProperty(NOTIFICATION_TOPIC_PROP_NAME, "test");
+    properties.setProperty(ENVIRONMENT_PROP_NAME, "TEST");
+    properties.setProperty(PolicyConfigConstants.JUNIT_PROP_NAME, "false");
+    return properties;
+  }
+
+  private StdDecisionResponse getStdDecisionResponse() {
+    final StdDecisionResponse response = new StdDecisionResponse();
+    response.setDecision(PolicyDecision.PERMIT);
+    response.setDetails(PolicyDecision.PERMIT.name());
+
+    return response;
+  }
+
+  private APIDictionaryResponse getAPIDictionaryResponse() {
+    final APIDictionaryResponse response = new APIDictionaryResponse();
+    response.setResponseCode(0);
+    response.setResponseMessage("");
+    response.setDictionaryData(Collections.<String, String>emptyMap());
+    response.setDictionaryJson(Collections.<String, String>emptyMap());
+    return response;
+  }
+
+  private StdPolicyResponse[] getStdPolicyResponse() {
+    final StdPolicyResponse response = new StdPolicyResponse();
+    response.setPolicyResponseStatus(PolicyResponseStatus.ACTION_TAKEN);
+    return new StdPolicyResponse[] {response};
+  }
+
+  private void creatPropertyFile(final File file, final Properties properties) throws IOException {
+    try (final BufferedWriter bufferedWriter = Files.newBufferedWriter(file.toPath());) {
+      properties.store(bufferedWriter, COMMENTS);
+    }
+  }
+
+  private APIPolicyConfigResponse[] getAPIPolicyConfigResponse(final PolicyType policyType,
+      final String configuration) {
+
+    return getAPIPolicyConfigResponse(policyType, configuration, null);
+  }
+
+  private APIPolicyConfigResponse[] getAPIPolicyConfigResponse(final PolicyType policyType,
+      final String configuration, final String policyConfigMessage) {
+    final APIPolicyConfigResponse configResponse = new APIPolicyConfigResponse();
+    configResponse.setConfig(configuration);
+    configResponse.setMatchingConditions(getMatchingConditions());
+    configResponse.setPolicyConfigStatus(PolicyConfigStatus.CONFIG_RETRIEVED);
+    configResponse.setPolicyName(POLICY_NAME);
+    configResponse.setPolicyType(PolicyConfigType.BRMS_RAW);
+    configResponse.setType(policyType);
+    configResponse.setPolicyVersion(POLICY_VERSION);
+    configResponse.setProperty(Collections.emptyMap());
+    configResponse.setPolicyConfigMessage(policyConfigMessage);
+
+    return new APIPolicyConfigResponse[] {configResponse};
+  }
+
+  private Map<String, String> getMatchingConditions() {
+    final Map<String, String> attributes = new HashMap<>();
+    attributes.put(ONAP_NAME, POLICY_NAME);
+    attributes.put(CONFIG_NAME, "Configuration_name");
+    return attributes;
+  }
 
 }
diff --git a/PolicyEngineUtils/src/test/java/org/onap/policy/utils/test/BackUpMonitorEntityTest.java b/PolicyEngineUtils/src/test/java/org/onap/policy/utils/test/BackUpMonitorEntityTest.java
new file mode 100644 (file)
index 0000000..f77fe72
--- /dev/null
@@ -0,0 +1,52 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * PolicyEngineUtils
+ * ================================================================================
+ * Copyright (C) 2018 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * 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.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.policy.utils.test;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import java.util.Date;
+import org.junit.Test;
+import org.onap.policy.jpa.BackUpMonitorEntity;
+
+public class BackUpMonitorEntityTest {
+  @Test
+  public void testEntity() {
+    String value = "testVal";
+    Date date = new Date();
+
+    BackUpMonitorEntity entity = new BackUpMonitorEntity();
+    assertNotNull(entity);
+
+    entity.setResourceName(value);
+    entity.setResourceNodeName(value);
+    entity.setFlag(value);
+    entity.setNotificationRecord(value);
+    entity.prePersist();
+    entity.preUpdate();
+    entity.setTimeStamp(date);
+
+    assertEquals(value, entity.getResourceName());
+    assertEquals(value, entity.getResourceNodeName());
+    assertEquals(value, entity.getFlag());
+    assertEquals(value, entity.getNotificationRecord());
+    assertEquals(date, entity.getTimeStamp());
+  }
+}