RFR [1]6 8248326 Add a minimal serialization test for local records

Daniel Fuchs daniel.fuchs at oracle.com
Thu Jun 25 15:24:12 UTC 2020


Hi Chris,

Looks good to me. It might also be beneficial to double check
that the hash codes of the two objects are equal.

best regards,

-- daniel

On 25/06/2020 16:01, Chris Hegarty wrote:
> While working on some record serialization changes recently, I noticed that we don’t have any coverage for local records. Here is a simple extension to an existing records test.
> 
> diff -r 4e186efa6cbf test/jdk/java/io/Serializable/records/BasicRecordSer.java
> --- a/test/jdk/java/io/Serializable/records/BasicRecordSer.java	Thu Jun 25 09:54:19 2020 +0100
> +++ b/test/jdk/java/io/Serializable/records/BasicRecordSer.java	Thu Jun 25 15:40:13 2020 +0100
> @@ -132,6 +132,20 @@
>           assertEquals(objDeserialized, objToSerialize);
>       }
>   
> +    /** Tests serializing and deserializing of local records. */
> +    @Test
> +    public void testLocalRecord() throws Exception {
> +        out.println("\n---");
> +        record Point(int x, int y) implements Serializable { }
> +        record Rectangle(Point bottomLeft, Point topRight) implements Serializable { }
> +        var objToSerialize = new Rectangle(new Point(0, 1), new Point (5, 6));
> +        out.println("serializing : " + objToSerialize);
> +        var objDeserialized = serializeDeserialize(objToSerialize);
> +        out.println("deserialized: " + objDeserialized);
> +        assertEquals(objToSerialize, objDeserialized);
> +        assertEquals(objDeserialized, objToSerialize);
> +    }
> +
>       /** Tests back references of Serializable record objects in the stream. */
>       @Test
>       public void testSerializableBackRefs() throws Exception {
> 
> -Chris.
> 



More information about the core-libs-dev mailing list