Format ONAP-XACML and add JUnit
[policy/engine.git] / ONAP-XACML / src / test / java / org / onap / policy / xacml / test / util / XACMLPolicyWriterTest.java
index 0a3a5e0..1ec1616 100644 (file)
@@ -2,14 +2,16 @@
  * ============LICENSE_START=======================================================
  * ONAP-XACML
  * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2017-2019 AT&T Intellectual Property. All rights reserved.
+ * ================================================================================
+ * Modifications Copyright (C) 2019 Samsung
  * ================================================================================
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
- * 
+ *
  *      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.
  * limitations under the License.
  * ============LICENSE_END=========================================================
  */
+
 package org.onap.policy.xacml.test.util;
 
 import static org.junit.Assert.assertNotNull;
 import static org.junit.Assert.assertTrue;
+
 import java.io.ByteArrayOutputStream;
 import java.io.File;
 import java.io.IOException;
 import java.io.OutputStream;
 import java.nio.file.Path;
-import java.nio.file.Paths;
+
+import oasis.names.tc.xacml._3_0.core.schema.wd_17.PolicySetType;
+import oasis.names.tc.xacml._3_0.core.schema.wd_17.PolicyType;
+
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.junit.Before;
 import org.junit.Test;
 import org.onap.policy.xacml.util.XACMLPolicyWriter;
-import oasis.names.tc.xacml._3_0.core.schema.wd_17.PolicySetType;
-import oasis.names.tc.xacml._3_0.core.schema.wd_17.PolicyType;
 
 public class XACMLPolicyWriterTest {
-  private static final Log logger = LogFactory.getLog(XACMLPolicyWriterTest.class);
-  private static Path configPolicyPathValue;
-  private static Path actionPolicyPathValue;
+    private static final Log logger = LogFactory.getLog(XACMLPolicyWriterTest.class);
+    private static Path configPolicyPathValue;
+    private static Path actionPolicyPathValue;
+
+    @Before
+    public void setUp() {
+        File templateFile;
+        ClassLoader classLoader = getClass().getClassLoader();
+        try {
+            templateFile = new File(classLoader.getResource("Config_SampleTest1206.1.xml").getFile());
+            configPolicyPathValue = templateFile.toPath();
+            templateFile = new File(classLoader.getResource("Action_TestActionPolicy.1.xml").getFile());
+            actionPolicyPathValue = templateFile.toPath();
+        } catch (Exception e1) {
+            logger.error("Exception Occured" + e1);
+        }
+    }
 
-  @Before
-  public void setUp() {
-    File templateFile;
-    ClassLoader classLoader = getClass().getClassLoader();
-    try {
-      templateFile = new File(classLoader.getResource("Config_SampleTest1206.1.xml").getFile());
-      configPolicyPathValue = templateFile.toPath();
-      templateFile = new File(classLoader.getResource("Action_TestActionPolicy.1.xml").getFile());
-      actionPolicyPathValue = templateFile.toPath();
-    } catch (Exception e1) {
-      logger.error("Exception Occured" + e1);
+    @SuppressWarnings("static-access")
+    @Test
+    public void xacmlPolicyWriterTest() throws IOException {
+        XACMLPolicyWriter writer = new XACMLPolicyWriter();
+        String configResponseValue = writer.changeFileNameInXmlWhenRenamePolicy(configPolicyPathValue);
+        assertTrue(configResponseValue.equals("txt"));
+        String actionResponseValue = writer.changeFileNameInXmlWhenRenamePolicy(actionPolicyPathValue);
+        assertTrue(actionResponseValue.equals("json"));
     }
-  }
 
-  @SuppressWarnings("static-access")
-  @Test
-  public void xacmlPolicyWriterTest() throws IOException {
-    XACMLPolicyWriter writer = new XACMLPolicyWriter();
-    String configResponseValue = writer.changeFileNameInXmlWhenRenamePolicy(configPolicyPathValue);
-    assertTrue(configResponseValue.equals("txt"));
-    String actionResponseValue = writer.changeFileNameInXmlWhenRenamePolicy(actionPolicyPathValue);
-    assertTrue(actionResponseValue.equals("json"));
-  }
+    @Test
+    public void testWrites() throws Exception {
+        // Set up test data
+        PolicyType policyType = new PolicyType();
+        OutputStream os = new ByteArrayOutputStream();
+        File tmpfile = File.createTempFile("foo", null);
+        Path filename = tmpfile.toPath();
+        PolicySetType policySet = new PolicySetType();
+
+        // delete tmp file before running the test
+        tmpfile.delete();
 
-  @Test
-  public void testWrites() {
-    // Set up test data
-    PolicyType policyType = new PolicyType();
-    OutputStream os = new ByteArrayOutputStream();
-    Path filename = Paths.get("/tmp/foo");
-    PolicySetType policySet = new PolicySetType();
+        // ensure its deleted after writePolicyFile() re-creates it
+        tmpfile.deleteOnExit();
 
-    // Test write combinations
-    assertNotNull(XACMLPolicyWriter.writePolicyFile(filename, policySet));
-    assertNotNull(XACMLPolicyWriter.writePolicyFile(filename, policyType));
-    assertNotNull(XACMLPolicyWriter.getXmlAsInputStream(policyType));
-    XACMLPolicyWriter.writePolicyFile(os, policySet);
-    assertNotNull(os.toString());
-    XACMLPolicyWriter.writePolicyFile(os, policyType);
-    assertNotNull(os.toString());
-  }
+        // Test write combinations
+        assertNotNull(XACMLPolicyWriter.writePolicyFile(filename, policySet));
+        assertNotNull(XACMLPolicyWriter.writePolicyFile(filename, policyType));
+        assertNotNull(XACMLPolicyWriter.getXmlAsInputStream(policyType));
+        XACMLPolicyWriter.writePolicyFile(os, policySet);
+        assertNotNull(os.toString());
+        XACMLPolicyWriter.writePolicyFile(os, policyType);
+        assertNotNull(os.toString());
+    }
 }