--- old/test/com/sun/corba/se/impl/io/HookPutFieldsTest.java 2016-06-22 11:14:15.000000000 -0700 +++ new/test/com/sun/corba/se/impl/io/HookPutFieldsTest.java 2016-06-22 11:14:15.000000000 -0700 @@ -25,6 +25,7 @@ * @test * @bug 7095856 * @summary OutputStreamHook doesn't handle null values + * @modules java.corba * @compile -addmods java.corba HookPutFieldsTest.java * @run main/othervm -addmods java.corba HookPutFieldsTest */ --- old/test/java/lang/invoke/modules/ModuleAccessControlTest.java 2016-06-22 11:14:16.000000000 -0700 +++ new/test/java/lang/invoke/modules/ModuleAccessControlTest.java 2016-06-22 11:14:16.000000000 -0700 @@ -26,7 +26,7 @@ import java.util.Arrays; import java.util.List; -import static jdk.testlibrary.ProcessTools.executeTestJava; +import static jdk.testlibrary.ProcessTools.executeModularTest; import org.testng.annotations.BeforeTest; import org.testng.annotations.Test; @@ -69,11 +69,8 @@ */ @Test public void runTest() throws Exception { - int exitValue = executeTestJava("-mp", MODS_DIR.toString(), - "-m", "m1/p1.Main") - .outputTo(System.out) - .errorTo(System.out) - .getExitValue(); + int exitValue = executeModularTest("m1", "p1.Main", + null, null, Arrays.asList(MODS_DIR), null).getExitValue(); assertTrue(exitValue == 0); } --- old/test/java/lang/reflect/Proxy/ProxyClassAccessTest.java 2016-06-22 11:14:16.000000000 -0700 +++ new/test/java/lang/reflect/Proxy/ProxyClassAccessTest.java 2016-06-22 11:14:16.000000000 -0700 @@ -30,7 +30,7 @@ import java.util.Arrays; import java.util.List; -import static jdk.testlibrary.ProcessTools.executeTestJava; +import static jdk.testlibrary.ProcessTools.executeModularTest; import org.testng.annotations.BeforeTest; import org.testng.annotations.Test; @@ -73,11 +73,8 @@ */ @Test public void runTest() throws Exception { - int exitValue = executeTestJava("-mp", MODS_DIR.toString(), - "-m", "test/jdk.test.ProxyClassAccess") - .outputTo(System.out) - .errorTo(System.out) - .getExitValue(); + int exitValue = executeModularTest("test", "jdk.test.ProxyClassAccess", + null, null, Arrays.asList(MODS_DIR), null).getExitValue(); assertTrue(exitValue == 0); } --- old/test/java/lang/reflect/Proxy/ProxyTest.java 2016-06-22 11:14:17.000000000 -0700 +++ new/test/java/lang/reflect/Proxy/ProxyTest.java 2016-06-22 11:14:17.000000000 -0700 @@ -26,7 +26,7 @@ import java.util.Arrays; import java.util.List; -import static jdk.testlibrary.ProcessTools.executeTestJava; +import static jdk.testlibrary.ProcessTools.executeModularTest; import org.testng.annotations.BeforeTest; import org.testng.annotations.Test; @@ -70,12 +70,8 @@ */ @Test public void runTest() throws Exception { - int exitValue = executeTestJava("-cp", CPATH_DIR.toString(), - "-mp", MODS_DIR.toString(), - "-m", "test/jdk.test.Main") - .outputTo(System.out) - .errorTo(System.out) - .getExitValue(); + int exitValue = executeModularTest("test", "jdk.test.Main", + null, Arrays.asList(CPATH_DIR), Arrays.asList(MODS_DIR), null).getExitValue(); assertTrue(exitValue == 0); } --- old/test/java/util/ResourceBundle/modules/security/TestPermission.java 2016-06-22 11:14:18.000000000 -0700 +++ new/test/java/util/ResourceBundle/modules/security/TestPermission.java 2016-06-22 11:14:18.000000000 -0700 @@ -26,7 +26,7 @@ import java.util.Arrays; import java.util.List; -import static jdk.testlibrary.ProcessTools.executeTestJava; +import static jdk.testlibrary.ProcessTools.executeModularTest; import org.testng.annotations.BeforeTest; import org.testng.annotations.Test; @@ -68,11 +68,8 @@ */ @Test public void runTest() throws Exception { - int exitValue = executeTestJava("-mp", MODS_DIR.toString(), - "-m", "test/jdk.test.Main") - .outputTo(System.out) - .errorTo(System.out) - .getExitValue(); + int exitValue = executeModularTest("test", "jdk.test.Main", null, null, + Arrays.asList(MODS_DIR), null).getExitValue(); assertTrue(exitValue == 0); } --- old/test/java/util/logging/modules/GetResourceBundleTest.java 2016-06-22 11:14:19.000000000 -0700 +++ new/test/java/util/logging/modules/GetResourceBundleTest.java 2016-06-22 11:14:18.000000000 -0700 @@ -24,6 +24,8 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; +import java.util.Collections; +import java.util.Arrays; import org.testng.annotations.BeforeClass; import org.testng.annotations.Test; @@ -82,27 +84,17 @@ @Test public void runWithoutSecurityManager() throws Exception { - int exitValue = executeTestJava( - "-cp", PKG_DEST_DIR.toString(), - "-mp", MOD_DEST_DIR.toString(), - "-addmods", String.join(",", modules), - "p3.test.ResourceBundleTest") - .outputTo(System.out) - .errorTo(System.err) + int exitValue = executeModularTest(null, "p3.test.ResourceBundleTest", null, + Arrays.asList(PKG_DEST_DIR), Arrays.asList(MOD_DEST_DIR), Arrays.asList(modules)) .getExitValue(); assertTrue(exitValue == 0); } @Test public void runWithSecurityManager() throws Exception { - int exitValue = executeTestJava( - "-Djava.security.manager", - "-cp", PKG_DEST_DIR.toString(), - "-mp", MOD_DEST_DIR.toString(), - "-addmods", String.join(",", modules), - "p3.test.ResourceBundleTest") - .outputTo(System.out) - .errorTo(System.err) + int exitValue = executeModularTest(null, "p3.test.ResourceBundleTest", + Arrays.asList("-Djava.security.manager"), + Arrays.asList(PKG_DEST_DIR), Arrays.asList(MOD_DEST_DIR), Arrays.asList(modules)) .getExitValue(); assertTrue(exitValue == 0); } --- old/test/javax/crypto/Cipher/CipherStreamClose.java 2016-06-22 11:14:19.000000000 -0700 +++ new/test/javax/crypto/Cipher/CipherStreamClose.java 2016-06-22 11:14:19.000000000 -0700 @@ -27,6 +27,7 @@ * @summary Make sure Cipher IO streams doesn't call extra doFinal if close() * is called multiple times. Additionally, verify the input and output streams * match with encryption and decryption with non-stream crypto. + * @modules java.xml.bind * @compile -addmods java.xml.bind CipherStreamClose.java * @run main/othervm -addmods java.xml.bind CipherStreamClose */ --- old/test/javax/xml/soap/spi/SAAJFactoryTest.java 2016-06-22 11:14:20.000000000 -0700 +++ new/test/javax/xml/soap/spi/SAAJFactoryTest.java 2016-06-22 11:14:20.000000000 -0700 @@ -49,6 +49,7 @@ * run main/othervm SAAJFactoryTest saaj.factory.Valid - * scenario14 javax.xml.soap.MessageFactory=saaj.factory.Valid saaj.factory.Valid2 - * + * @modules java.xml.ws * @compile -addmods java.xml.ws saaj/factory/Invalid.java saaj/factory/Valid.java * saaj/factory/Valid2.java saaj/factory/Valid3.java SAAJFactoryTest.java * --- old/test/javax/xml/ws/publish/WSTest.java 2016-06-22 11:14:21.000000000 -0700 +++ new/test/javax/xml/ws/publish/WSTest.java 2016-06-22 11:14:20.000000000 -0700 @@ -25,6 +25,7 @@ * @test * @bug 8146086 * @summary Publishing two webservices on same port fails with "java.net.BindException: Address already in use" + * @modules java.xml.ws * @compile -addmods java.xml.ws WSTest.java * @run main/othervm -addmods java.xml.ws WSTest */ --- old/test/jdk/modules/scenarios/container/ContainerTest.java 2016-06-22 11:14:21.000000000 -0700 +++ new/test/jdk/modules/scenarios/container/ContainerTest.java 2016-06-22 11:14:21.000000000 -0700 @@ -35,6 +35,7 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; +import java.util.Arrays; import static jdk.testlibrary.ProcessTools.*; @@ -134,10 +135,8 @@ public void testContainer() throws Exception { int exitValue - = executeTestJava("-mp", MLIB_DIR.toString(), - "-m", CONTAINER_MODULE) - .outputTo(System.out) - .errorTo(System.err) + = executeModularTest(CONTAINER_MODULE, null, null, null, + Arrays.asList(MLIB_DIR), null) .getExitValue(); assertTrue(exitValue == 0); --- old/test/lib/testlibrary/jdk/testlibrary/ProcessTools.java 2016-06-22 11:14:22.000000000 -0700 +++ new/test/lib/testlibrary/jdk/testlibrary/ProcessTools.java 2016-06-22 11:14:22.000000000 -0700 @@ -23,14 +23,17 @@ package jdk.testlibrary; +import java.io.File; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.PrintStream; +import java.nio.file.Path; import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.concurrent.CountDownLatch; +import java.util.List; import java.util.Map; import java.util.concurrent.ExecutionException; import java.util.concurrent.Future; @@ -339,6 +342,38 @@ } } + public static OutputAnalyzer executeModularTest(String module, String mainClass, + List otherOptions, + List classPath, List modulePath, List addMods, + String... arguments) throws Exception { + List args = new ArrayList<>(); + if (otherOptions != null && otherOptions.size() > 0) { + args.addAll(otherOptions); + } + args.add("-mp"); + args.add(modulePath.stream() + .map(Path::toString) + .collect(Collectors.joining(File.pathSeparator))); + if (classPath != null && classPath.size() > 0) { + args.add("-cp"); + args.add(classPath.stream() + .map(Path::toString) + .collect(Collectors.joining(File.pathSeparator))); + } + if (addMods != null && addMods.size() > 0) { + args.add("-addmods"); + args.add(String.join(",", addMods)); + } + if (module != null) { + args.add("-m"); args.add(module + ((mainClass != null) ? "/"+ mainClass : "")); + } else { + args.add(mainClass); + } + args.addAll(Arrays.asList(arguments)); + ProcessBuilder pb = createJavaProcessBuilder(args.toArray(new String[0])); + return executeProcess(pb); + } + /** * Executes a test java process, waits for it to finish and returns the process output. * The default options from jtreg, test.vm.opts and test.java.opts, are added. --- old/test/tools/jar/modularJar/Basic.java 2016-06-22 11:14:23.000000000 -0700 +++ new/test/tools/jar/modularJar/Basic.java 2016-06-22 11:14:23.000000000 -0700 @@ -831,12 +831,13 @@ List commands = new ArrayList<>(); commands.add(java); - if (!VM_OPTIONS.isEmpty()) { - commands.addAll(Arrays.asList(VM_OPTIONS.split("\\s+", -1))); - } - if (!JAVA_OPTIONS.isEmpty()) { - commands.addAll(Arrays.asList(JAVA_OPTIONS.split("\\s+", -1))); - } + //temporarily commenting out options for 8158855 + //if (!VM_OPTIONS.isEmpty()) { + // commands.addAll(Arrays.asList(VM_OPTIONS.split("\\s+", -1))); + //} + //if (!JAVA_OPTIONS.isEmpty()) { + // commands.addAll(Arrays.asList(JAVA_OPTIONS.split("\\s+", -1))); + //} Stream.of(args).forEach(x -> commands.add(x)); commands.add("-mp"); commands.add(modulePath.toString()); --- old/test/tools/launcher/modules/addexports/AddExportsTest.java 2016-06-22 11:14:23.000000000 -0700 +++ new/test/tools/launcher/modules/addexports/AddExportsTest.java 2016-06-22 11:14:23.000000000 -0700 @@ -32,6 +32,7 @@ import java.nio.file.Path; import java.nio.file.Paths; +import java.util.Arrays; import static jdk.testlibrary.ProcessTools.*; @@ -148,12 +149,10 @@ String mid = TEST1_MODULE + "/" + TEST1_MAIN_CLASS; int exitValue = - executeTestJava("-XaddExports:java.base/jdk.internal.misc=" + TEST1_MODULE, - "-mp", MODS_DIR.toString(), - "-m", mid) - .outputTo(System.out) - .errorTo(System.out) - .getExitValue(); + executeModularTest(mid, null, + Arrays.asList("-XaddExports:java.base/jdk.internal.misc=" + TEST1_MODULE), + null, Arrays.asList(MODS_DIR), null) + .getExitValue(); assertTrue(exitValue == 0); } @@ -167,13 +166,10 @@ // java -XaddExports:java.transaction/javax.transaction.internal=m2 // -upgrademodulepath upgrademods -mp mods -m ... String mid = TEST2_MODULE + "/" + TEST2_MAIN_CLASS; - int exitValue = executeTestJava( - "-XaddExports:java.transaction/javax.transaction.internal=m2", - "-upgrademodulepath", UPGRADE_MODS_DIRS.toString(), - "-mp", MODS_DIR.toString(), - "-m", mid) - .outputTo(System.out) - .errorTo(System.out) + int exitValue = executeModularTest(mid, null, + Arrays.asList("-XaddExports:java.transaction/javax.transaction.internal=m2", + "-upgrademodulepath", UPGRADE_MODS_DIRS.toString()), + null, Arrays.asList(MODS_DIR), null) .getExitValue(); assertTrue(exitValue == 0); @@ -188,13 +184,10 @@ // java -XaddExports:m4/jdk.test4=m3 -mp mods -m ... String mid = TEST3_MODULE + "/" + TEST3_MAIN_CLASS; - int exitValue = executeTestJava( - "-XaddExports:m4/jdk.test4=m3", - "-mp", MODS_DIR.toString(), - "-addmods", TEST4_MODULE, - "-m", mid) - .outputTo(System.out) - .errorTo(System.out) + int exitValue = executeModularTest(mid, null, + Arrays.asList("-XaddExports:m4/jdk.test4=m3"), + null, Arrays.asList(MODS_DIR), + Arrays.asList(TEST4_MODULE)) .getExitValue(); assertTrue(exitValue == 0); --- old/test/tools/launcher/modules/patch/basic/PatchTest.java 2016-06-22 11:14:24.000000000 -0700 +++ new/test/tools/launcher/modules/patch/basic/PatchTest.java 2016-06-22 11:14:24.000000000 -0700 @@ -34,6 +34,7 @@ import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; +import java.util.Arrays; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -137,18 +138,16 @@ String arg = Stream.of(CLASSES).collect(Collectors.joining(",")); int exitValue - = executeTestJava("-Xpatch:java.base=" + basePatches, - "-Xpatch:jdk.naming.dns=" + dnsPatches, - "-Xpatch:jdk.compiler=" + compilerPatches, - "-XaddExports:java.base/java.lang2=test", - "-XaddExports:jdk.naming.dns/com.sun.jndi.dns=test", - "-XaddExports:jdk.naming.dns/com.sun.jndi.dns2=test", - "-XaddExports:jdk.compiler/com.sun.tools.javac2=test", - "-addmods", "jdk.naming.dns,jdk.compiler", - "-mp", MODS_DIR.toString(), - "-m", "test/jdk.test.Main", arg) - .outputTo(System.out) - .errorTo(System.out) + = executeModularTest("test", "jdk.test.Main", + Arrays.asList("-Xpatch:java.base=" + basePatches, + "-Xpatch:jdk.naming.dns=" + dnsPatches, + "-Xpatch:jdk.compiler=" + compilerPatches, + "-XaddExports:java.base/java.lang2=test", + "-XaddExports:jdk.naming.dns/com.sun.jndi.dns=test", + "-XaddExports:jdk.naming.dns/com.sun.jndi.dns2=test", + "-XaddExports:jdk.compiler/com.sun.tools.javac2=test"), + null, Arrays.asList(MODS_DIR), Arrays.asList("jdk.naming.dns", "jdk.compiler"), + arg) .getExitValue(); assertTrue(exitValue == 0); --- old/test/tools/launcher/modules/upgrademodulepath/UpgradeModulePathTest.java 2016-06-22 11:14:25.000000000 -0700 +++ new/test/tools/launcher/modules/upgrademodulepath/UpgradeModulePathTest.java 2016-06-22 11:14:25.000000000 -0700 @@ -33,8 +33,9 @@ import java.io.File; import java.nio.file.Path; import java.nio.file.Paths; +import java.util.Arrays; -import static jdk.testlibrary.ProcessTools.executeTestJava; +import static jdk.testlibrary.ProcessTools.executeModularTest; import org.testng.annotations.BeforeTest; import org.testng.annotations.Test; @@ -91,12 +92,9 @@ String mid = "test/jdk.test.Main"; int exitValue - = executeTestJava( - "-upgrademodulepath", UPGRADEDMODS_DIR.toString(), - "-mp", MODS_DIR.toString(), - "-m", mid) - .outputTo(System.out) - .errorTo(System.out) + = executeModularTest(mid, null, + Arrays.asList( "-upgrademodulepath", UPGRADEDMODS_DIR.toString()), + null, Arrays.asList(MODS_DIR), null) .getExitValue(); assertTrue(exitValue == 0); @@ -115,12 +113,9 @@ String mid = "test/jdk.test.Main"; int exitValue - = executeTestJava( - "-upgrademodulepath", upgrademodulepath, - "-mp", MODS_DIR.toString(), - "-m", mid) - .outputTo(System.out) - .errorTo(System.out) + = executeModularTest(mid, null, + Arrays.asList("-upgrademodulepath", upgrademodulepath), + null, Arrays.asList(MODS_DIR), null) .getExitValue(); assertTrue(exitValue == 0);