1+ [
2+ " Test Specification for val" ,
3+ {
4+ "description" : " Fetches a value from an empty key" ,
5+ "rule" : { "val" : " " },
6+ "data" : { "" : 1 },
7+ "result" : 1
8+ },
9+ {
10+ "description" : " Fetches a value from a nested empty key" ,
11+ "rule" : { "val" : [" " , " " ] },
12+ "data" : { "" : { "" : 2 } },
13+ "result" : 2
14+ },
15+ {
16+ "description" : " Fetches a value from a doubly nested empty key" ,
17+ "rule" : { "val" : [" " , " " , " " ] },
18+ "data" : { "" : { "" : { "" : 3 } } },
19+ "result" : 3
20+ },
21+ {
22+ "description" : " Fetches a value from a key that is purely a dot" ,
23+ "rule" : { "val" : " ." },
24+ "data" : { "." : 20 },
25+ "result" : 20
26+ },
27+ {
28+ "description" : " Fetches the entire context" ,
29+ "rule" : { "val" : null },
30+ "data" : { "" : 21 },
31+ "result" : { "" : 21 }
32+ },
33+ {
34+ "description" : " Fetches the entire context for a nested key" ,
35+ "rule" : { "val" : " " },
36+ "data" : { "" : { "" : 22 } },
37+ "result" : { "" : 22 }
38+ },
39+ {
40+ "description" : " Using val in a map (remember that null gets the current context, not empty string)" ,
41+ "rule" : { "map" : [[1 ,2 ,3 ], { "+" : [{ "val" : null }, 1 ] }] },
42+ "data" : null ,
43+ "result" : [2 ,3 ,4 ]
44+ },
45+ {
46+ "description" : " Using val in a map (and remember [null] and null are the same)" ,
47+ "rule" : { "map" : [[1 ,2 ,3 ], { "+" : [{ "val" : [null ] }, 1 ] }] },
48+ "data" : null ,
49+ "result" : [2 ,3 ,4 ]
50+ },
51+ " Testing out scopes" ,
52+ {
53+ "description" : " Climb up to get adder" ,
54+ "rule" : { "map" : [[1 ,2 ,3 ], { "+" : [{ "val" : null }, { "val" : [[-2 ], " adder" ] }] }] },
55+ "data" : { "adder" : 10 },
56+ "result" : [11 ,12 ,13 ]
57+ },
58+ {
59+ "description" : " Climb up to get index" ,
60+ "rule" : { "map" : [[1 ,2 ,3 ], { "+" : [{ "val" : null }, { "val" : [[-1 ], " index" ] }] }] },
61+ "data" : { "adder" : 10 },
62+ "result" : [1 ,3 ,5 ]
63+ },
64+ {
65+ "description" : " Nested get adder" ,
66+ "rule" : {
67+ "map" : [[" Test" ], { "map" : [[1 ,2 ,3 ], { "+" : [{"val" : null }, {"val" : [[-4 ], " adder" ]}] }]} ]
68+ },
69+ "data" : { "adder" : 10 },
70+ "result" : [[11 ,12 ,13 ]]
71+ }
72+ ]
0 commit comments