1 | [
|
2 | {
|
3 | "given": {
|
4 | "foo": [{"name": "a"}, {"name": "b"}],
|
5 | "bar": {"baz": "qux"}
|
6 | },
|
7 | "cases": [
|
8 | {
|
9 | "expression": "`foo`",
|
10 | "result": "foo"
|
11 | },
|
12 | {
|
13 | "expression": "`\"foo\"`",
|
14 | "result": "foo"
|
15 | },
|
16 | {
|
17 | "comment": "Double quotes must be escaped.",
|
18 | "expression": "`foo\\\"quote`",
|
19 | "result": "foo\"quote"
|
20 | },
|
21 | {
|
22 | "expression": "`✓`",
|
23 | "result": "✓"
|
24 | },
|
25 | {
|
26 | "expression": "`[1, 2, 3]`",
|
27 | "result": [1, 2, 3]
|
28 | },
|
29 | {
|
30 | "expression": "`{\"a\": \"b\"}`",
|
31 | "result": {"a": "b"}
|
32 | },
|
33 | {
|
34 | "expression": "`true`",
|
35 | "result": true
|
36 | },
|
37 | {
|
38 | "expression": "`false`",
|
39 | "result": false
|
40 | },
|
41 | {
|
42 | "expression": "`null`",
|
43 | "result": null
|
44 | },
|
45 | {
|
46 | "expression": "`0`",
|
47 | "result": 0
|
48 | },
|
49 | {
|
50 | "expression": "`1`",
|
51 | "result": 1
|
52 | },
|
53 | {
|
54 | "expression": "`2`",
|
55 | "result": 2
|
56 | },
|
57 | {
|
58 | "expression": "`3`",
|
59 | "result": 3
|
60 | },
|
61 | {
|
62 | "expression": "`4`",
|
63 | "result": 4
|
64 | },
|
65 | {
|
66 | "expression": "`5`",
|
67 | "result": 5
|
68 | },
|
69 | {
|
70 | "expression": "`6`",
|
71 | "result": 6
|
72 | },
|
73 | {
|
74 | "expression": "`7`",
|
75 | "result": 7
|
76 | },
|
77 | {
|
78 | "expression": "`8`",
|
79 | "result": 8
|
80 | },
|
81 | {
|
82 | "expression": "`9`",
|
83 | "result": 9
|
84 | },
|
85 | {
|
86 | "comment": "Escaping a backtick",
|
87 | "expression": "`foo\\`bar`",
|
88 | "result": "foo`bar"
|
89 | },
|
90 | {
|
91 | "comment": "Escaping a backtick in quotes",
|
92 | "expression": "`\"foo\\`bar\"`",
|
93 | "result": "foo`bar"
|
94 | },
|
95 | {
|
96 | "comment": "Double quote in literal",
|
97 | "expression": "`foo\\\"bar`",
|
98 | "result": "foo\"bar"
|
99 | },
|
100 | {
|
101 | "expression": "`1\\``",
|
102 | "result": "1`"
|
103 | },
|
104 | {
|
105 | "comment": "Multiple literal expressions with escapes",
|
106 | "expression": "`\\\\`.{a:`b`}",
|
107 | "result": {"a": "b"}
|
108 | },
|
109 | {
|
110 | "comment": "literal . identifier",
|
111 | "expression": "`{\"a\": \"b\"}`.a",
|
112 | "result": "b"
|
113 | },
|
114 | {
|
115 | "comment": "literal . identifier . identifier",
|
116 | "expression": "`{\"a\": {\"b\": \"c\"}}`.a.b",
|
117 | "result": "c"
|
118 | },
|
119 | {
|
120 | "comment": "literal . identifier bracket-expr",
|
121 | "expression": "`[0, 1, 2]`[1]",
|
122 | "result": 1
|
123 | }
|
124 | ]
|
125 | }
|
126 | ]
|