Skip to content

Commit

Permalink
Add test for #736
Browse files Browse the repository at this point in the history
  • Loading branch information
cowtowncoder committed Jan 16, 2022
1 parent 18b4634 commit 3740a93
Showing 1 changed file with 27 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
package com.fasterxml.jackson.failing;

import com.fasterxml.jackson.core.*;
import com.fasterxml.jackson.core.exc.StreamReadException;

public class JsonPointerOOME736Test extends BaseTest
{
// such as https://github.com/nst/JSONTestSuite/blob/master/test_parsing/n_structure_100000_opening_arrays.json
public void testDeepJsonPointer() throws Exception {
int MAX_DEPTH = 100000;
String INPUT = new String(new char[MAX_DEPTH]).replace("\0", "[");
JsonParser parser = createParser(MODE_READER, INPUT);
try {
while (true) {
parser.nextToken();
}
} catch (StreamReadException e) {
verifyException(e, "Unexpected end");
JsonStreamContext parsingContext = parser.getParsingContext();
JsonPointer jsonPointer = parsingContext.pathAsPointer(); // OOME
String pointer = jsonPointer.toString();
String expected = new String(new char[MAX_DEPTH - 1]).replace("\0", "/0");
assertEquals(expected, pointer);
}
parser.close();
}
}

0 comments on commit 3740a93

Please sign in to comment.