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:
Alan Bateman 2016-12-16 05:47:58 +00:00
parent 353a59448d
commit 2381943e61
147 changed files with 2438 additions and 1528 deletions

View file

@ -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);