OpenJDK / bsd-port / jdk9 / langtools
changeset 3350:c0b062e1effd
8154500: fix handling of jdk.launcher.patch.* in tests
Reviewed-by: ksrini
author | jjg |
---|---|
date | Mon, 18 Apr 2016 19:14:50 -0700 |
parents | f6848c7b9e45 |
children | d30f35629f0e |
files | test/jdk/javadoc/tool/6964914/TestStdDoclet.java test/jdk/javadoc/tool/6964914/TestUserDoclet.java test/tools/javadoc/6964914/TestStdDoclet.java test/tools/javadoc/6964914/TestUserDoclet.java |
diffstat | 4 files changed, 58 insertions(+), 19 deletions(-) [+] |
line wrap: on
line diff
--- a/test/jdk/javadoc/tool/6964914/TestStdDoclet.java Mon Apr 18 18:41:38 2016 -0700 +++ b/test/jdk/javadoc/tool/6964914/TestStdDoclet.java Mon Apr 18 19:14:50 2016 -0700 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011, 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 @@ -28,6 +28,7 @@ */ import java.io.*; +import java.util.*; /** * Dummy javadoc comment. @@ -54,13 +55,21 @@ // run javadoc in separate process to ensure doclet executed under // normal user conditions w.r.t. classloader String thisClassName = TestStdDoclet.class.getName(); - Process p = new ProcessBuilder() - .command(javadoc.getPath(), - "-J-Xpatch:" + System.getProperty("jdk.launcher.patch.0", ""), + List<String> cmdArgs = new ArrayList<>(); + cmdArgs.add(javadoc.getPath()); + int i = 0; + String prop; + while ((prop = System.getProperty("jdk.launcher.patch." + (i++))) != null) { + cmdArgs.add("-J-Xpatch:" + prop); + } + cmdArgs.addAll(Arrays.asList( "-classpath", ".", // insulates us from ambient classpath "-Xdoclint:none", "-package", - new File(testSrc, thisClassName + ".java").getPath()) + new File(testSrc, thisClassName + ".java").getPath() + )); + Process p = new ProcessBuilder() + .command(cmdArgs) .redirectErrorStream(true) .start();
--- a/test/jdk/javadoc/tool/6964914/TestUserDoclet.java Mon Apr 18 18:41:38 2016 -0700 +++ b/test/jdk/javadoc/tool/6964914/TestUserDoclet.java Mon Apr 18 19:14:50 2016 -0700 @@ -30,7 +30,10 @@ import java.io.*; +import java.util.ArrayList; +import java.util.Arrays; import java.util.Collections; +import java.util.List; import java.util.Locale; import java.util.Set; @@ -63,12 +66,20 @@ // run javadoc in separate process to ensure doclet executed under // normal user conditions w.r.t. classloader String thisClassName = TestUserDoclet.class.getName(); - Process p = new ProcessBuilder() - .command(javadoc.getPath(), - "-J-Xpatch:" + System.getProperty("jdk.launcher.patch.0", ""), + List<String> cmdArgs = new ArrayList<>(); + cmdArgs.add(javadoc.getPath()); + int i = 0; + String prop; + while ((prop = System.getProperty("jdk.launcher.patch." + (i++))) != null) { + cmdArgs.add("-J-Xpatch:" + prop); + } + cmdArgs.addAll(Arrays.asList( "-doclet", thisClassName, "-docletpath", testClasses.getPath(), - new File(testSrc, thisClassName + ".java").getPath()) + new File(testSrc, thisClassName + ".java").getPath() + )); + Process p = new ProcessBuilder() + .command(cmdArgs) .redirectErrorStream(true) .start();
--- a/test/tools/javadoc/6964914/TestStdDoclet.java Mon Apr 18 18:41:38 2016 -0700 +++ b/test/tools/javadoc/6964914/TestStdDoclet.java Mon Apr 18 19:14:50 2016 -0700 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011, 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 @@ -28,6 +28,7 @@ */ import java.io.*; +import java.util.*; /** * Dummy javadoc comment. @@ -54,13 +55,21 @@ // run javadoc in separate process to ensure doclet executed under // normal user conditions w.r.t. classloader String thisClassName = TestStdDoclet.class.getName(); - Process p = new ProcessBuilder() - .command(javadoc.getPath(), - "-J-Xpatch:" + System.getProperty("jdk.launcher.patch.0", ""), + List<String> cmdArgs = new ArrayList<>(); + cmdArgs.add(javadoc.getPath()); + int i = 0; + String prop; + while ((prop = System.getProperty("jdk.launcher.patch." + (i++))) != null) { + cmdArgs.add("-J-Xpatch:" + prop); + } + cmdArgs.addAll(Arrays.asList( "-classpath", ".", // insulates us from ambient classpath "-Xdoclint:none", "-package", - new File(testSrc, thisClassName + ".java").getPath()) + new File(testSrc, thisClassName + ".java").getPath() + )); + Process p = new ProcessBuilder() + .command(cmdArgs) .redirectErrorStream(true) .start();
--- a/test/tools/javadoc/6964914/TestUserDoclet.java Mon Apr 18 18:41:38 2016 -0700 +++ b/test/tools/javadoc/6964914/TestUserDoclet.java Mon Apr 18 19:14:50 2016 -0700 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2011, 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 @@ -29,6 +29,8 @@ */ import java.io.*; +import java.util.*; + import com.sun.javadoc.Doclet; import com.sun.javadoc.RootDoc; @@ -55,12 +57,20 @@ // run javadoc in separate process to ensure doclet executed under // normal user conditions w.r.t. classloader String thisClassName = TestUserDoclet.class.getName(); - Process p = new ProcessBuilder() - .command(javadoc.getPath(), - "-J-Xpatch:" + System.getProperty("jdk.launcher.patch.0", ""), + List<String> cmdArgs = new ArrayList<>(); + cmdArgs.add(javadoc.getPath()); + int i = 0; + String prop; + while ((prop = System.getProperty("jdk.launcher.patch." + (i++))) != null) { + cmdArgs.add("-J-Xpatch:" + prop); + } + cmdArgs.addAll(Arrays.asList( "-doclet", thisClassName, "-docletpath", testClasses.getPath(), - new File(testSrc, thisClassName + ".java").getPath()) + new File(testSrc, thisClassName + ".java").getPath() + )); + Process p = new ProcessBuilder() + .command(cmdArgs) .redirectErrorStream(true) .start();