Xacml PDP Register/Unregister Changes
[policy/xacml-pdp.git] / main / src / test / java / org / onap / policy / pdpx / main / rest / TestXacmlPdpStatistics.java
index ee05ff0..5b08aa8 100644 (file)
 
 package org.onap.policy.pdpx.main.rest;
 
+import static org.assertj.core.api.Assertions.assertThat;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
 
+import java.io.File;
 import java.io.IOException;
 import javax.ws.rs.client.Client;
 import javax.ws.rs.client.ClientBuilder;
@@ -32,7 +34,11 @@ import javax.ws.rs.client.WebTarget;
 import javax.ws.rs.core.MediaType;
 import org.glassfish.jersey.client.ClientConfig;
 import org.glassfish.jersey.client.authentication.HttpAuthenticationFeature;
+import org.junit.BeforeClass;
+import org.junit.ClassRule;
 import org.junit.Test;
+import org.junit.rules.TemporaryFolder;
+import org.onap.policy.common.endpoints.event.comm.client.TopicSinkClientException;
 import org.onap.policy.common.utils.network.NetworkUtil;
 import org.onap.policy.pdpx.main.PolicyXacmlPdpException;
 import org.onap.policy.pdpx.main.parameters.CommonTestData;
@@ -50,6 +56,22 @@ import org.slf4j.LoggerFactory;
 public class TestXacmlPdpStatistics {
 
     private static final Logger LOGGER = LoggerFactory.getLogger(TestXacmlPdpStatistics.class);
+    private static File applicationPath;
+
+    @ClassRule
+    public static final TemporaryFolder applicationFolder = new TemporaryFolder();
+
+    /**
+     * Turn off some debugging and create temporary folder for applications.
+     *
+     * @throws IOException If temporary folder fails
+     */
+    @BeforeClass
+    public static void beforeClass() throws IOException {
+        System.setProperty("org.eclipse.jetty.util.log.class", "org.eclipse.jetty.util.log.StdErrLog");
+        System.setProperty("org.eclipse.jetty.LEVEL", "OFF");
+        applicationPath = applicationFolder.newFolder();
+    }
 
     @Test
     public void testXacmlPdpStatistics_200() throws PolicyXacmlPdpException, InterruptedException {
@@ -57,6 +79,7 @@ public class TestXacmlPdpStatistics {
             final Main main = startXacmlPdpService();
             StatisticsReport report = getXacmlPdpStatistics();
             validateReport(report, 0, 200);
+            assertThat(report.getTotalPolicyTypesCount()).isGreaterThan(0);
             updateXacmlPdpStatistics();
             report = getXacmlPdpStatistics();
             validateReport(report, 1, 200);
@@ -72,7 +95,8 @@ public class TestXacmlPdpStatistics {
     public void testXacmlPdpStatistics_500() throws InterruptedException {
         final RestServerParameters restServerParams = new CommonTestData().getRestServerParameters(false);
         restServerParams.setName(CommonTestData.PDPX_GROUP_NAME);
-        final XacmlPdpRestServer restServer = new XacmlPdpRestServer(restServerParams);
+        final XacmlPdpRestServer restServer = new XacmlPdpRestServer(restServerParams,
+                applicationPath.getAbsolutePath());
 
         try {
             restServer.start();
@@ -87,8 +111,9 @@ public class TestXacmlPdpStatistics {
     }
 
 
-    private Main startXacmlPdpService() {
-        final String[] XacmlPdpConfigParameters = {"-c", "parameters/XacmlPdpConfigParameters.json"};
+    private Main startXacmlPdpService() throws TopicSinkClientException {
+        final String[] XacmlPdpConfigParameters = {"-c", "parameters/XacmlPdpConfigParameters.json", "-p",
+            "parameters/topic.properties"};
         return new Main(XacmlPdpConfigParameters);
     }