RFC6901 JSON Pointer implementation in OCaml using jsont
at main 2.1 kB view raw
1{ 2 "add_tests": [ 3 { 4 "doc": {"foo": "bar"}, 5 "pointer": "/baz", 6 "value": "qux", 7 "expected": {"foo": "bar", "baz": "qux"} 8 }, 9 { 10 "doc": {"foo": ["bar", "baz"]}, 11 "pointer": "/foo/1", 12 "value": "qux", 13 "expected": {"foo": ["bar", "qux", "baz"]} 14 }, 15 { 16 "doc": {"foo": ["bar"]}, 17 "pointer": "/foo/-", 18 "value": "qux", 19 "expected": {"foo": ["bar", "qux"]} 20 }, 21 { 22 "doc": {"foo": ["bar", "baz"]}, 23 "pointer": "/foo/0", 24 "value": "qux", 25 "expected": {"foo": ["qux", "bar", "baz"]} 26 } 27 ], 28 "remove_tests": [ 29 { 30 "doc": {"foo": "bar", "baz": "qux"}, 31 "pointer": "/baz", 32 "expected": {"foo": "bar"} 33 }, 34 { 35 "doc": {"foo": ["bar", "qux", "baz"]}, 36 "pointer": "/foo/1", 37 "expected": {"foo": ["bar", "baz"]} 38 } 39 ], 40 "replace_tests": [ 41 { 42 "doc": {"foo": "bar"}, 43 "pointer": "/foo", 44 "value": "baz", 45 "expected": {"foo": "baz"} 46 }, 47 { 48 "doc": {"foo": ["bar", "baz"]}, 49 "pointer": "/foo/0", 50 "value": "qux", 51 "expected": {"foo": ["qux", "baz"]} 52 } 53 ], 54 "move_tests": [ 55 { 56 "doc": {"foo": {"bar": "baz"}, "qux": {"corge": "grault"}}, 57 "from": "/foo/bar", 58 "path": "/qux/thud", 59 "expected": {"foo": {}, "qux": {"corge": "grault", "thud": "baz"}} 60 }, 61 { 62 "doc": {"foo": ["all", "grass", "cows", "eat"]}, 63 "from": "/foo/1", 64 "path": "/foo/3", 65 "expected": {"foo": ["all", "cows", "eat", "grass"]} 66 } 67 ], 68 "copy_tests": [ 69 { 70 "doc": {"foo": {"bar": "baz"}}, 71 "from": "/foo/bar", 72 "path": "/foo/qux", 73 "expected": {"foo": {"bar": "baz", "qux": "baz"}} 74 } 75 ], 76 "test_tests": [ 77 { 78 "doc": {"foo": "bar"}, 79 "pointer": "/foo", 80 "value": "bar", 81 "expected": true 82 }, 83 { 84 "doc": {"foo": "bar"}, 85 "pointer": "/foo", 86 "value": "baz", 87 "expected": false 88 }, 89 { 90 "doc": {"foo": ["bar", "baz"]}, 91 "pointer": "/foo", 92 "value": ["bar", "baz"], 93 "expected": true 94 } 95 ] 96}