diff --git a/src/test/java/com/fasterxml/jackson/annotation/VisibilityTest.java b/src/test/java/com/fasterxml/jackson/annotation/JsonAutoDetectTest.java similarity index 97% rename from src/test/java/com/fasterxml/jackson/annotation/VisibilityTest.java rename to src/test/java/com/fasterxml/jackson/annotation/JsonAutoDetectTest.java index 7ee1bd00..2d5eecd9 100644 --- a/src/test/java/com/fasterxml/jackson/annotation/VisibilityTest.java +++ b/src/test/java/com/fasterxml/jackson/annotation/JsonAutoDetectTest.java @@ -9,7 +9,8 @@ import static org.junit.jupiter.api.Assertions.*; // Silly test for JsonAutoDetect.Visibility type, for code coverage -public class VisibilityTest +public class JsonAutoDetectTest + extends AnnotationTestUtil { static class Bogus { public String value; @@ -82,6 +83,12 @@ public void testFromAnnotation() assertEquals(ann.isGetterVisibility(), v.getIsGetterVisibility()); assertEquals(ann.setterVisibility(), v.getSetterVisibility()); assertEquals(ann.creatorVisibility(), v.getCreatorVisibility()); + + // Let's also verify JDK serializability + byte[] b = jdkSerialize(v); + JsonAutoDetect.Value deser = jdkDeserialize(b); + + assertEquals(v, deser); } @Test diff --git a/src/test/java/com/fasterxml/jackson/annotation/JsonIgnorePropertiesTest.java b/src/test/java/com/fasterxml/jackson/annotation/JsonIgnorePropertiesTest.java index 4a1a7992..5bc26d86 100644 --- a/src/test/java/com/fasterxml/jackson/annotation/JsonIgnorePropertiesTest.java +++ b/src/test/java/com/fasterxml/jackson/annotation/JsonIgnorePropertiesTest.java @@ -11,6 +11,7 @@ * instances for overrides */ public class JsonIgnorePropertiesTest + extends AnnotationTestUtil { @JsonIgnoreProperties(value={ "foo", "bar" }, ignoreUnknown=true) private final static class Bogus { @@ -53,6 +54,12 @@ public void testFromAnnotation() throws Exception Set ign = v.getIgnored(); assertEquals(2, v.getIgnored().size()); assertEquals(_set("foo", "bar"), ign); + + // Let's also verify JDK serializability + byte[] b = jdkSerialize(v); + JsonIgnoreProperties.Value deser = jdkDeserialize(b); + + assertEquals(v, deser); } @Test diff --git a/src/test/java/com/fasterxml/jackson/annotation/JsonIncludePropertiesTest.java b/src/test/java/com/fasterxml/jackson/annotation/JsonIncludePropertiesTest.java index c751d4d6..77640725 100644 --- a/src/test/java/com/fasterxml/jackson/annotation/JsonIncludePropertiesTest.java +++ b/src/test/java/com/fasterxml/jackson/annotation/JsonIncludePropertiesTest.java @@ -11,6 +11,7 @@ * instances for overrides */ public class JsonIncludePropertiesTest + extends AnnotationTestUtil { @JsonIncludeProperties(value = {"foo", "bar"}) private final static class Bogus @@ -42,6 +43,12 @@ public void testFromAnnotation() boolean test2 = tmp.equals("JsonIncludeProperties.Value(included=[bar, foo])"); assertTrue(test1 || test2); assertEquals(v, JsonIncludeProperties.Value.from(Bogus.class.getAnnotation(JsonIncludeProperties.class))); + + // Let's also verify JDK serializability + byte[] b = jdkSerialize(v); + JsonIncludeProperties.Value deser = jdkDeserialize(b); + + assertEquals(v, deser); } @Test diff --git a/src/test/java/com/fasterxml/jackson/annotation/IncludeTest.java b/src/test/java/com/fasterxml/jackson/annotation/JsonIncludeTest.java similarity index 96% rename from src/test/java/com/fasterxml/jackson/annotation/IncludeTest.java rename to src/test/java/com/fasterxml/jackson/annotation/JsonIncludeTest.java index bdb015e1..b48cf7fe 100644 --- a/src/test/java/com/fasterxml/jackson/annotation/IncludeTest.java +++ b/src/test/java/com/fasterxml/jackson/annotation/JsonIncludeTest.java @@ -10,7 +10,8 @@ * Tests to verify that it is possibly to merge {@link JsonInclude.Value} * instances for overrides */ -public class IncludeTest +public class JsonIncludeTest + extends AnnotationTestUtil { private final JsonInclude.Value EMPTY = JsonInclude.Value.empty(); @@ -45,6 +46,12 @@ public void testFromAnnotation() JsonInclude.Value v = JsonInclude.Value.from(ann); assertEquals(Include.NON_EMPTY, v.getValueInclusion()); assertEquals(Include.NON_DEFAULT, v.getContentInclusion()); + + // Let's also verify JDK serializability + byte[] b = jdkSerialize(v); + JsonInclude.Value deser = jdkDeserialize(b); + + assertEquals(v, deser); } @Test diff --git a/src/test/java/com/fasterxml/jackson/annotation/JsonSetterTest.java b/src/test/java/com/fasterxml/jackson/annotation/JsonSetterTest.java index 2932c0be..5ee60a63 100644 --- a/src/test/java/com/fasterxml/jackson/annotation/JsonSetterTest.java +++ b/src/test/java/com/fasterxml/jackson/annotation/JsonSetterTest.java @@ -5,6 +5,7 @@ import static org.junit.jupiter.api.Assertions.*; public class JsonSetterTest + extends AnnotationTestUtil { private final static class Bogus { @JsonSetter(nulls=Nulls.FAIL, contentNulls=Nulls.SKIP) @@ -47,6 +48,12 @@ public void testFromAnnotation() throws Exception JsonSetter.Value v = JsonSetter.Value.from(ann); assertEquals(Nulls.FAIL, v.getValueNulls()); assertEquals(Nulls.SKIP, v.getContentNulls()); + + // Let's also verify JDK serializability + byte[] b = jdkSerialize(v); + JsonSetter.Value deser = jdkDeserialize(b); + + assertEquals(v, deser); } @Test diff --git a/src/test/java/com/fasterxml/jackson/annotation/JsonTypeInfoTest.java b/src/test/java/com/fasterxml/jackson/annotation/JsonTypeInfoTest.java index 247ad45e..6c8a2bfa 100644 --- a/src/test/java/com/fasterxml/jackson/annotation/JsonTypeInfoTest.java +++ b/src/test/java/com/fasterxml/jackson/annotation/JsonTypeInfoTest.java @@ -7,6 +7,7 @@ import static org.junit.jupiter.api.Assertions.*; public class JsonTypeInfoTest + extends AnnotationTestUtil { @JsonTypeInfo(use = JsonTypeInfo.Id.CLASS, visible=true, defaultImpl = JsonTypeInfo.class, requireTypeIdForSubtypes = OptBoolean.TRUE) @@ -57,6 +58,12 @@ public void testFromAnnotation() throws Exception assertEquals("JsonTypeInfo.Value(idType=CLASS,includeAs=PROPERTY,propertyName=@class,defaultImpl=NULL,idVisible=true,requireTypeIdForSubtypes=true)", v1.toString()); assertEquals("JsonTypeInfo.Value(idType=NAME,includeAs=EXTERNAL_PROPERTY,propertyName=ext,defaultImpl=java.lang.Void,idVisible=false,requireTypeIdForSubtypes=false)", v2.toString()); + + // Let's also verify JDK serializability + byte[] b = jdkSerialize(v1); + JsonTypeInfo.Value deser = jdkDeserialize(b); + + assertEquals(v1, deser); } @Test