< prev index next >

test/hotspot/jtreg/runtime/modules/JVMDefineModule.java

Print this page
rev 58870 : 8242452: During module definition, move conversion of packages from native to VM
8242290: Pointless verification in get_package_entry_by_name
Reviewed-by: lfoltan, alanb, iklam

*** 193,212 **** // Zero length package list, should be okay m = ModuleHelper.ModuleObject("zero.packages", cl, new String[] { }); assertNotNull(m, "Module should not be null"); ModuleHelper.DefineModule(m, false, "9.0", "module.name/here", new String[] { }); ! // Invalid package name, expect an IAE m = ModuleHelper.ModuleObject("moduleFive", cl, new String[] { "your.apackage" }); ! try { ! ModuleHelper.DefineModule(m, false, "9.0", "module.name/here", new String[] { "your.apackage" }); ! throw new RuntimeException("Failed to get expected IAE for your.apackage"); ! } catch(IllegalArgumentException e) { ! if (!e.getMessage().contains("Invalid package name")) { ! throw new RuntimeException("Failed to get expected IAE message for bad package name: " + e.getMessage()); ! } ! } // Invalid package name, expect an IAE m = ModuleHelper.ModuleObject("moduleSix", cl, new String[] { "foo" }); // Name irrelevant try { ModuleHelper.DefineModule(m, false, "9.0", "module.name/here", new String[] { ";your/apackage" }); --- 193,206 ---- // Zero length package list, should be okay m = ModuleHelper.ModuleObject("zero.packages", cl, new String[] { }); assertNotNull(m, "Module should not be null"); ModuleHelper.DefineModule(m, false, "9.0", "module.name/here", new String[] { }); ! // Package name with dots, should be okay m = ModuleHelper.ModuleObject("moduleFive", cl, new String[] { "your.apackage" }); ! assertNotNull(m, "Module should not be null"); ! ModuleHelper.DefineModule(m, false, "9.0", "moduleFive", new String[] { "your.apackage" }); // Invalid package name, expect an IAE m = ModuleHelper.ModuleObject("moduleSix", cl, new String[] { "foo" }); // Name irrelevant try { ModuleHelper.DefineModule(m, false, "9.0", "module.name/here", new String[] { ";your/apackage" });
*** 278,286 **** --- 272,312 ---- // module location that is "", should be okay m = ModuleHelper.ModuleObject("moduleEleven", cl, new String[] { "a_package_11" }); assertNotNull(m, "Module should not be null"); ModuleHelper.DefineModule(m, false, "9.0", "", new String[] { "a_package_11" }); + + // module with very long package names, should be okay + String[] longPackageNames = new String[] { + "mypackage/mypackage/mypackage/mypackage1", + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage2", + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage/" + + "mypackage/mypackage/mypackage/mypackage3" + }; + m = ModuleHelper.ModuleObject("moduleTwelve", cl, longPackageNames); + assertNotNull(m, "Module should not be null"); + ModuleHelper.DefineModule(m, false, "9.0", "moduleTwelve", longPackageNames); + // Indirectly test that the package names doesn't get truncated when defined + for (int i = 0; i < longPackageNames.length; i++) { + ModuleHelper.AddModuleExportsToAllUnnamed(m, longPackageNames[i]); + } } static class MyClassLoader extends ClassLoader { } }
< prev index next >