changeset 59210:01cb61a27e61

8235514: Update record serialization tests to not use hard coded source versions Reviewed-by: lancea
author darcy
date Fri, 06 Dec 2019 13:32:46 -0800
parents 0bd09f6d2617
children 8539243dc929
files test/jdk/java/io/Serializable/records/BadCanonicalCtrTest.java test/jdk/java/io/Serializable/records/ProhibitedMethods.java test/jdk/java/io/Serializable/records/SerialPersistentFieldsTest.java
diffstat 3 files changed, 14 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/test/jdk/java/io/Serializable/records/BadCanonicalCtrTest.java	Fri Dec 06 13:03:39 2019 -0800
+++ b/test/jdk/java/io/Serializable/records/BadCanonicalCtrTest.java	Fri Dec 06 13:32:46 2019 -0800
@@ -59,6 +59,7 @@
  * constructor cannot be found during deserialization.
  */
 public class BadCanonicalCtrTest {
+    private static final String VERSION = Integer.toString(Runtime.version().feature());
 
     // ClassLoader for creating instances of the records to test with.
     ClassLoader goodRecordClassLoader;
@@ -79,7 +80,7 @@
         {
             byte[] byteCode = InMemoryJavaCompiler.compile("R1",
                     "public record R1 () implements java.io.Serializable { }",
-                    "--enable-preview", "-source", "14");
+                    "--enable-preview", "-source", VERSION);
             goodRecordClassLoader = new ByteCodeLoader("R1", byteCode, BadCanonicalCtrTest.class.getClassLoader());
             byte[] bc1 = removeConstructor(byteCode);
             missingCtrClassLoader = new ByteCodeLoader("R1", bc1, BadCanonicalCtrTest.class.getClassLoader());
@@ -89,7 +90,7 @@
         {
             byte[] byteCode = InMemoryJavaCompiler.compile("R2",
                     "public record R2 (int x, int y) implements java.io.Serializable { }",
-                    "--enable-preview", "-source", "14");
+                    "--enable-preview", "-source", VERSION);
             goodRecordClassLoader = new ByteCodeLoader("R2", byteCode, goodRecordClassLoader);
             byte[] bc1 = removeConstructor(byteCode);
             missingCtrClassLoader = new ByteCodeLoader("R2", bc1, missingCtrClassLoader);
@@ -101,7 +102,7 @@
                     "public record R3 (long l) implements java.io.Externalizable {" +
                     "    public void writeExternal(java.io.ObjectOutput out) { }" +
                     "    public void readExternal(java.io.ObjectInput in)    { } }",
-                    "--enable-preview", "-source", "14");
+                    "--enable-preview", "-source", VERSION);
             goodRecordClassLoader = new ByteCodeLoader("R3", byteCode, goodRecordClassLoader);
             byte[] bc1 = removeConstructor(byteCode);
             missingCtrClassLoader = new ByteCodeLoader("R3", bc1, missingCtrClassLoader);
