Fixed special character handling in DataPath

This commit is contained in:
Ziver Koc 2023-08-21 02:25:26 +02:00
parent 676ce6a33f
commit a2694af70f
2 changed files with 14 additions and 3 deletions

View file

@ -15,6 +15,16 @@ public class DataNodePathTest {
assertThrows(IllegalArgumentException.class, () -> DataNodePath.search("11", new DataNode(DataNode.DataType.Map)));
}
@Test
public void specialChar() {
String json = "{'child1.1': 'test', 'child2': {'child3': 'banana'}}";
DataNode rootNode = JSONParser.read(json);
assertNull(DataNodePath.search("$.child1.1", rootNode));
assertEquals("test", DataNodePath.search("$.'child1.1'", rootNode).getString());
assertEquals("test", DataNodePath.search("$.\"child1.1\"", rootNode).getString());
}
@Test
public void mapPath() {
String json = "{child1: 'test', child2: {child3: 'banana'}}";