From aa9f25316da79d3ad94a67d93b61019e194a5f0e Mon Sep 17 00:00:00 2001 From: PJ Fanning Date: Wed, 25 Oct 2023 12:14:29 +0100 Subject: [PATCH] add tests for private record --- .../jackson/databind/records/RecordBasicsTest.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/test-jdk17/java/com/fasterxml/jackson/databind/records/RecordBasicsTest.java b/src/test-jdk17/java/com/fasterxml/jackson/databind/records/RecordBasicsTest.java index c2dfb3261d..109648aea0 100644 --- a/src/test-jdk17/java/com/fasterxml/jackson/databind/records/RecordBasicsTest.java +++ b/src/test-jdk17/java/com/fasterxml/jackson/databind/records/RecordBasicsTest.java @@ -20,6 +20,8 @@ record EmptyRecord() { } record SimpleRecord(int id, String name) { } + private record PrivateTextRecord(String text) { } + record RecordOfRecord(SimpleRecord record) { } record RecordWithRename(int id, @JsonProperty("rename")String name) { } @@ -95,6 +97,18 @@ public void testDeserializeSimpleRecord() throws Exception { MAPPER.readValue("{\"id\":123,\"name\":\"Bob\"}", SimpleRecord.class)); } + public void testSerializePrivateTextRecord() throws Exception { + PrivateTextRecord textRecord = new PrivateTextRecord("anything"); + String json = MAPPER.writeValueAsString(textRecord); + final Object EXP = Collections.singletonMap("text", "anything"); + assertEquals(EXP, MAPPER.readValue(json, Object.class)); + } + + public void testDeserializePrivateTextRecord() throws Exception { + assertEquals(new PrivateTextRecord("anything"), + MAPPER.readValue("{\"text\":\"anything\"}", PrivateTextRecord.class)); + } + public void testSerializeEmptyRecord() throws Exception { assertEquals("{}", MAPPER.writeValueAsString(new EmptyRecord())); }