Skip to content

Commit d04ea1b

Browse files
committed
Fix VmArgumentTests
* remove '-Xjcl:' from the list of mandatory options * remove unnecessary field mandatoryArgumentsJava8 - only one of mandatoryArgumentsJava8 or mandatoryArguments is used; don't include null entries Signed-off-by: Keith W. Campbell <[email protected]>
1 parent e60b967 commit d04ea1b

File tree

1 file changed

+21
-40
lines changed

1 file changed

+21
-40
lines changed

test/functional/Java8andUp/src/org/openj9/test/vmArguments/VmArgumentTests.java

Lines changed: 21 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -103,9 +103,7 @@ public class VmArgumentTests {
103103
private static final String APPLICATION_NAME = ArgumentDumper.class.getCanonicalName();
104104
private static final String HELLO_WORLD = HelloWorld.class.getCanonicalName();
105105

106-
private static final String[] mandatoryArgumentsJava8;
107-
108-
private static final String[] mandatoryArguments;
106+
private static final List<String> mandatoryArguments;
109107
private static final String[] TEST_ARG_LIST = { "-Dtest.option1=testJavaToolOptions1", "-Dtest.option2=testJavaToolOptions2",
110108
"-Dtest.option3=testJavaToolOptions3", "-Dtest.option4=testJavaToolOptions4" };
111109
private static final String OPTIONS_FILE_SUFFIX = ".test_options_file";
@@ -133,39 +131,26 @@ public class VmArgumentTests {
133131
protected static Logger logger = Logger.getLogger(VmArgumentTests.class);
134132

135133
static {
136-
isIBM = System.getProperty("java.vm.vendor").equals("IBM Corporation");
137-
mandatoryArgumentsJava8 = new String[] {
138-
isIBM ? XOPTIONSFILE : null,
139-
"-Xlockword:mode",
140-
"-Xjcl:",
141-
"-Dcom.ibm.oti.vm.bootstrap.library.path",
142-
"-Dsun.boot.library.path",
143-
"-Djava.library.path",
144-
"-Djava.ext.dirs",
145-
DJAVA_HOME,
146-
"-Duser.dir",
147-
/* "-Djava.runtime.version", doesn't show up if -Xcheck:memory is used */
148-
"-Djava.class.path",
149-
"-Dsun.java.command",
150-
"-Dsun.java.launcher"
151-
};
134+
isIBM = "IBM Corporation".equals(System.getProperty("java.vm.vendor"));
135+
isJava8 = (8 == VersionCheck.major());
136+
137+
mandatoryArguments = new ArrayList<>();
138+
if (isIBM) {
139+
mandatoryArguments.add(XOPTIONSFILE);
140+
}
141+
mandatoryArguments.add("-Xlockword:mode");
142+
mandatoryArguments.add("-Dcom.ibm.oti.vm.bootstrap.library.path");
143+
mandatoryArguments.add("-Dsun.boot.library.path");
144+
mandatoryArguments.add("-Djava.library.path");
145+
if (isJava8) {
146+
mandatoryArguments.add("-Djava.ext.dirs");
147+
}
148+
mandatoryArguments.add(DJAVA_HOME);
149+
mandatoryArguments.add("-Duser.dir");
150+
mandatoryArguments.add("-Djava.class.path");
151+
mandatoryArguments.add("-Dsun.java.command");
152+
mandatoryArguments.add("-Dsun.java.launcher");
152153

153-
mandatoryArguments = new String[] {
154-
isIBM ? XOPTIONSFILE : null,
155-
"-Xlockword:mode",
156-
"-Xjcl:",
157-
"-Dcom.ibm.oti.vm.bootstrap.library.path",
158-
"-Dsun.boot.library.path",
159-
"-Djava.library.path",
160-
DJAVA_HOME,
161-
"-Duser.dir",
162-
/* "-Djava.runtime.version", doesn't show up if -Xcheck:memory is used */
163-
"-Djava.class.path",
164-
"-Dsun.java.command",
165-
"-Dsun.java.launcher"
166-
};
167-
int javaMajorVersion = VersionCheck.major();
168-
isJava8 = (8 == javaMajorVersion);
169154
vmargsJarFilename = "vmargs.jar";
170155
}
171156

@@ -1670,12 +1655,8 @@ private int runAndGetExitStatus(ProcessBuilder pb) {
16701655
private Map<String, Integer> checkArguments(List<String> actualArguments,
16711656
String[] optionalArguments) {
16721657
Map<String, Integer> argPositions = new HashMap<>();
1673-
String[] mArgs = (isJava8 ? mandatoryArgumentsJava8 : mandatoryArguments).clone();
16741658
List<String> missing = new ArrayList<>();
1675-
for (String m : mArgs) {
1676-
if (null == m) {
1677-
continue;
1678-
}
1659+
for (String m : mandatoryArguments) {
16791660
boolean found = false;
16801661
int p = 0;
16811662
for (String a : actualArguments) {

0 commit comments

Comments
 (0)