< prev index next >

test/tools/launcher/modules/addexports/AddExportsTest.java

Print this page

        

@@ -23,19 +23,20 @@
 
 /**
  * @test
  * @library /lib/testlibrary
  * @modules jdk.compiler
- * @build AddExportsTest CompilerUtils jdk.testlibrary.*
+ * @build AddExportsTest CompilerUtils jdk.testlibrary.tasks.*
  * @run testng AddExportsTest
  * @summary Basic tests for java --add-exports
  */
 
 import java.nio.file.Path;
 import java.nio.file.Paths;
 
-import static jdk.testlibrary.ProcessTools.*;
+import jdk.testlibrary.tasks.JavaTask;
+import jdk.testlibrary.tasks.Task;
 
 import org.testng.annotations.BeforeTest;
 import org.testng.annotations.DataProvider;
 import org.testng.annotations.Test;
 import static org.testng.Assert.*;

@@ -102,140 +103,104 @@
     }
 
     /**
      * Sanity check with -version
      */
-    public void testSanity() throws Exception {
-
-        int exitValue
-            =  executeTestJava("--add-exports", "java.base/jdk.internal.reflect=ALL-UNNAMED",
-                               "-version")
-                .outputTo(System.out)
-                .errorTo(System.out)
-                .getExitValue();
-
-        assertTrue(exitValue == 0);
+    public void testSanity() {
+        new JavaTask()
+            .addExports("java.base", "jdk.internal.reflect")
+            .vmOptions("-version")
+            .run();
     }
 
 
     /**
      * Run class path application that uses jdk.internal.misc.Unsafe
      */
-    public void testUnnamedModule() throws Exception {
+    public void testUnnamedModule() {
 
         // java --add-exports java.base/jdk.internal.misc=ALL-UNNAMED \
         //      -cp mods/$TESTMODULE jdk.test.UsesUnsafe
 
-        String classpath = MODS_DIR.resolve(TEST1_MODULE).toString();
-        int exitValue
-            = executeTestJava("--add-exports", "java.base/jdk.internal.misc=ALL-UNNAMED",
-                              "-cp", classpath,
-                              TEST1_MAIN_CLASS)
-                .outputTo(System.out)
-                .errorTo(System.out)
-                .getExitValue();
-
-        assertTrue(exitValue == 0);
+        new JavaTask()
+            .addExports("java.base", "jdk.internal.misc")
+            .vmOptions("-version")
+            .classPath(MODS_DIR.resolve(TEST1_MODULE))
+            .mainClass(TEST1_MAIN_CLASS)
+            .run();
     }
 
 
     /**
      * Run named module that uses jdk.internal.misc.Unsafe
      */
-    public void testNamedModule() throws Exception {
+    public void testNamedModule() {
 
         //  java --add-exports java.base/jdk.internal.misc=test \
         //       --module-path mods -m $TESTMODULE/$MAIN_CLASS
 
-        String mid = TEST1_MODULE + "/" + TEST1_MAIN_CLASS;
-        int exitValue =
-            executeTestJava("--add-exports", "java.base/jdk.internal.misc=" + TEST1_MODULE,
-                            "--module-path", MODS_DIR.toString(),
-                            "-m", mid)
-                .outputTo(System.out)
-                .errorTo(System.out)
-                .getExitValue();
-
-        assertTrue(exitValue == 0);
+        new JavaTask()
+            .addExports("java.base", "jdk.internal.misc", TEST1_MODULE)
+            .modulePath(MODS_DIR)
+            .module(TEST1_MODULE, TEST1_MAIN_CLASS)
+            .run();
     }
 
 
     /**
      * Test --add-exports with upgraded module
      */
-    public void testWithUpgradedModule() throws Exception {
+    public void testWithUpgradedModule() {
 
         // java --add-exports java.transaction/javax.transaction.internal=m2
         //      --upgrade-module-path upgrademods --module-path mods -m ...
-        String mid = TEST2_MODULE + "/" + TEST2_MAIN_CLASS;
-        int exitValue = executeTestJava(
-                "--add-exports", "java.transaction/javax.transaction.internal=m2",
-                "--upgrade-module-path", UPGRADE_MODS_DIRS.toString(),
-                "--module-path", MODS_DIR.toString(),
-                "-m", mid)
-                .outputTo(System.out)
-                .errorTo(System.out)
-                .getExitValue();
-
-        assertTrue(exitValue == 0);
+        new JavaTask().ignoreStandardModuleOptions()
+            .addExports("java.transaction", "javax.transaction.internal", TEST2_MODULE)
+            .upgradeModulePath(UPGRADE_MODS_DIRS)
+            .modulePath(MODS_DIR.toString())
+            .module(TEST2_MODULE, TEST2_MAIN_CLASS)
+            .run();
     }
 
 
     /**
      * Test --add-exports with module that is added to the set of root modules
      * with --add-modules.
      */
-    public void testWithAddMods() throws Exception {
+    public void testWithAddMods() {
 
         // java --add-exports m4/jdk.test4=m3 --module-path mods -m ...
-        String mid = TEST3_MODULE + "/" + TEST3_MAIN_CLASS;
-        int exitValue = executeTestJava(
-                "--add-exports", "m4/jdk.test4=m3",
-                "--module-path", MODS_DIR.toString(),
-                "--add-modules", TEST4_MODULE,
-                "-m", mid)
-                .outputTo(System.out)
-                .errorTo(System.out)
-                .getExitValue();
-
-        assertTrue(exitValue == 0);
+        new JavaTask().ignoreStandardModuleOptions()
+            .addExports(TEST4_MODULE, "jdk.test4", TEST3_MODULE)
+            .addModules(TEST4_MODULE)
+            .modulePath(MODS_DIR)
+            .module(TEST3_MODULE, TEST3_MAIN_CLASS)
+            .run();
     }
 
 
     /**
      * --add-exports can only be specified once
      */
-    public void testWithDuplicateOption() throws Exception {
-
-        int exitValue
-            =  executeTestJava("--add-exports", "java.base/jdk.internal.reflect=ALL-UNNAMED",
-                               "--add-exports", "java.base/jdk.internal.reflect=ALL-UNNAMED",
-                               "-version")
-                .outputTo(System.out)
-                .errorTo(System.out)
-                .shouldContain("specified more than once")
-                .getExitValue();
-
-        assertTrue(exitValue != 0);
+    public void testWithDuplicateOption() {
+        new JavaTask()
+            .addExports("java.base", "jdk.internal.reflect")
+            .addExports("java.base", "jdk.internal.reflect")
+            .vmOptions("-version")
+            .run(Task.Expect.FAIL);
     }
 
 
     /**
      * Exercise --add-exports with bad values
      */
     @Test(dataProvider = "badvalues")
-    public void testWithBadValue(String value, String ignore) throws Exception {
-
+    public void testWithBadValue(String value, String ignore) {
         //  --add-exports $VALUE -version
-        int exitValue =
-            executeTestJava("--add-exports", value,
-                            "-version")
-                .outputTo(System.out)
-                .errorTo(System.out)
-                .getExitValue();
-
-        assertTrue(exitValue != 0);
+        new JavaTask()
+            .vmOptions(value, "-version")
+            .run(Task.Expect.FAIL);
     }
 
     @DataProvider(name = "badvalues")
     public Object[][] badValues() {
         return new Object[][]{
< prev index next >