< prev index next >

test/tools/javac/modules/LimitModulesTest.java

Print this page




  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  */
  23 
  24 /*
  25  * @test
  26  * @summary Test the --limit-modules option
  27  * @library /tools/lib
  28  * @modules jdk.compiler/com.sun.tools.javac.api
  29  *          jdk.compiler/com.sun.tools.javac.main
  30  * @build toolbox.ToolBox toolbox.JavacTask ModuleTestBase
  31  * @run main LimitModulesTest
  32  */
  33 
  34 
  35 import java.nio.file.Path;
  36 
  37 import toolbox.JavacTask;
  38 import toolbox.Task;
  39 import toolbox.ToolBox;
  40 
  41 public class LimitModulesTest extends ModuleTestBase {
  42     public static void main(String... args) throws Exception {
  43         new LimitModulesTest().runTests();
  44     }
  45 
  46     @Test
  47     public void testEmpty(Path base) throws Exception {
  48         Path src = base.resolve("src");
  49         tb.writeJavaFiles(src, "class Dummy { }");
  50         Path classes = base.resolve("classes");
  51         tb.createDirectories(classes);
  52 
  53         String log = new JavacTask(tb, Task.Mode.CMDLINE)
  54                 .options("--module-source-path", src.toString(),
  55                          "--limit-modules", "")
  56                 .outdir(classes)
  57                 .files(findJavaFiles(src))
  58                 .run(Task.Expect.FAIL)
  59                 .writeAll()


  61 
  62         if (!log.contains("javac: no value for --limit-modules option"))
  63             throw new Exception("expected output not found");
  64 
  65         log = new JavacTask(tb, Task.Mode.CMDLINE)
  66                 .options("--module-source-path", src.toString(),
  67                          "--limit-modules=")
  68                 .outdir(classes)
  69                 .files(findJavaFiles(src))
  70                 .run(Task.Expect.FAIL)
  71                 .writeAll()
  72                 .getOutput(Task.OutputKind.DIRECT);
  73 
  74         if (!log.contains("javac: no value for --limit-modules option"))
  75             throw new Exception("expected output not found");
  76     }
  77 
  78     @Test
  79     public void testEmptyItem(Path base) throws Exception {
  80         Path src = base.resolve("src");
  81         Path src_m1 = src.resolve("m1");
  82         tb.writeJavaFiles(src_m1,
  83                           "module m1 { }");
  84         Path src_m2 = src.resolve("m2");
  85         tb.writeJavaFiles(src_m2,
  86                           "module m2 { }");
  87         Path classes = base.resolve("classes");
  88         tb.createDirectories(classes);
  89 
  90         new JavacTask(tb)
  91                 .options("--module-source-path", src.toString(),
  92                          "--limit-modules", ",m1")
  93                 .outdir(classes)
  94                 .files(findJavaFiles(src))
  95                 .run()
  96                 .writeAll();
  97 
  98         new JavacTask(tb)
  99                 .options("--module-source-path", src.toString(),
 100                          "--limit-modules", "m1,,m2")
 101                 .outdir(classes)
 102                 .files(findJavaFiles(src))
 103                 .run()
 104                 .writeAll();
 105 
 106         new JavacTask(tb)
 107                 .options("--module-source-path", src.toString(),
 108                          "--limit-modules", "m1,")
 109                 .outdir(classes)
 110                 .files(findJavaFiles(src))
 111                 .run()
 112                 .writeAll();
 113     }
 114 
 115     @Test
 116     public void testEmptyList(Path base) throws Exception {
 117         Path src = base.resolve("src");
 118         tb.writeJavaFiles(src, "class Dummy { }");
 119         Path classes = base.resolve("classes");
 120         tb.createDirectories(classes);
 121 
 122         String log = new JavacTask(tb, Task.Mode.CMDLINE)
 123                 .options("--module-source-path", src.toString(),
 124                          "--limit-modules", ",")
 125                 .outdir(classes)
 126                 .files(findJavaFiles(src))
 127                 .run(Task.Expect.FAIL)
 128                 .writeAll()




  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  */
  23 
  24 /*
  25  * @test
  26  * @summary Test the --limit-modules option
  27  * @library /tools/lib
  28  * @modules jdk.compiler/com.sun.tools.javac.api
  29  *          jdk.compiler/com.sun.tools.javac.main
  30  * @build toolbox.ToolBox toolbox.JavacTask ModuleTestBase
  31  * @run main LimitModulesTest
  32  */
  33 
  34 
  35 import java.nio.file.Path;
  36 
  37 import toolbox.JavacTask;
  38 import toolbox.Task;

  39 
  40 public class LimitModulesTest extends ModuleTestBase {
  41     public static void main(String... args) throws Exception {
  42         new LimitModulesTest().runTests();
  43     }
  44 
  45     @Test
  46     public void testEmpty(Path base) throws Exception {
  47         Path src = base.resolve("src");
  48         tb.writeJavaFiles(src, "class Dummy { }");
  49         Path classes = base.resolve("classes");
  50         tb.createDirectories(classes);
  51 
  52         String log = new JavacTask(tb, Task.Mode.CMDLINE)
  53                 .options("--module-source-path", src.toString(),
  54                          "--limit-modules", "")
  55                 .outdir(classes)
  56                 .files(findJavaFiles(src))
  57                 .run(Task.Expect.FAIL)
  58                 .writeAll()


  60 
  61         if (!log.contains("javac: no value for --limit-modules option"))
  62             throw new Exception("expected output not found");
  63 
  64         log = new JavacTask(tb, Task.Mode.CMDLINE)
  65                 .options("--module-source-path", src.toString(),
  66                          "--limit-modules=")
  67                 .outdir(classes)
  68                 .files(findJavaFiles(src))
  69                 .run(Task.Expect.FAIL)
  70                 .writeAll()
  71                 .getOutput(Task.OutputKind.DIRECT);
  72 
  73         if (!log.contains("javac: no value for --limit-modules option"))
  74             throw new Exception("expected output not found");
  75     }
  76 
  77     @Test
  78     public void testEmptyItem(Path base) throws Exception {
  79         Path src = base.resolve("src");
  80         Path src_m1 = src.resolve("m1x");
  81         tb.writeJavaFiles(src_m1,
  82                           "module m1x { }");
  83         Path src_m2 = src.resolve("m2x");
  84         tb.writeJavaFiles(src_m2,
  85                           "module m2x { }");
  86         Path classes = base.resolve("classes");
  87         tb.createDirectories(classes);
  88 
  89         new JavacTask(tb)
  90                 .options("--module-source-path", src.toString(),
  91                          "--limit-modules", ",m1x")
  92                 .outdir(classes)
  93                 .files(findJavaFiles(src))
  94                 .run()
  95                 .writeAll();
  96 
  97         new JavacTask(tb)
  98                 .options("--module-source-path", src.toString(),
  99                          "--limit-modules", "m1x,,m2x")
 100                 .outdir(classes)
 101                 .files(findJavaFiles(src))
 102                 .run()
 103                 .writeAll();
 104 
 105         new JavacTask(tb)
 106                 .options("--module-source-path", src.toString(),
 107                          "--limit-modules", "m1x,")
 108                 .outdir(classes)
 109                 .files(findJavaFiles(src))
 110                 .run()
 111                 .writeAll();
 112     }
 113 
 114     @Test
 115     public void testEmptyList(Path base) throws Exception {
 116         Path src = base.resolve("src");
 117         tb.writeJavaFiles(src, "class Dummy { }");
 118         Path classes = base.resolve("classes");
 119         tb.createDirectories(classes);
 120 
 121         String log = new JavacTask(tb, Task.Mode.CMDLINE)
 122                 .options("--module-source-path", src.toString(),
 123                          "--limit-modules", ",")
 124                 .outdir(classes)
 125                 .files(findJavaFiles(src))
 126                 .run(Task.Expect.FAIL)
 127                 .writeAll()


< prev index next >