< prev index next >
test/tools/launcher/ArgsEnvVar.java
Print this page
*** 38,48 ****
public class ArgsEnvVar extends TestHelper {
private static File testJar = null;
private static Map<String, String> env = new HashMap<>();
! private static String JAVA_OPTIONS = "JAVA_OPTIONS";
static void init() throws IOException {
if (testJar != null) {
return;
}
--- 38,48 ----
public class ArgsEnvVar extends TestHelper {
private static File testJar = null;
private static Map<String, String> env = new HashMap<>();
! private static String JDK_JAVA_OPTIONS = "JDK_JAVA_OPTIONS";
static void init() throws IOException {
if (testJar != null) {
return;
}
*** 103,113 ****
public void basic() throws IOException {
File argFile1 = createArgFile("argFile1", List.of("-Xmx32m"));
File argFile2 = createArgFile("argFile2", List.of("-Darg.file2=TWO"));
File argFile3 = createArgFile("argFile3", List.of("-Darg.file3=THREE"));
! env.put(JAVA_OPTIONS, "@argFile1\n-Xint\r-cp @@escaped\t@argFile2");
TestResult tr = doExec(env, javaCmd, "@argFile3", "-cp", "test.jar", "Foo", "uarg1", "@uarg2");
List<String> appArgs = new ArrayList<>();
appArgs.add("uarg1");
--- 103,113 ----
public void basic() throws IOException {
File argFile1 = createArgFile("argFile1", List.of("-Xmx32m"));
File argFile2 = createArgFile("argFile2", List.of("-Darg.file2=TWO"));
File argFile3 = createArgFile("argFile3", List.of("-Darg.file3=THREE"));
! env.put(JDK_JAVA_OPTIONS, "@argFile1\n-Xint\r-cp @@escaped\t@argFile2");
TestResult tr = doExec(env, javaCmd, "@argFile3", "-cp", "test.jar", "Foo", "uarg1", "@uarg2");
List<String> appArgs = new ArrayList<>();
appArgs.add("uarg1");
*** 131,147 ****
argFile2.delete();
argFile3.delete();
}
private TestResult testInEnv(List<String> options) {
! env.put(JAVA_OPTIONS, String.join(" ", options));
return doExec(env, javaCmd, "-jar", "test.jar");
}
private TestResult testInEnvAsArgFile(List<String> options) throws IOException {
File argFile = createArgFile("argFile", options);
! env.put(JAVA_OPTIONS, "@argFile");
TestResult tr = doExec(env, javaCmd, "-jar", "test.jar");
argFile.delete();
return tr;
}
--- 131,147 ----
argFile2.delete();
argFile3.delete();
}
private TestResult testInEnv(List<String> options) {
! env.put(JDK_JAVA_OPTIONS, String.join(" ", options));
return doExec(env, javaCmd, "-jar", "test.jar");
}
private TestResult testInEnvAsArgFile(List<String> options) throws IOException {
File argFile = createArgFile("argFile", options);
! env.put(JDK_JAVA_OPTIONS, "@argFile");
TestResult tr = doExec(env, javaCmd, "-jar", "test.jar");
argFile.delete();
return tr;
}
*** 185,195 ****
@Test
public void quote() throws IOException {
File argFile1 = createArgFile("arg File 1", List.of("-Xint"));
File argFile2 = createArgFile("arg File 2", List.of("-Dprop='value with spaces'"));
File argFile3 = createArgFile("arg File 3", List.of("-Xmx32m"));
! env.put(JAVA_OPTIONS, "'@arg File 1' @\"arg File 2\" @'arg File'\" 3\"");
TestResult tr = doExec(env, javaCmd, "-jar", "test.jar");
List<String> options = new ArrayList<>();
options.add("-Xint");
options.add("-Dprop=value with spaces");
--- 185,195 ----
@Test
public void quote() throws IOException {
File argFile1 = createArgFile("arg File 1", List.of("-Xint"));
File argFile2 = createArgFile("arg File 2", List.of("-Dprop='value with spaces'"));
File argFile3 = createArgFile("arg File 3", List.of("-Xmx32m"));
! env.put(JDK_JAVA_OPTIONS, "'@arg File 1' @\"arg File 2\" @'arg File'\" 3\"");
TestResult tr = doExec(env, javaCmd, "-jar", "test.jar");
List<String> options = new ArrayList<>();
options.add("-Xint");
options.add("-Dprop=value with spaces");
*** 202,227 ****
argFile3.delete();
}
@Test
public void openQuoteShouldFail() {
! env.put(JAVA_OPTIONS, "-Dprop='value missing close quote");
TestResult tr = doExec(env, javaCmd, "-version");
tr.checkNegative();
if (!tr.testStatus) {
System.out.println(tr);
throw new RuntimeException("test fails");
}
}
@Test
public void noWildcard() {
! env.put(JAVA_OPTIONS, "-cp *");
TestResult tr = doExec(env, javaCmd, "-jar", "test.jar");
verifyOptions(List.of("-cp", "*", "-jar", "test.jar"), tr);
! env.put(JAVA_OPTIONS, "-p ?");
tr = doExec(env, javaCmd, "-jar", "test.jar", "one", "two");
verifyOptions(List.of("-p", "?", "-jar", "test.jar", "one", "two"), tr);
}
public static void main(String... args) throws Exception {
--- 202,227 ----
argFile3.delete();
}
@Test
public void openQuoteShouldFail() {
! env.put(JDK_JAVA_OPTIONS, "-Dprop='value missing close quote");
TestResult tr = doExec(env, javaCmd, "-version");
tr.checkNegative();
if (!tr.testStatus) {
System.out.println(tr);
throw new RuntimeException("test fails");
}
}
@Test
public void noWildcard() {
! env.put(JDK_JAVA_OPTIONS, "-cp *");
TestResult tr = doExec(env, javaCmd, "-jar", "test.jar");
verifyOptions(List.of("-cp", "*", "-jar", "test.jar"), tr);
! env.put(JDK_JAVA_OPTIONS, "-p ?");
tr = doExec(env, javaCmd, "-jar", "test.jar", "one", "two");
verifyOptions(List.of("-p", "?", "-jar", "test.jar", "one", "two"), tr);
}
public static void main(String... args) throws Exception {
< prev index next >