--- a/test/jdk/java/io/Serializable/records/ProhibitedMethods.java	Fri Dec 06 13:03:39 2019 -0800
+++ b/test/jdk/java/io/Serializable/records/ProhibitedMethods.java	Fri Dec 06 13:32:46 2019 -0800
@@ -69,6 +69,7 @@
  * record objects.
  */
 public class ProhibitedMethods {
+    private static final String VERSION = Integer.toString(Runtime.version().feature());
 
     public interface ThrowingExternalizable extends Externalizable {
         default void writeExternal(ObjectOutput out) {
@@ -106,7 +107,7 @@
         {
             byte[] byteCode = InMemoryJavaCompiler.compile("Foo",
                     "public record Foo () implements java.io.Serializable { }",
-                    "--enable-preview", "-source", "14");
+                    "--enable-preview", "-source", VERSION);
             byteCode = addWriteObject(byteCode);
             byteCode = addReadObject(byteCode);
             byteCode = addReadObjectNoData(byteCode);
@@ -115,7 +116,7 @@
         {
             byte[] byteCode = InMemoryJavaCompiler.compile("Bar",
                     "public record Bar (int x, int y) implements java.io.Serializable { }",
-                    "--enable-preview", "-source", "14");
+                    "--enable-preview", "-source", VERSION);
             byteCode = addWriteObject(byteCode);
             byteCode = addReadObject(byteCode);
             byteCode = addReadObjectNoData(byteCode);
@@ -125,7 +126,7 @@
             byte[] byteCode = InMemoryJavaCompiler.compile("Baz",
                     "import java.io.Serializable;" +
                     "public record Baz<U extends Serializable,V extends Serializable>(U u, V v) implements Serializable { }",
-                    "--enable-preview", "-source", "14");
+                    "--enable-preview", "-source", VERSION);
             byteCode = addWriteObject(byteCode);
             byteCode = addReadObject(byteCode);
             byteCode = addReadObjectNoData(byteCode);
--- a/test/jdk/java/io/Serializable/records/SerialPersistentFieldsTest.java	Fri Dec 06 13:03:39 2019 -0800
+++ b/test/jdk/java/io/Serializable/records/SerialPersistentFieldsTest.java	Fri Dec 06 13:32:46 2019 -0800
@@ -64,6 +64,7 @@
  * Checks that the serialPersistentFields declaration is effectively ignored.
  */
 public class SerialPersistentFieldsTest {
+    private static final String VERSION = Integer.toString(Runtime.version().feature());
 
     ClassLoader serializableRecordLoader;
 
@@ -85,7 +86,7 @@
         {  // R1
             byte[] byteCode = InMemoryJavaCompiler.compile("R1",
                     "public record R1 () implements java.io.Serializable { }",
-                    "--enable-preview", "-source", "14");
+                    "--enable-preview", "-source", VERSION);
             ObjectStreamField[] serialPersistentFields = {
                     new ObjectStreamField("s", String.class),
                     new ObjectStreamField("i", int.class),
@@ -98,7 +99,7 @@
         {  // R2
             byte[] byteCode = InMemoryJavaCompiler.compile("R2",
                     "public record R2 (int x) implements java.io.Serializable { }",
-                    "--enable-preview", "-source", "14");
+                    "--enable-preview", "-source", VERSION);
             ObjectStreamField[] serialPersistentFields = {
                     new ObjectStreamField("s", String.class)
             };
@@ -108,7 +109,7 @@
         {  // R3
             byte[] byteCode = InMemoryJavaCompiler.compile("R3",
                     "public record R3 (int x, int y) implements java.io.Serializable { }",
-                    "--enable-preview", "-source", "14");
+                    "--enable-preview", "-source", VERSION);
             ObjectStreamField[] serialPersistentFields = new ObjectStreamField[0];
             byteCode = addSerialPersistentFields(byteCode, serialPersistentFields);
             serializableRecordLoader = new ByteCodeLoader("R3", byteCode, serializableRecordLoader);
@@ -117,7 +118,7 @@
             byte[] byteCode = InMemoryJavaCompiler.compile("R4",
                     "import java.io.Serializable;" +
                     "public record R4<U extends Serializable,V extends Serializable>(U u, V v) implements Serializable { }",
-                    "--enable-preview", "-source", "14");
+                    "--enable-preview", "-source", VERSION);
             ObjectStreamField[] serialPersistentFields = {
                     new ObjectStreamField("v", String.class)
             };
@@ -134,7 +135,7 @@
                     "    @Override public void readExternal(ObjectInput in) {\n" +
                     "        throw new AssertionError(\"should not reach here\");\n" +
                     "    }  }",
-                    "--enable-preview", "-source", "14");
+                    "--enable-preview", "-source", VERSION);
             ObjectStreamField[] serialPersistentFields = {
                     new ObjectStreamField("v", String.class)
             };