< prev index next >

test/tools/javac/modules/AddReadsTest.java

Print this page
rev 3947 : imported patch xmodule-to-patch-module


 200           .outdir(classes)
 201           .files(m1.resolve("impl").resolve("Impl.java"))
 202           .run()
 203           .writeAll();
 204     }
 205 
 206     @Test
 207     public void testAddReadsUnnamedToJavaBase(Path base) throws Exception {
 208         Path jar = prepareTestJar(base);
 209         Path src = base.resolve("src");
 210         Path classes = base.resolve("classes");
 211 
 212         Files.createDirectories(classes);
 213 
 214         tb.writeJavaFiles(src,
 215                           "package impl; public class Impl { api.Api a; }");
 216 
 217         new JavacTask(tb)
 218           .options("--class-path", jar.toString(),
 219                    "--add-reads", "java.base=ALL-UNNAMED",
 220                    "-Xmodule:java.base")
 221           .outdir(classes)
 222           .files(src.resolve("impl").resolve("Impl.java"))
 223           .run()
 224           .writeAll();
 225     }
 226 
 227     @Test
 228     public void testAddReadsToJavaBase(Path base) throws Exception {
 229         Path src = base.resolve("src");
 230         Path classes = base.resolve("classes");
 231 
 232         Files.createDirectories(classes);
 233 
 234         tb.writeJavaFiles(src,
 235                           "package impl; public class Impl { javax.swing.JButton b; }");
 236 
 237         new JavacTask(tb)
 238           .options("--add-modules", "java.desktop",
 239                    "--add-reads", "java.base=java.desktop",
 240                    "-Xmodule:java.base")
 241           .outdir(classes)
 242           .files(findJavaFiles(src))
 243           .run()
 244           .writeAll();
 245     }
 246 
 247     private Path prepareTestJar(Path base) throws Exception {
 248         Path legacySrc = base.resolve("legacy-src");
 249         tb.writeJavaFiles(legacySrc,
 250                           "package api; public abstract class Api {}");
 251         Path legacyClasses = base.resolve("legacy-classes");
 252         Files.createDirectories(legacyClasses);
 253 
 254         String log = new JavacTask(tb)
 255                 .options()
 256                 .outdir(legacyClasses)
 257                 .files(findJavaFiles(legacySrc))
 258                 .run()
 259                 .writeAll()
 260                 .getOutput(Task.OutputKind.DIRECT);


 287         Path classes = base.resolve("classes");
 288         tb.createDirectories(classes);
 289 
 290         new JavacTask(tb)
 291                 .options("--module-source-path", src.toString())
 292                 .outdir(classes)
 293                 .files(findJavaFiles(src))
 294                 .run()
 295                 .writeAll();
 296 
 297         Path unnamedSrc = base.resolve("unnamed-src");
 298         Path unnamedClasses = base.resolve("unnamed-classes");
 299 
 300         Files.createDirectories(unnamedClasses);
 301 
 302         tb.writeJavaFiles(unnamedSrc,
 303                           "package impl; public class Impl { }");
 304 
 305         new JavacTask(tb)
 306           .options("--add-reads", "m1x=ALL-UNNAMED",
 307                    "-Xmodule:m1x",
 308                    "--module-path", classes.toString())
 309           .outdir(unnamedClasses)
 310           .files(findJavaFiles(unnamedSrc))
 311           .run()
 312           .writeAll();
 313     }
 314 
 315     @Test
 316     public void testAddSelf(Path base) throws Exception {
 317         Path src = base.resolve("src");
 318         Path src_m1 = src.resolve("m1x");
 319         tb.writeJavaFiles(src_m1,
 320                           "module m1x { exports p1; }",
 321                           "package p1; public class C1 { }");
 322         Path classes = base.resolve("classes");
 323         tb.createDirectories(classes);
 324 
 325         new JavacTask(tb)
 326                 .options("--module-source-path", src.toString(),
 327                          "--add-reads", "m1x=m1x")




 200           .outdir(classes)
 201           .files(m1.resolve("impl").resolve("Impl.java"))
 202           .run()
 203           .writeAll();
 204     }
 205 
 206     @Test
 207     public void testAddReadsUnnamedToJavaBase(Path base) throws Exception {
 208         Path jar = prepareTestJar(base);
 209         Path src = base.resolve("src");
 210         Path classes = base.resolve("classes");
 211 
 212         Files.createDirectories(classes);
 213 
 214         tb.writeJavaFiles(src,
 215                           "package impl; public class Impl { api.Api a; }");
 216 
 217         new JavacTask(tb)
 218           .options("--class-path", jar.toString(),
 219                    "--add-reads", "java.base=ALL-UNNAMED",
 220                    "--patch-module", "java.base=" + src.toString())
 221           .outdir(classes)
 222           .files(src.resolve("impl").resolve("Impl.java"))
 223           .run()
 224           .writeAll();
 225     }
 226 
 227     @Test
 228     public void testAddReadsToJavaBase(Path base) throws Exception {
 229         Path src = base.resolve("src");
 230         Path classes = base.resolve("classes");
 231 
 232         Files.createDirectories(classes);
 233 
 234         tb.writeJavaFiles(src,
 235                           "package impl; public class Impl { javax.swing.JButton b; }");
 236 
 237         new JavacTask(tb)
 238           .options("--add-modules", "java.desktop",
 239                    "--add-reads", "java.base=java.desktop",
 240                    "--patch-module", "java.base=" + src)
 241           .outdir(classes)
 242           .files(findJavaFiles(src))
 243           .run()
 244           .writeAll();
 245     }
 246 
 247     private Path prepareTestJar(Path base) throws Exception {
 248         Path legacySrc = base.resolve("legacy-src");
 249         tb.writeJavaFiles(legacySrc,
 250                           "package api; public abstract class Api {}");
 251         Path legacyClasses = base.resolve("legacy-classes");
 252         Files.createDirectories(legacyClasses);
 253 
 254         String log = new JavacTask(tb)
 255                 .options()
 256                 .outdir(legacyClasses)
 257                 .files(findJavaFiles(legacySrc))
 258                 .run()
 259                 .writeAll()
 260                 .getOutput(Task.OutputKind.DIRECT);


 287         Path classes = base.resolve("classes");
 288         tb.createDirectories(classes);
 289 
 290         new JavacTask(tb)
 291                 .options("--module-source-path", src.toString())
 292                 .outdir(classes)
 293                 .files(findJavaFiles(src))
 294                 .run()
 295                 .writeAll();
 296 
 297         Path unnamedSrc = base.resolve("unnamed-src");
 298         Path unnamedClasses = base.resolve("unnamed-classes");
 299 
 300         Files.createDirectories(unnamedClasses);
 301 
 302         tb.writeJavaFiles(unnamedSrc,
 303                           "package impl; public class Impl { }");
 304 
 305         new JavacTask(tb)
 306           .options("--add-reads", "m1x=ALL-UNNAMED",
 307                    "--patch-module", "m1x=" + unnamedSrc.toString(),
 308                    "--module-path", classes.toString())
 309           .outdir(unnamedClasses)
 310           .files(findJavaFiles(unnamedSrc))
 311           .run()
 312           .writeAll();
 313     }
 314 
 315     @Test
 316     public void testAddSelf(Path base) throws Exception {
 317         Path src = base.resolve("src");
 318         Path src_m1 = src.resolve("m1x");
 319         tb.writeJavaFiles(src_m1,
 320                           "module m1x { exports p1; }",
 321                           "package p1; public class C1 { }");
 322         Path classes = base.resolve("classes");
 323         tb.createDirectories(classes);
 324 
 325         new JavacTask(tb)
 326                 .options("--module-source-path", src.toString(),
 327                          "--add-reads", "m1x=m1x")


< prev index next >