blob: d4aa8fed3aa5273387b8b5ce649f14c767514db6 [file] [log] [blame] [edit]
[
{
"original": {"a":"b"},
"target": {"a":"b"},
"expected": []
},
{
"original": [ 1, 2, 3 ],
"target": [ 1, 2, 3, 4, 5 ],
"expected": [
{"op":"add","path":"/3","value":4},
{"op":"add","path":"/4","value":5}
]
},
{
"original": [1,2,3,4,5],
"target": [1,3,4],
"expected": [
{ "op": "remove", "path": "/4"},
{ "op": "remove", "path": "/1"}
]
},
{
"original": [1,2,3,4,5,6],
"target": [1,7,3,4,8,5],
"expected": [
{ "op": "remove", "path": "/5"},
{ "op": "replace", "path": "/1", "value": 7},
{ "op": "add", "path": "/4", "value": 8}
]
},
{
"original": [ 1, 2, 3 ],
"target": [ 1 ],
"expected": [
{ "op": "remove", "path": "/2" },
{ "op": "remove", "path": "/1" }
]
},
{
"original": { "a": "b", "c": "d" },
"target": { "a": "b" },
"expected": [
{ "op": "remove", "path": "/c" }
]
},
{
"original": { "a": 1 },
"target": { "a": 1, "c": 2, "b": 3, "d": 4 },
"expected": [
{ "op": "add", "path": "/c", "value": 2 },
{ "op": "add", "path": "/b", "value": 3 },
{ "op": "add", "path": "/d", "value": 4 }
]
},
{
"original": { "a": null },
"target": { "a": 6 },
"expected": [
{ "op": "replace", "path": "/a", "value": 6 }
]
},
{
"original": [ 1, 2, 3 ],
"target": { "hello": "world" },
"expected": [
{ "op": "replace", "path": "", "value": { "hello": "world" } }
]
},
{
"original": {
"a": "b",
"c": {
"d": "e"
}
},
"target": {
"a": "b",
"c": {
"d": 1,
"e": "f"
}
},
"expected": [
{ "op": "replace", "path": "/c/d", "value": 1 },
{ "op": "add", "path": "/c/e", "value": "f" }
]
},
{
"original": {
"a": [ 1, 2, 3 ]
},
"target": {
"a": [ "b", 2, 3, 4 ]
},
"expected": [
{ "op": "replace", "path": "/a/0", "value":"b" },
{ "op": "add", "path": "/a/3", "value":4 }
]
},
{
"original": [ { "a": "b" }, "foo", { "bar": null } ],
"target": [ { "a": "b", "c": "d" }, "foo", { "bar": "baz" } ],
"expected": [
{ "op": "replace", "path": "/2/bar", "value": "baz" },
{ "op": "add", "path": "/0/c", "value": "d" }
]
},
{
"original": [ 1, [ 2, 3 ], 4 ],
"target": [ "x", [ 2, 3, "y" ], 4 ],
"expected": [
{ "op": "add", "path": "/1/2", "value": "y" },
{ "op": "replace", "path": "/0", "value": "x" }
]
},
{
"original": { "a": "b" },
"target": { "c": "b" },
"expected": [
{ "op": "remove", "path": "/a"},
{ "op": "add", "path": "/c", "value": "b"}
]
},
{
"original": {"a": "c"},
"target": {"a": "c", "d": "c"},
"expected": [
{ "op": "add", "path": "/d", "value": "c" }
]
},
{
"original": [-1, 0, 1, 3, 4],
"target": [5, 0],
"expected": [
{ "path" : "/4", "op" : "remove"},
{ "path" : "/3", "op" : "remove"},
{ "path" : "/2", "op" : "remove"},
{ "value" : 5, "path" : "/0", "op" : "replace" }
]
},
{
"original": [0],
"target": [0, 1, 2, 3, 4],
"expected": [
{ "path" : "/1", "value" : 1, "op" : "add" },
{ "path" : "/2", "value" : 2, "op" : "add" },
{ "value" : 3, "path" : "/3", "op" : "add" },
{ "op" : "add", "path" : "/4", "value" : 4 }
]
},
{
"original": [0, 2, 4],
"target": [0, 1, 2, 3, 4],
"expected": [
{ "path" : "/1", "value" : 1, "op" : "add" },
{ "value" : 3, "op" : "add", "path" : "/3" }
]
},
{
"original": {"a/b": "c", "e/f": "i"},
"target": {"a/b": "d", "f/g": "i"},
"expected": [
{ "op": "replace", "path": "/a~1b", "value": "d" },
{ "op": "remove", "path":"/e~1f" },
{ "op": "add", "path":"/f~1g", "value":"i" }
]
}
]