test/langtools/tools/javac/options/release/ReleaseOptionUnsupported.java
changeset 47485 8fee80b92e65
parent 47216 71c04702a3d5
equal deleted inserted replaced
47484:d0cb66d8cbf1 47485:8fee80b92e65
    21  * questions.
    21  * questions.
    22  */
    22  */
    23 
    23 
    24 /**
    24 /**
    25  * @test
    25  * @test
    26  * @bug 8178152
    26  * @bug 8178152 8187681
    27  * @summary Verify unsupported modules and module options handling.
    27  * @summary Verify unsupported modules and module options handling.
    28  * @library /tools/lib
    28  * @library /tools/lib
    29  * @modules jdk.compiler/com.sun.tools.javac.api
    29  * @modules jdk.compiler/com.sun.tools.javac.api
    30  *          jdk.compiler/com.sun.tools.javac.main
    30  *          jdk.compiler/com.sun.tools.javac.main
    31  *          jdk.compiler/com.sun.tools.javac.jvm
    31  *          jdk.compiler/com.sun.tools.javac.jvm
   261         tb.createDirectories(classes);
   261         tb.createDirectories(classes);
   262         Path patch = base.resolve("patch");
   262         Path patch = base.resolve("patch");
   263         tb.createDirectories(patch);
   263         tb.createDirectories(patch);
   264 
   264 
   265         new JavacTask(tb)
   265         new JavacTask(tb)
   266                 .options("-XDrawDiagnostics",
   266                 .options("--patch-module", "java.base=" + patch)
   267                          "--patch-module", "java.base=" + patch)
   267                 .outdir(classes)
   268                 .outdir(classes)
   268                 .files(tb.findJavaFiles(src))
   269                 .files(tb.findJavaFiles(src))
   269                 .run(Expect.SUCCESS)
   270                 .run(Expect.SUCCESS)
   270                 .writeAll();
   271                 .writeAll()
   271 
   272                 .getOutputLines(Task.OutputKind.DIRECT);
   272         new JavacTask(tb)
   273 
   273                 .options("--patch-module", "java.base=" + patch,
   274         List<String> log;
   274                          "--release", Target.DEFAULT.multiReleaseValue())
   275         List<String> expected;
   275                 .outdir(classes)
   276 
   276                 .files(tb.findJavaFiles(src))
   277         log = new JavacTask(tb)
   277                 .run(Expect.SUCCESS)
   278                 .options("-XDrawDiagnostics",
   278                 .writeAll();
   279                          "--patch-module", "java.base=" + patch,
       
   280                          "--release", Target.DEFAULT.multiReleaseValue())
       
   281                 .outdir(classes)
       
   282                 .files(tb.findJavaFiles(src))
       
   283                 .run(Expect.FAIL)
       
   284                 .writeAll()
       
   285                 .getOutputLines(Task.OutputKind.DIRECT);
       
   286 
       
   287         expected = Arrays.asList(
       
   288                 "- compiler.err.patch.module.with.release: java.base",
       
   289                 "1 error"
       
   290         );
       
   291 
       
   292         if (!expected.equals(log)) {
       
   293             throw new AssertionError("Unexpected output: " + log);
       
   294         }
       
   295 
   279 
   296         //OK to patch a non-system module:
   280         //OK to patch a non-system module:
   297         tb.createDirectories(classes);
   281         tb.createDirectories(classes);
   298 
   282 
   299         new JavacTask(tb)
   283         new JavacTask(tb)