mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-20 11:04:34 +02:00
8152897: refactor ToolBox to allow reduced documented dependencies
Reviewed-by: vromero
This commit is contained in:
parent
208d93e110
commit
7812306bc0
212 changed files with 3955 additions and 3485 deletions
|
@ -33,7 +33,7 @@
|
|||
* jdk.compiler/com.sun.tools.javac.processing
|
||||
* jdk.compiler/com.sun.tools.javac.util
|
||||
* jdk.jdeps/com.sun.tools.javap
|
||||
* @build ToolBox ModuleTestBase
|
||||
* @build toolbox.ToolBox toolbox.JarTask toolbox.JavacTask toolbox.JavaTask ModuleTestBase
|
||||
* @run main AddLimitMods
|
||||
*/
|
||||
|
||||
|
@ -65,6 +65,12 @@ import com.sun.tools.javac.model.JavacElements;
|
|||
import com.sun.tools.javac.processing.JavacProcessingEnvironment;
|
||||
import com.sun.tools.javac.util.Context;
|
||||
|
||||
import toolbox.JarTask;
|
||||
import toolbox.JavacTask;
|
||||
import toolbox.JavaTask;
|
||||
import toolbox.Task;
|
||||
import toolbox.ToolBox;
|
||||
|
||||
public class AddLimitMods extends ModuleTestBase {
|
||||
|
||||
public static void main(String... args) throws Exception {
|
||||
|
@ -96,14 +102,14 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
|
||||
Files.createDirectories(modulePath);
|
||||
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.options("-modulesourcepath", moduleSrc.toString())
|
||||
.outdir(modulePath)
|
||||
.files(findJavaFiles(m3))
|
||||
.run()
|
||||
.writeAll();
|
||||
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.options("-modulesourcepath", moduleSrc.toString())
|
||||
.outdir(modulePath)
|
||||
.files(findJavaFiles(m2))
|
||||
|
@ -111,26 +117,26 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
.writeAll();
|
||||
|
||||
//real test
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.options("-modulepath", modulePath.toString(),
|
||||
"-XDshouldStopPolicyIfNoError=FLOW",
|
||||
"-limitmods", "java.base")
|
||||
.outdir(modulePath)
|
||||
.files(findJavaFiles(m1))
|
||||
.run(ToolBox.Expect.FAIL)
|
||||
.run(Task.Expect.FAIL)
|
||||
.writeAll();
|
||||
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.options("-modulepath", modulePath.toString(),
|
||||
"-XDshouldStopPolicyIfNoError=FLOW",
|
||||
"-limitmods", "java.base",
|
||||
"-addmods", "m2")
|
||||
.outdir(modulePath)
|
||||
.files(findJavaFiles(m1))
|
||||
.run(ToolBox.Expect.FAIL)
|
||||
.run(Task.Expect.FAIL)
|
||||
.writeAll();
|
||||
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.options("-modulepath", modulePath.toString(),
|
||||
"-XDshouldStopPolicyIfNoError=FLOW",
|
||||
"-limitmods", "java.base",
|
||||
|
@ -140,7 +146,7 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
.run()
|
||||
.writeAll();
|
||||
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.options("-modulepath", modulePath.toString(),
|
||||
"-XDshouldStopPolicyIfNoError=FLOW",
|
||||
"-limitmods", "m2")
|
||||
|
@ -149,16 +155,16 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
.run()
|
||||
.writeAll();
|
||||
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.options("-modulepath", modulePath.toString(),
|
||||
"-XDshouldStopPolicyIfNoError=FLOW",
|
||||
"-limitmods", "m3")
|
||||
.outdir(modulePath)
|
||||
.files(findJavaFiles(m1))
|
||||
.run(ToolBox.Expect.FAIL)
|
||||
.run(Task.Expect.FAIL)
|
||||
.writeAll();
|
||||
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.options("-modulepath", modulePath.toString(),
|
||||
"-XDshouldStopPolicyIfNoError=FLOW",
|
||||
"-limitmods", "m3",
|
||||
|
@ -185,7 +191,7 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
|
||||
Files.createDirectories(modulePath);
|
||||
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.options("-modulesourcepath", moduleSrc.toString())
|
||||
.outdir(modulePath)
|
||||
.files(findJavaFiles(moduleSrc))
|
||||
|
@ -199,14 +205,14 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
|
||||
Files.createDirectories(cpOut);
|
||||
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.options("-modulepath", modulePath.toString())
|
||||
.outdir(cpOut)
|
||||
.files(findJavaFiles(cpSrc))
|
||||
.run(ToolBox.Expect.FAIL)
|
||||
.run(Task.Expect.FAIL)
|
||||
.writeAll();
|
||||
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.options("-modulepath", modulePath.toString(),
|
||||
"-addmods", "ALL-MODULE-PATH")
|
||||
.outdir(cpOut)
|
||||
|
@ -219,43 +225,43 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
"- compiler.err.addmods.all.module.path.invalid",
|
||||
"1 error");
|
||||
|
||||
actual = tb.new JavacTask()
|
||||
actual = new JavacTask(tb)
|
||||
.options("-modulesourcepath", moduleSrc.toString(),
|
||||
"-XDrawDiagnostics",
|
||||
"-addmods", "ALL-MODULE-PATH")
|
||||
.outdir(modulePath)
|
||||
.files(findJavaFiles(moduleSrc))
|
||||
.run(ToolBox.Expect.FAIL)
|
||||
.run(Task.Expect.FAIL)
|
||||
.writeAll()
|
||||
.getOutputLines(ToolBox.OutputKind.DIRECT);
|
||||
.getOutputLines(Task.OutputKind.DIRECT);
|
||||
|
||||
if (!Objects.equals(actual, expected)) {
|
||||
throw new IllegalStateException("incorrect errors; actual=" + actual + "; expected=" + expected);
|
||||
}
|
||||
|
||||
actual = tb.new JavacTask()
|
||||
actual = new JavacTask(tb)
|
||||
.options("-Xmodule:java.base",
|
||||
"-XDrawDiagnostics",
|
||||
"-addmods", "ALL-MODULE-PATH")
|
||||
.outdir(cpOut)
|
||||
.files(findJavaFiles(cpSrc))
|
||||
.run(ToolBox.Expect.FAIL)
|
||||
.run(Task.Expect.FAIL)
|
||||
.writeAll()
|
||||
.getOutputLines(ToolBox.OutputKind.DIRECT);
|
||||
.getOutputLines(Task.OutputKind.DIRECT);
|
||||
|
||||
if (!Objects.equals(actual, expected)) {
|
||||
throw new IllegalStateException("incorrect errors; actual=" + actual + "; expected=" + expected);
|
||||
}
|
||||
|
||||
actual = tb.new JavacTask(ToolBox.Mode.CMDLINE)
|
||||
actual = new JavacTask(tb, Task.Mode.CMDLINE)
|
||||
.options("-source", "8", "-target", "8",
|
||||
"-XDrawDiagnostics",
|
||||
"-addmods", "ALL-MODULE-PATH")
|
||||
.outdir(cpOut)
|
||||
.files(findJavaFiles(cpSrc))
|
||||
.run(ToolBox.Expect.FAIL)
|
||||
.run(Task.Expect.FAIL)
|
||||
.writeAll()
|
||||
.getOutputLines(ToolBox.OutputKind.DIRECT);
|
||||
.getOutputLines(Task.OutputKind.DIRECT);
|
||||
|
||||
if (!actual.contains("javac: option -addmods not allowed with target 1.8")) {
|
||||
throw new IllegalStateException("incorrect errors; actual=" + actual);
|
||||
|
@ -263,14 +269,14 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
|
||||
tb.writeJavaFiles(cpSrc, "module m1 {}");
|
||||
|
||||
actual = tb.new JavacTask()
|
||||
actual = new JavacTask(tb)
|
||||
.options("-XDrawDiagnostics",
|
||||
"-addmods", "ALL-MODULE-PATH")
|
||||
.outdir(cpOut)
|
||||
.files(findJavaFiles(cpSrc))
|
||||
.run(ToolBox.Expect.FAIL)
|
||||
.run(Task.Expect.FAIL)
|
||||
.writeAll()
|
||||
.getOutputLines(ToolBox.OutputKind.DIRECT);
|
||||
.getOutputLines(Task.OutputKind.DIRECT);
|
||||
|
||||
if (!Objects.equals(actual, expected)) {
|
||||
throw new IllegalStateException("incorrect errors; actual=" + actual + "; expected=" + expected);
|
||||
|
@ -287,12 +293,12 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
|
||||
Files.createDirectories(classpathOut);
|
||||
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.outdir(classpathOut)
|
||||
.files(findJavaFiles(classpathSrc))
|
||||
.run()
|
||||
.writeAll()
|
||||
.getOutput(ToolBox.OutputKind.DIRECT);
|
||||
.getOutput(Task.OutputKind.DIRECT);
|
||||
|
||||
Path automaticSrc = base.resolve("automatic-src");
|
||||
Path automaticOut = base.resolve("automatic-out");
|
||||
|
@ -302,12 +308,12 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
|
||||
Files.createDirectories(automaticOut);
|
||||
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.outdir(automaticOut)
|
||||
.files(findJavaFiles(automaticSrc))
|
||||
.run()
|
||||
.writeAll()
|
||||
.getOutput(ToolBox.OutputKind.DIRECT);
|
||||
.getOutput(Task.OutputKind.DIRECT);
|
||||
|
||||
Path modulePath = base.resolve("module-path");
|
||||
|
||||
|
@ -315,7 +321,7 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
|
||||
Path automaticJar = modulePath.resolve("automatic.jar");
|
||||
|
||||
tb.new JarTask(automaticJar)
|
||||
new JarTask(tb, automaticJar)
|
||||
.baseDir(automaticOut)
|
||||
.files("automatic/Automatic.class")
|
||||
.run();
|
||||
|
@ -327,13 +333,13 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
"module m1 { exports api; }",
|
||||
"package api; public class Api { public void test() { } }");
|
||||
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.options("-modulesourcepath", moduleSrc.toString())
|
||||
.outdir(modulePath)
|
||||
.files(findJavaFiles(moduleSrc))
|
||||
.run()
|
||||
.writeAll()
|
||||
.getOutput(ToolBox.OutputKind.DIRECT);
|
||||
.getOutput(Task.OutputKind.DIRECT);
|
||||
|
||||
int index = 0;
|
||||
|
||||
|
@ -369,7 +375,7 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
|
||||
tb.writeJavaFiles(m2Runtime, moduleInfo, testClassNamed.toString());
|
||||
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.options("-modulepath", modulePath.toString())
|
||||
.outdir(out)
|
||||
.files(findJavaFiles(m2Runtime))
|
||||
|
@ -380,7 +386,7 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
String output;
|
||||
|
||||
try {
|
||||
output = tb.new JavaTask()
|
||||
output = new JavaTask(tb)
|
||||
.vmOptions(augmentOptions(options,
|
||||
Collections.emptyList(),
|
||||
"-modulepath", modulePath.toString() + File.pathSeparator + out.getParent().toString(),
|
||||
|
@ -389,10 +395,10 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
"-m", "m2/test.Test"))
|
||||
.run()
|
||||
.writeAll()
|
||||
.getOutput(ToolBox.OutputKind.STDERR);
|
||||
.getOutput(Task.OutputKind.STDERR);
|
||||
|
||||
success = true;
|
||||
} catch (ToolBox.TaskError err) {
|
||||
} catch (Task.TaskError err) {
|
||||
success = false;
|
||||
output = "";
|
||||
}
|
||||
|
@ -410,7 +416,7 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
"-Aoutput=" + output,
|
||||
"-XDaccessInternalAPI=true"
|
||||
) : Collections.emptyList();
|
||||
tb.new JavacTask()
|
||||
new JavacTask(tb)
|
||||
.options(augmentOptions(options,
|
||||
auxOptions,
|
||||
"-modulepath", modulePath.toString(),
|
||||
|
@ -418,7 +424,7 @@ public class AddLimitMods extends ModuleTestBase {
|
|||
"-XDshouldStopPolicyIfNoError=FLOW"))
|
||||
.outdir(modulePath)
|
||||
.files(findJavaFiles(m2))
|
||||
.run(success ? ToolBox.Expect.SUCCESS : ToolBox.Expect.FAIL)
|
||||
.run(success ? Task.Expect.SUCCESS : Task.Expect.FAIL)
|
||||
.writeAll();
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue