Skip to content

Commit 9e005ef

Browse files
committed
Add failing test for #4403
1 parent 23f3b7a commit 9e005ef

File tree

2 files changed

+51
-1
lines changed

2 files changed

+51
-1
lines changed

src/test/java/com/fasterxml/jackson/databind/deser/enums/EnumDefaultReadTest.java

+2-1
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,8 @@ enum MixinOverloadedDefault {
9090
/* Test methods
9191
/**********************************************************
9292
*/
93-
private final ObjectMapper MAPPER = new ObjectMapper();
93+
94+
private final ObjectMapper MAPPER = newJsonMapper();
9495

9596
@Test
9697
public void testWithoutCustomFeatures() throws Exception
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
package com.fasterxml.jackson.failing;
2+
3+
import org.junit.jupiter.api.Test;
4+
5+
import com.fasterxml.jackson.annotation.JsonEnumDefaultValue;
6+
import com.fasterxml.jackson.annotation.JsonProperty;
7+
8+
import com.fasterxml.jackson.databind.DeserializationFeature;
9+
import com.fasterxml.jackson.databind.ObjectMapper;
10+
import com.fasterxml.jackson.databind.ObjectReader;
11+
12+
import static com.fasterxml.jackson.databind.testutil.DatabindTestUtil.newJsonMapper;
13+
import static com.fasterxml.jackson.databind.testutil.DatabindTestUtil.q;
14+
import static org.junit.jupiter.api.Assertions.assertEquals;
15+
16+
public class EnumDefaultRead4403Test
17+
{
18+
// [databind#4403]
19+
enum Brand4403 {
20+
@JsonProperty("005")
21+
SEAT,
22+
23+
@JsonProperty("006")
24+
HYUNDAI,
25+
@JsonEnumDefaultValue
26+
OTHER
27+
}
28+
29+
/*
30+
/**********************************************************
31+
/* Test methods
32+
/**********************************************************
33+
*/
34+
35+
private final ObjectMapper MAPPER = newJsonMapper();
36+
37+
// [databind#4403]
38+
@Test
39+
public void readFromDefault4403() throws Exception
40+
{
41+
ObjectReader r = MAPPER.readerFor(Brand4403.class)
42+
.with(DeserializationFeature.READ_UNKNOWN_ENUM_VALUES_USING_DEFAULT_VALUE);
43+
assertEquals(Brand4403.SEAT, r.readValue(q("005")));
44+
assertEquals(Brand4403.HYUNDAI, r.readValue(q("006")));
45+
assertEquals(Brand4403.OTHER, r.readValue(q("x")));
46+
assertEquals(Brand4403.OTHER, r.readValue(q("001")));
47+
}
48+
49+
}

0 commit comments

Comments
 (0)