java-json-tools/json-patch

Support for test operation with null value against empty path

Opened this issue · 0 comments

When performing a test operation, we should be able to test that a path inside a document is null. Instead, the library always throws an empty path exception without even checking if the value to test against is null.

Example:

Given the document:

{
"field1": {"id": 123},
"field2": {"id": 321}
}

and the patch:

[
{"op": "test", "path": "field3", "value": null},
{"op": "add", "path": "field3", "value": {"id": 456}}
]

Expected: Successful patch
Actual: Throws empty path exception

If operations like this were supported in the library it would allow users to perform "put if absent" operations inside json documents, since all the patch operations are executed atomically, which could be useful for several applications.