Skip to content

Commit 2176981

Browse files
committed
try to cover more cases wrt #700
1 parent 11930a8 commit 2176981

File tree

1 file changed

+24
-9
lines changed

1 file changed

+24
-9
lines changed

src/test/java/com/fasterxml/jackson/core/filter/ParserFiltering700Test.java

Lines changed: 24 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,12 @@ public void testSkippingOneNested() throws Exception
8686

8787
// [core#700], full test
8888
public void testSkippingForSingleWithPath() throws Exception
89+
{
90+
_testSkippingForSingleWithPath(false);
91+
_testSkippingForSingleWithPath(true);
92+
}
93+
94+
private void _testSkippingForSingleWithPath(boolean useNextName) throws Exception
8995
{
9096
final String json = a2q("{'@type':'xxx','value':{'@type':'yyy','a':99}}");
9197
// should become: {"value":{"a":99}}
@@ -99,15 +105,24 @@ public void testSkippingForSingleWithPath() throws Exception
99105

100106
assertToken(JsonToken.START_OBJECT, p.nextToken());
101107

102-
assertToken(JsonToken.FIELD_NAME, p.nextToken());
103-
assertEquals("value", p.getCurrentName());
104-
105-
assertToken(JsonToken.START_OBJECT, p.nextToken());
106-
assertToken(JsonToken.FIELD_NAME, p.nextToken());
107-
assertEquals("a", p.currentName());
108-
assertToken(JsonToken.VALUE_NUMBER_INT, p.nextToken());
109-
assertEquals(99, p.getIntValue());
110-
assertEquals(JsonToken.END_OBJECT, p.nextToken());
108+
if (useNextName) {
109+
assertEquals("value", p.nextFieldName());
110+
assertToken(JsonToken.START_OBJECT, p.nextToken());
111+
assertEquals("a", p.nextFieldName());
112+
assertToken(JsonToken.VALUE_NUMBER_INT, p.nextToken());
113+
assertEquals(99, p.getIntValue());
114+
assertNull(p.nextFieldName());
115+
assertEquals(JsonToken.END_OBJECT, p.currentToken());
116+
} else {
117+
assertToken(JsonToken.FIELD_NAME, p.nextToken());
118+
assertEquals("value", p.currentName());
119+
assertToken(JsonToken.START_OBJECT, p.nextToken());
120+
assertToken(JsonToken.FIELD_NAME, p.nextToken());
121+
assertEquals("a", p.currentName());
122+
assertToken(JsonToken.VALUE_NUMBER_INT, p.nextToken());
123+
assertEquals(99, p.getIntValue());
124+
assertEquals(JsonToken.END_OBJECT, p.nextToken());
125+
}
111126

112127
assertEquals(JsonToken.END_OBJECT, p.nextToken());
113128
assertNull(p.nextToken());

0 commit comments

Comments
 (0)