1[{ 2 "given": { 3 "foo": { 4 "bar": { 5 "baz": "subkey" 6 }, 7 "other": { 8 "baz": "subkey" 9 }, 10 "other2": { 11 "baz": "subkey" 12 }, 13 "other3": { 14 "notbaz": ["a", "b", "c"] 15 }, 16 "other4": { 17 "notbaz": ["a", "b", "c"] 18 } 19 } 20 }, 21 "cases": [ 22 { 23 "expression": "foo.*.baz | [0]", 24 "result": "subkey" 25 }, 26 { 27 "expression": "foo.*.baz | [1]", 28 "result": "subkey" 29 }, 30 { 31 "expression": "foo.*.baz | [2]", 32 "result": "subkey" 33 }, 34 { 35 "expression": "foo.bar.* | [0]", 36 "result": "subkey" 37 }, 38 { 39 "expression": "foo.*.notbaz | [*]", 40 "result": [["a", "b", "c"], ["a", "b", "c"]] 41 }, 42 { 43 "expression": "{\"a\": foo.bar, \"b\": foo.other} | *.baz", 44 "result": ["subkey", "subkey"] 45 } 46 ] 47}, { 48 "given": { 49 "foo": { 50 "bar": { 51 "baz": "one" 52 }, 53 "other": { 54 "baz": "two" 55 }, 56 "other2": { 57 "baz": "three" 58 }, 59 "other3": { 60 "notbaz": ["a", "b", "c"] 61 }, 62 "other4": { 63 "notbaz": ["d", "e", "f"] 64 } 65 } 66 }, 67 "cases": [ 68 { 69 "expression": "foo | bar", 70 "result": {"baz": "one"} 71 }, 72 { 73 "expression": "foo | bar | baz", 74 "result": "one" 75 }, 76 { 77 "expression": "foo|bar| baz", 78 "result": "one" 79 }, 80 { 81 "expression": "not_there | [0]", 82 "result": null 83 }, 84 { 85 "expression": "not_there | [0]", 86 "result": null 87 }, 88 { 89 "expression": "[foo.bar, foo.other] | [0]", 90 "result": {"baz": "one"} 91 }, 92 { 93 "expression": "{\"a\": foo.bar, \"b\": foo.other} | a", 94 "result": {"baz": "one"} 95 }, 96 { 97 "expression": "{\"a\": foo.bar, \"b\": foo.other} | b", 98 "result": {"baz": "two"} 99 }, 100 { 101 "expression": "foo.bam || foo.bar | baz", 102 "result": "one" 103 }, 104 { 105 "expression": "foo | not_there || bar", 106 "result": {"baz": "one"} 107 } 108 ] 109}, { 110 "given": { 111 "foo": [{ 112 "bar": [{ 113 "baz": "one" 114 }, { 115 "baz": "two" 116 }] 117 }, { 118 "bar": [{ 119 "baz": "three" 120 }, { 121 "baz": "four" 122 }] 123 }] 124 }, 125 "cases": [ 126 { 127 "expression": "foo[*].bar[*] | [0][0]", 128 "result": {"baz": "one"} 129 } 130 ] 131}] 132