< prev index next >
test/jdk/nio/zipfs/MultiReleaseJarTest.java
Print this page
*** 36,55 ****
import java.lang.invoke.MethodType;
import java.net.URI;
import java.nio.file.*;
import java.util.HashMap;
import java.util.Map;
!
! import static sun.misc.Version.jdkMajorVersion;
import org.testng.Assert;
import org.testng.annotations.*;
public class MultiReleaseJarTest {
final private String userdir = System.getProperty("user.dir",".");
final private Map<String,String> stringEnv = new HashMap<>();
final private Map<String,Integer> integerEnv = new HashMap<>();
final private String className = "version.Version";
final private MethodType mt = MethodType.methodType(int.class);
private String entryName;
private URI uvuri;
--- 36,57 ----
import java.lang.invoke.MethodType;
import java.net.URI;
import java.nio.file.*;
import java.util.HashMap;
import java.util.Map;
! import jdk.Version;
import org.testng.Assert;
import org.testng.annotations.*;
public class MultiReleaseJarTest {
+ final private int MAJOR_VERSION= Version.current().major();
+
final private String userdir = System.getProperty("user.dir",".");
final private Map<String,String> stringEnv = new HashMap<>();
final private Map<String,Integer> integerEnv = new HashMap<>();
+ final private Map<String,Version> versionEnv = new HashMap<>();
final private String className = "version.Version";
final private MethodType mt = MethodType.methodType(int.class);
private String entryName;
private URI uvuri;
*** 79,89 ****
}
@DataProvider(name="strings")
public Object[][] createStrings() {
return new Object[][]{
! {"runtime", jdkMajorVersion()},
{"-20", 8},
{"0", 8},
{"8", 8},
{"9", 9},
{"10", 10},
--- 81,91 ----
}
@DataProvider(name="strings")
public Object[][] createStrings() {
return new Object[][]{
! {"runtime", MAJOR_VERSION},
{"-20", 8},
{"0", 8},
{"8", 8},
{"9", 9},
{"10", 10},
*** 103,112 ****
--- 105,125 ----
{new Integer(11), 10},
{new Integer(100), 10}
};
}
+ @DataProvider(name="versions")
+ public Object[][] createVersions() {
+ return new Object[][] {
+ {Version.parse("8"), 8},
+ {Version.parse("9"), 9},
+ {Version.parse("10"), 10},
+ {Version.parse("11"), 10},
+ {Version.parse("100"), 10}
+ };
+ }
+
// Not the best test but all I can do since ZipFileSystem and JarFileSystem
// are not public, so I can't use (fs instanceof ...)
@Test
public void testNewFileSystem() throws Exception {
Map<String,String> env = new HashMap<>();
*** 115,125 ****
Assert.assertTrue(readAndCompare(fs, 8));
}
env.put("multi-release", "runtime");
// a configuration and jar file is multi-release
try (FileSystem fs = FileSystems.newFileSystem(mruri, env)) {
! Assert.assertTrue(readAndCompare(fs, jdkMajorVersion()));
}
// a configuration but jar file is unversioned
try (FileSystem fs = FileSystems.newFileSystem(uvuri, env)) {
Assert.assertTrue(readAndCompare(fs, 8));
}
--- 128,138 ----
Assert.assertTrue(readAndCompare(fs, 8));
}
env.put("multi-release", "runtime");
// a configuration and jar file is multi-release
try (FileSystem fs = FileSystems.newFileSystem(mruri, env)) {
! Assert.assertTrue(readAndCompare(fs, MAJOR_VERSION));
}
// a configuration but jar file is unversioned
try (FileSystem fs = FileSystems.newFileSystem(uvuri, env)) {
Assert.assertTrue(readAndCompare(fs, 8));
}
*** 141,150 ****
--- 154,169 ----
public void testIntegers(Integer value, int expected) throws Throwable {
integerEnv.put("multi-release", value);
runTest(integerEnv, expected);
}
+ @Test(dataProvider="versions")
+ public void testVersions(Version value, int expected) throws Throwable {
+ versionEnv.put("multi-release", value);
+ runTest(versionEnv, expected);
+ }
+
@Test
public void testShortJar() throws Throwable {
integerEnv.put("multi-release", Integer.valueOf(10));
runTest(smruri, integerEnv, 10);
integerEnv.put("multi-release", Integer.valueOf(9));
< prev index next >