< prev index next >

test/javax/xml/jaxp/unittest/transform/CR6551600Test.java

Print this page

        

@@ -1,7 +1,7 @@
 /*
- * Copyright (c) 2014, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
  * under the terms of the GNU General Public License version 2 only, as
  * published by the Free Software Foundation.

@@ -22,46 +22,46 @@
  */
 
 package transform;
 
 import java.io.File;
+import java.io.FilePermission;
 
 import javax.xml.parsers.DocumentBuilder;
 import javax.xml.parsers.DocumentBuilderFactory;
 import javax.xml.transform.Transformer;
 import javax.xml.transform.TransformerFactory;
 import javax.xml.transform.dom.DOMSource;
 import javax.xml.transform.stream.StreamResult;
 
+import jaxp.library.JAXPTestUtilities;
+
 import org.testng.Assert;
+import org.testng.annotations.Listeners;
 import org.testng.annotations.Test;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 
 /*
  * @bug 6551600
  * @summary Test using UNC path as StreamResult.
  */
+@Listeners({ jaxp.library.BasePolicy.class })
 public class CR6551600Test {
 
     @Test
     public final void testUNCPath() {
+        boolean isWindows = System.getProperty("os.name").contains("Windows");
+        JAXPTestUtilities.runWithTmpPermission(() -> {
         String hostName = "";
         try {
             hostName = java.net.InetAddress.getLocalHost().getHostName();
         } catch (java.net.UnknownHostException e) {
             // falls through
         }
 
-        String path = "\\\\" + hostName + "\\C$\\xslt_unc_test.xml";
-        String os = System.getProperty("os.name");
-        if (os.indexOf("Windows") < 0) {
-            path = "///tmp/test.xml";
-        }
-        else {
-                policy.PolicyUtil.changePolicy(getClass().getResource("CR6551600.policy").getFile());
-        }
+            String path = isWindows ? "\\\\" + hostName + "\\C$\\xslt_unc_test.xml" : "///tmp/test.xml";
 
         try {
             DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
             DocumentBuilder builder = factory.newDocumentBuilder();
             Document doc = builder.newDocument();

@@ -82,7 +82,9 @@
 
         File file = new File(path);
         if (file.exists()) {
             file.deleteOnExit();
         }
+        }, isWindows ? new FilePermission("//localhost/C$/xslt_unc_test.xml", "read, write, delete")
+                : new FilePermission("///tmp/test.xml", "read, write, delete"));
     }
 }
< prev index next >