20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24 import jdk.test.lib.process.ProcessTools;
25
26 import java.io.File;
27 import java.io.FilePermission;
28 import java.nio.file.Files;
29 import java.nio.file.Paths;
30 import java.util.ArrayList;
31 import java.util.List;
32 import java.util.stream.Collectors;
33 import java.util.stream.IntStream;
34
35 /**
36 * @test
37 * @bug 8170364
38 * @summary FilePermission path modified during merge
39 * @library /test/lib
40 */
41
42 public class MergeName {
43
44 public static final String[] ALL_ACTIONS
45 = {"read", "write", "execute", "delete"};
46
47 public static void main(String[] args) throws Exception {
48 if (args.length == 0) {
49 test("p1", "read", "write", "delete", "execute");
50 test("p2", "read,write", "delete,execute");
51 test("p3", "read,write,delete", "execute");
52 test("p4", "read,write,delete,execute");
53 } else {
54 SecurityManager sm = System.getSecurityManager();
55 for (String arg : args) {
56 // Use bits to create powerset of ALL_ACTIONS
57 IntStream.range(1, 16)
58 .mapToObj(n -> IntStream.range(0, 4)
59 .filter(x -> (n & (1 << x)) != 0)
|
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 */
23
24 import jdk.test.lib.process.ProcessTools;
25
26 import java.io.File;
27 import java.io.FilePermission;
28 import java.nio.file.Files;
29 import java.nio.file.Paths;
30 import java.util.ArrayList;
31 import java.util.List;
32 import java.util.stream.Collectors;
33 import java.util.stream.IntStream;
34
35 /**
36 * @test
37 * @bug 8170364
38 * @summary FilePermission path modified during merge
39 * @library /test/lib
40 * @build jdk.test.lib.Utils
41 * jdk.test.lib.Asserts
42 * jdk.test.lib.JDKToolFinder
43 * jdk.test.lib.JDKToolLauncher
44 * jdk.test.lib.Platform
45 * jdk.test.lib.process.*
46 * @run main MergeName
47 */
48
49 public class MergeName {
50
51 public static final String[] ALL_ACTIONS
52 = {"read", "write", "execute", "delete"};
53
54 public static void main(String[] args) throws Exception {
55 if (args.length == 0) {
56 test("p1", "read", "write", "delete", "execute");
57 test("p2", "read,write", "delete,execute");
58 test("p3", "read,write,delete", "execute");
59 test("p4", "read,write,delete,execute");
60 } else {
61 SecurityManager sm = System.getSecurityManager();
62 for (String arg : args) {
63 // Use bits to create powerset of ALL_ACTIONS
64 IntStream.range(1, 16)
65 .mapToObj(n -> IntStream.range(0, 4)
66 .filter(x -> (n & (1 << x)) != 0)
|