Skip to content

Commit 747f000

Browse files
committed
improve #1327 test
1 parent dd55294 commit 747f000

File tree

2 files changed

+20
-5
lines changed

2 files changed

+20
-5
lines changed

src/main/java/com/fasterxml/jackson/databind/SerializationFeature.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -295,7 +295,7 @@ public enum SerializationFeature implements ConfigFeature
295295
* Feature is enabled by default.
296296
*
297297
* @deprecated Since 2.8 there are better mechanism for specifying filtering; specifically
298-
* using {@link com.fasterxml.jackson.annotation.JsonFormat} or configuration overrides.
298+
* using {@link com.fasterxml.jackson.annotation.JsonInclude} or configuration overrides.
299299
*/
300300
@Deprecated // since 2.8
301301
WRITE_EMPTY_JSON_ARRAYS(true),

src/test/java/com/fasterxml/jackson/failing/JsonInclude1327Test.java

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,27 +16,42 @@ public class JsonInclude1327Test
1616
extends BaseMapTest
1717
{
1818
@JsonInclude(JsonInclude.Include.NON_EMPTY)
19-
public static class Issues1327Bean {
19+
static class Issue1327BeanEmpty {
2020
public String myString = "stuff";
2121
public List<String> myList = new ArrayList<String>();
2222
}
2323

24+
static class Issue1327BeanAlways {
25+
@JsonInclude(JsonInclude.Include.ALWAYS)
26+
public List<String> strings = new ArrayList<String>();
27+
}
28+
2429
/*
2530
/**********************************************************
2631
/* Unit tests
2732
/**********************************************************
2833
*/
2934

3035
// for [databind#1327]
31-
public void testIssue1327() throws Exception {
36+
public void testClassDefaultsForEmpty() throws Exception {
3237
ObjectMapper om = new ObjectMapper();
3338
om.setSerializationInclusion(JsonInclude.Include.NON_NULL);
3439

35-
final Issues1327Bean input = new Issues1327Bean();
36-
final String jsonString = om.writeValueAsString(input);
40+
final String jsonString = om.writeValueAsString(new Issue1327BeanEmpty());
3741

3842
if (jsonString.contains("myList")) {
3943
fail("Should not contain `myList`: "+jsonString);
4044
}
4145
}
46+
47+
public void testClassDefaultsForAlways() throws Exception {
48+
ObjectMapper om = new ObjectMapper();
49+
om.setSerializationInclusion(JsonInclude.Include.NON_EMPTY);
50+
51+
final String jsonString = om.writeValueAsString(new Issue1327BeanAlways());
52+
53+
if (!jsonString.contains("myList")) {
54+
fail("Should contain `myList` with Include.ALWAYS: "+jsonString);
55+
}
56+
}
4257
}

0 commit comments

Comments
 (0)