Skip to content

Commit f79b1be

Browse files
authored
Add more testing inspired by #316 (#318)
1 parent 1eaa08f commit f79b1be

File tree

6 files changed

+44
-2
lines changed

6 files changed

+44
-2
lines changed

src/test/java/com/fasterxml/jackson/annotation/VisibilityTest.java renamed to src/test/java/com/fasterxml/jackson/annotation/JsonAutoDetectTest.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@
99
import static org.junit.jupiter.api.Assertions.*;
1010

1111
// Silly test for JsonAutoDetect.Visibility type, for code coverage
12-
public class VisibilityTest
12+
public class JsonAutoDetectTest
13+
extends AnnotationTestUtil
1314
{
1415
static class Bogus {
1516
public String value;
@@ -82,6 +83,12 @@ public void testFromAnnotation()
8283
assertEquals(ann.isGetterVisibility(), v.getIsGetterVisibility());
8384
assertEquals(ann.setterVisibility(), v.getSetterVisibility());
8485
assertEquals(ann.creatorVisibility(), v.getCreatorVisibility());
86+
87+
// Let's also verify JDK serializability
88+
byte[] b = jdkSerialize(v);
89+
JsonAutoDetect.Value deser = jdkDeserialize(b);
90+
91+
assertEquals(v, deser);
8592
}
8693

8794
@Test

src/test/java/com/fasterxml/jackson/annotation/JsonIgnorePropertiesTest.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
* instances for overrides
1212
*/
1313
public class JsonIgnorePropertiesTest
14+
extends AnnotationTestUtil
1415
{
1516
@JsonIgnoreProperties(value={ "foo", "bar" }, ignoreUnknown=true)
1617
private final static class Bogus {
@@ -53,6 +54,12 @@ public void testFromAnnotation() throws Exception
5354
Set<String> ign = v.getIgnored();
5455
assertEquals(2, v.getIgnored().size());
5556
assertEquals(_set("foo", "bar"), ign);
57+
58+
// Let's also verify JDK serializability
59+
byte[] b = jdkSerialize(v);
60+
JsonIgnoreProperties.Value deser = jdkDeserialize(b);
61+
62+
assertEquals(v, deser);
5663
}
5764

5865
@Test

src/test/java/com/fasterxml/jackson/annotation/JsonIncludePropertiesTest.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
* instances for overrides
1212
*/
1313
public class JsonIncludePropertiesTest
14+
extends AnnotationTestUtil
1415
{
1516
@JsonIncludeProperties(value = {"foo", "bar"})
1617
private final static class Bogus
@@ -42,6 +43,12 @@ public void testFromAnnotation()
4243
boolean test2 = tmp.equals("JsonIncludeProperties.Value(included=[bar, foo])");
4344
assertTrue(test1 || test2);
4445
assertEquals(v, JsonIncludeProperties.Value.from(Bogus.class.getAnnotation(JsonIncludeProperties.class)));
46+
47+
// Let's also verify JDK serializability
48+
byte[] b = jdkSerialize(v);
49+
JsonIncludeProperties.Value deser = jdkDeserialize(b);
50+
51+
assertEquals(v, deser);
4552
}
4653

4754
@Test

src/test/java/com/fasterxml/jackson/annotation/IncludeTest.java renamed to src/test/java/com/fasterxml/jackson/annotation/JsonIncludeTest.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@
1010
* Tests to verify that it is possibly to merge {@link JsonInclude.Value}
1111
* instances for overrides
1212
*/
13-
public class IncludeTest
13+
public class JsonIncludeTest
14+
extends AnnotationTestUtil
1415
{
1516
private final JsonInclude.Value EMPTY = JsonInclude.Value.empty();
1617

@@ -45,6 +46,12 @@ public void testFromAnnotation()
4546
JsonInclude.Value v = JsonInclude.Value.from(ann);
4647
assertEquals(Include.NON_EMPTY, v.getValueInclusion());
4748
assertEquals(Include.NON_DEFAULT, v.getContentInclusion());
49+
50+
// Let's also verify JDK serializability
51+
byte[] b = jdkSerialize(v);
52+
JsonInclude.Value deser = jdkDeserialize(b);
53+
54+
assertEquals(v, deser);
4855
}
4956

5057
@Test

src/test/java/com/fasterxml/jackson/annotation/JsonSetterTest.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import static org.junit.jupiter.api.Assertions.*;
66

77
public class JsonSetterTest
8+
extends AnnotationTestUtil
89
{
910
private final static class Bogus {
1011
@JsonSetter(nulls=Nulls.FAIL, contentNulls=Nulls.SKIP)
@@ -47,6 +48,12 @@ public void testFromAnnotation() throws Exception
4748
JsonSetter.Value v = JsonSetter.Value.from(ann);
4849
assertEquals(Nulls.FAIL, v.getValueNulls());
4950
assertEquals(Nulls.SKIP, v.getContentNulls());
51+
52+
// Let's also verify JDK serializability
53+
byte[] b = jdkSerialize(v);
54+
JsonSetter.Value deser = jdkDeserialize(b);
55+
56+
assertEquals(v, deser);
5057
}
5158

5259
@Test

src/test/java/com/fasterxml/jackson/annotation/JsonTypeInfoTest.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import static org.junit.jupiter.api.Assertions.*;
88

99
public class JsonTypeInfoTest
10+
extends AnnotationTestUtil
1011
{
1112
@JsonTypeInfo(use = JsonTypeInfo.Id.CLASS, visible=true,
1213
defaultImpl = JsonTypeInfo.class, requireTypeIdForSubtypes = OptBoolean.TRUE)
@@ -57,6 +58,12 @@ public void testFromAnnotation() throws Exception
5758

5859
assertEquals("JsonTypeInfo.Value(idType=CLASS,includeAs=PROPERTY,propertyName=@class,defaultImpl=NULL,idVisible=true,requireTypeIdForSubtypes=true)", v1.toString());
5960
assertEquals("JsonTypeInfo.Value(idType=NAME,includeAs=EXTERNAL_PROPERTY,propertyName=ext,defaultImpl=java.lang.Void,idVisible=false,requireTypeIdForSubtypes=false)", v2.toString());
61+
62+
// Let's also verify JDK serializability
63+
byte[] b = jdkSerialize(v1);
64+
JsonTypeInfo.Value deser = jdkDeserialize(b);
65+
66+
assertEquals(v1, deser);
6067
}
6168

6269
@Test

0 commit comments

Comments
 (0)