Skip to content

Commit

Permalink
try to cover more cases wrt #700
Browse files Browse the repository at this point in the history
  • Loading branch information
cowtowncoder committed Jul 20, 2021
1 parent 11930a8 commit 2176981
Showing 1 changed file with 24 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,12 @@ public void testSkippingOneNested() throws Exception

// [core#700], full test
public void testSkippingForSingleWithPath() throws Exception
{
_testSkippingForSingleWithPath(false);
_testSkippingForSingleWithPath(true);
}

private void _testSkippingForSingleWithPath(boolean useNextName) throws Exception
{
final String json = a2q("{'@type':'xxx','value':{'@type':'yyy','a':99}}");
// should become: {"value":{"a":99}}
Expand All @@ -99,15 +105,24 @@ public void testSkippingForSingleWithPath() throws Exception

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

assertToken(JsonToken.FIELD_NAME, p.nextToken());
assertEquals("value", p.getCurrentName());

assertToken(JsonToken.START_OBJECT, p.nextToken());
assertToken(JsonToken.FIELD_NAME, p.nextToken());
assertEquals("a", p.currentName());
assertToken(JsonToken.VALUE_NUMBER_INT, p.nextToken());
assertEquals(99, p.getIntValue());
assertEquals(JsonToken.END_OBJECT, p.nextToken());
if (useNextName) {
assertEquals("value", p.nextFieldName());
assertToken(JsonToken.START_OBJECT, p.nextToken());
assertEquals("a", p.nextFieldName());
assertToken(JsonToken.VALUE_NUMBER_INT, p.nextToken());
assertEquals(99, p.getIntValue());
assertNull(p.nextFieldName());
assertEquals(JsonToken.END_OBJECT, p.currentToken());
} else {
assertToken(JsonToken.FIELD_NAME, p.nextToken());
assertEquals("value", p.currentName());
assertToken(JsonToken.START_OBJECT, p.nextToken());
assertToken(JsonToken.FIELD_NAME, p.nextToken());
assertEquals("a", p.currentName());
assertToken(JsonToken.VALUE_NUMBER_INT, p.nextToken());
assertEquals(99, p.getIntValue());
assertEquals(JsonToken.END_OBJECT, p.nextToken());
}

assertEquals(JsonToken.END_OBJECT, p.nextToken());
assertNull(p.nextToken());
Expand Down

0 comments on commit 2176981

Please sign in to comment.