Added test case for reusable jsonpointer
Project: http://git-wip-us.apache.org/repos/asf/johnzon/repo Commit: http://git-wip-us.apache.org/repos/asf/johnzon/commit/1764de43 Tree: http://git-wip-us.apache.org/repos/asf/johnzon/tree/1764de43 Diff: http://git-wip-us.apache.org/repos/asf/johnzon/diff/1764de43 Branch: refs/heads/master Commit: 1764de4330bc469af448ccad94ee5568d39f563d Parents: 9630ab7 Author: Ravisankar Challa <[email protected]> Authored: Mon Jul 30 23:03:29 2018 +1000 Committer: Ravisankar Challa <[email protected]> Committed: Mon Jul 30 23:03:29 2018 +1000 ---------------------------------------------------------------------- .../org/apache/johnzon/core/JsonPointerTest.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/johnzon/blob/1764de43/johnzon-core/src/test/java/org/apache/johnzon/core/JsonPointerTest.java ---------------------------------------------------------------------- diff --git a/johnzon-core/src/test/java/org/apache/johnzon/core/JsonPointerTest.java b/johnzon-core/src/test/java/org/apache/johnzon/core/JsonPointerTest.java index 92babb2..9b6e7c1 100644 --- a/johnzon-core/src/test/java/org/apache/johnzon/core/JsonPointerTest.java +++ b/johnzon-core/src/test/java/org/apache/johnzon/core/JsonPointerTest.java @@ -522,6 +522,25 @@ public class JsonPointerTest { assertEquals("{\"test\":[{\"OK\":\"200\"},{\"REDIREDT\":[{\"CREATED\":\"201\"}]}]}", result.toString()); } + @Test + public void testRemoveObjectWithInNestedArrayAndResusableJsonPointer() { + JsonPointerImpl jsonPointer = new JsonPointerImpl(JsonProvider.provider(), "/test/1/REDIREDT/1"); + for (int i = 0; i < 3; i++) { + JsonStructure target = Json.createObjectBuilder() + .add("test", Json.createArrayBuilder().add( + Json.createObjectBuilder().add("OK", "200")).add( + Json.createObjectBuilder().add("REDIREDT", + Json.createArrayBuilder().add( + Json.createObjectBuilder().add("CREATED", "201")) + .add(Json.createObjectBuilder() + .add("UNAUTH", "201") .add("ACCEPTED", "202"))))) + .build(); + // {"test":[{"OK":"200"},{"REDIREDT":[{"CREATED":"201"},{"UNAUTH":"401","ACCEPTED":"202"}]}]} + JsonStructure result = jsonPointer.remove(target); + assertEquals("{\"test\":[{\"OK\":\"200\"},{\"REDIREDT\":[{\"CREATED\":\"201\"}]}]}", result.toString()); + } + } + @Test(expected = NullPointerException.class) public void testReplaceJsonObjectWithTargetNull() { JsonPointerImpl jsonPointer = new JsonPointerImpl(JsonProvider.provider(), "/");
