mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 15:24:43 +02:00
8170987: Module system implementation refresh (12/2016)
Co-authored-by: Jonathan Gibbons <jonathan.gibbons@oracle.com> Co-authored-by: Jan Lahoda <jan.lahoda@oracle.com> Co-authored-by: Srikanth Adayapalam <srikanth.adayapalam@oracle.com> Co-authored-by: Mandy Chung <mandy.chung@oracle.com> Reviewed-by: mcimadamore
This commit is contained in:
parent
353a59448d
commit
2381943e61
147 changed files with 2438 additions and 1528 deletions
|
@ -46,7 +46,7 @@ public class ModuleTest extends ModuleTestBase {
|
|||
|
||||
@Test
|
||||
public void testEmptyModule(Path base) throws Exception {
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1")
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m")
|
||||
.write(base);
|
||||
compile(base);
|
||||
testModuleAttribute(base, moduleDescriptor);
|
||||
|
@ -54,7 +54,7 @@ public class ModuleTest extends ModuleTestBase {
|
|||
|
||||
@Test
|
||||
public void testExports(Path base) throws Exception {
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1")
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m")
|
||||
.exports("pack")
|
||||
.write(base);
|
||||
tb.writeJavaFiles(base, "package pack; public class C extends java.util.ArrayList{ }");
|
||||
|
@ -64,7 +64,7 @@ public class ModuleTest extends ModuleTestBase {
|
|||
|
||||
@Test
|
||||
public void testSeveralExports(Path base) throws Exception {
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1")
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m")
|
||||
.exports("pack")
|
||||
.exports("pack2")
|
||||
.exports("pack3")
|
||||
|
@ -83,7 +83,7 @@ public class ModuleTest extends ModuleTestBase {
|
|||
|
||||
@Test
|
||||
public void testQualifiedExports(Path base) throws Exception {
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1")
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m")
|
||||
.exportsTo("pack", "jdk.compiler")
|
||||
.write(base);
|
||||
tb.writeJavaFiles(base, "package pack; public class A { }");
|
||||
|
@ -93,7 +93,7 @@ public class ModuleTest extends ModuleTestBase {
|
|||
|
||||
@Test
|
||||
public void testQualifiedDynamicExports(Path base) throws Exception {
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1")
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m")
|
||||
.exportsTo("pack", "jdk.compiler")
|
||||
.write(base);
|
||||
tb.writeJavaFiles(base, "package pack; public class A { }");
|
||||
|
@ -103,7 +103,7 @@ public class ModuleTest extends ModuleTestBase {
|
|||
|
||||
@Test
|
||||
public void testSeveralQualifiedExports(Path base) throws Exception {
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1")
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m")
|
||||
.exportsTo("pack", "jdk.compiler, jdk.jdeps")
|
||||
.exportsTo("pack2", "jdk.jdeps")
|
||||
.exportsTo("pack3", "jdk.compiler")
|
||||
|
@ -122,7 +122,7 @@ public class ModuleTest extends ModuleTestBase {
|
|||
|
||||
@Test
|
||||
public void testRequires(Path base) throws Exception {
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1")
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m")
|
||||
.requires("jdk.compiler")
|
||||
.write(base);
|
||||
compile(base);
|
||||
|
@ -131,7 +131,7 @@ public class ModuleTest extends ModuleTestBase {
|
|||
|
||||
@Test
|
||||
public void testRequiresTransitive(Path base) throws Exception {
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1")
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m")
|
||||
.requires("jdk.jdeps", RequiresFlag.TRANSITIVE)
|
||||
.write(base);
|
||||
compile(base);
|
||||
|
@ -140,7 +140,7 @@ public class ModuleTest extends ModuleTestBase {
|
|||
|
||||
@Test
|
||||
public void testRequiresStatic(Path base) throws Exception {
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1")
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m")
|
||||
.requires("jdk.jdeps", RequiresFlag.STATIC)
|
||||
.write(base);
|
||||
compile(base);
|
||||
|
@ -149,26 +149,26 @@ public class ModuleTest extends ModuleTestBase {
|
|||
|
||||
@Test
|
||||
public void testSeveralRequires(Path base) throws Exception {
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1")
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1x")
|
||||
.requires("jdk.jdeps", RequiresFlag.TRANSITIVE)
|
||||
.requires("jdk.compiler")
|
||||
.requires("m2", RequiresFlag.STATIC)
|
||||
.requires("m3")
|
||||
.requires("m4", RequiresFlag.TRANSITIVE)
|
||||
.requires("m5", RequiresFlag.STATIC, RequiresFlag.TRANSITIVE)
|
||||
.write(base.resolve("m1"));
|
||||
tb.writeJavaFiles(base.resolve("m2"), "module m2 { }");
|
||||
tb.writeJavaFiles(base.resolve("m3"), "module m3 { }");
|
||||
tb.writeJavaFiles(base.resolve("m4"), "module m4 { }");
|
||||
tb.writeJavaFiles(base.resolve("m5"), "module m5 { }");
|
||||
.requires("m2x", RequiresFlag.STATIC)
|
||||
.requires("m3x")
|
||||
.requires("m4x", RequiresFlag.TRANSITIVE)
|
||||
.requires("m5x", RequiresFlag.STATIC, RequiresFlag.TRANSITIVE)
|
||||
.write(base.resolve("m1x"));
|
||||
tb.writeJavaFiles(base.resolve("m2x"), "module m2x { }");
|
||||
tb.writeJavaFiles(base.resolve("m3x"), "module m3x { }");
|
||||
tb.writeJavaFiles(base.resolve("m4x"), "module m4x { }");
|
||||
tb.writeJavaFiles(base.resolve("m5x"), "module m5x { }");
|
||||
compile(base, "--module-source-path", base.toString(),
|
||||
"-d", base.toString());
|
||||
testModuleAttribute(base.resolve("m1"), moduleDescriptor);
|
||||
testModuleAttribute(base.resolve("m1x"), moduleDescriptor);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testProvides(Path base) throws Exception {
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1")
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m")
|
||||
.provides("java.util.Collection", "pack2.D")
|
||||
.write(base);
|
||||
tb.writeJavaFiles(base, "package pack2; public class D extends java.util.ArrayList{ }");
|
||||
|
@ -178,7 +178,7 @@ public class ModuleTest extends ModuleTestBase {
|
|||
|
||||
@Test
|
||||
public void testSeveralProvides(Path base) throws Exception {
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1")
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m")
|
||||
.provides("java.util.Collection", "pack2.D")
|
||||
.provides("java.util.List", "pack2.D")
|
||||
.requires("jdk.compiler")
|
||||
|
@ -192,7 +192,7 @@ public class ModuleTest extends ModuleTestBase {
|
|||
|
||||
@Test
|
||||
public void testUses(Path base) throws Exception {
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1")
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m")
|
||||
.uses("java.util.List")
|
||||
.write(base);
|
||||
compile(base);
|
||||
|
@ -201,7 +201,7 @@ public class ModuleTest extends ModuleTestBase {
|
|||
|
||||
@Test
|
||||
public void testSeveralUses(Path base) throws Exception {
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1")
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m")
|
||||
.uses("java.util.List")
|
||||
.uses("java.util.Collection")
|
||||
.requires("jdk.compiler")
|
||||
|
@ -213,22 +213,22 @@ public class ModuleTest extends ModuleTestBase {
|
|||
|
||||
@Test
|
||||
public void testComplex(Path base) throws Exception {
|
||||
Path m1 = base.resolve("m1");
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1")
|
||||
Path m1 = base.resolve("m1x");
|
||||
ModuleDescriptor moduleDescriptor = new ModuleDescriptor("m1x")
|
||||
.exports("pack1")
|
||||
.exports("pack3")
|
||||
.exportsTo("packTo1", "m2")
|
||||
.exportsTo("packTo3", "m3")
|
||||
.exportsTo("packTo1", "m2x")
|
||||
.exportsTo("packTo3", "m3x")
|
||||
.requires("jdk.compiler")
|
||||
.requires("m2", RequiresFlag.TRANSITIVE)
|
||||
.requires("m3", RequiresFlag.STATIC)
|
||||
.requires("m4", RequiresFlag.TRANSITIVE, RequiresFlag.STATIC)
|
||||
.requires("m2x", RequiresFlag.TRANSITIVE)
|
||||
.requires("m3x", RequiresFlag.STATIC)
|
||||
.requires("m4x", RequiresFlag.TRANSITIVE, RequiresFlag.STATIC)
|
||||
.provides("java.util.List", "pack1.C", "pack2.D")
|
||||
.uses("java.util.List")
|
||||
.uses("java.nio.file.Path")
|
||||
.requires("jdk.jdeps", RequiresFlag.STATIC, RequiresFlag.TRANSITIVE)
|
||||
.requires("m5", RequiresFlag.STATIC)
|
||||
.requires("m6", RequiresFlag.TRANSITIVE)
|
||||
.requires("m5x", RequiresFlag.STATIC)
|
||||
.requires("m6x", RequiresFlag.TRANSITIVE)
|
||||
.requires("java.compiler")
|
||||
.exportsTo("packTo4", "java.compiler")
|
||||
.exportsTo("packTo2", "java.compiler")
|
||||
|
@ -244,11 +244,11 @@ public class ModuleTest extends ModuleTestBase {
|
|||
"package packTo2; public class T2 {}",
|
||||
"package packTo3; public class T3 {}",
|
||||
"package packTo4; public class T4 {}");
|
||||
tb.writeJavaFiles(base.resolve("m2"), "module m2 { }");
|
||||
tb.writeJavaFiles(base.resolve("m3"), "module m3 { }");
|
||||
tb.writeJavaFiles(base.resolve("m4"), "module m4 { }");
|
||||
tb.writeJavaFiles(base.resolve("m5"), "module m5 { }");
|
||||
tb.writeJavaFiles(base.resolve("m6"), "module m6 { }");
|
||||
tb.writeJavaFiles(base.resolve("m2x"), "module m2x { }");
|
||||
tb.writeJavaFiles(base.resolve("m3x"), "module m3x { }");
|
||||
tb.writeJavaFiles(base.resolve("m4x"), "module m4x { }");
|
||||
tb.writeJavaFiles(base.resolve("m5x"), "module m5x { }");
|
||||
tb.writeJavaFiles(base.resolve("m6x"), "module m6x { }");
|
||||
compile(base, "--module-source-path", base.toString(),
|
||||
"-d", base.toString());
|
||||
testModuleAttribute(m1, moduleDescriptor);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue