@@ -26,7 +26,7 @@ var testCases = []PointerTestCase{
26
26
{"/a~01b" , []Token {RootToken {}, KeyToken {Key : "a~1b" }}},
27
27
{"/a~1b" , []Token {RootToken {}, KeyToken {Key : "a/b" }}},
28
28
29
- // Speacial chars
29
+ // Special chars
30
30
{"/c%d" , []Token {RootToken {}, KeyToken {Key : "c%d" }}},
31
31
{"/e^f" , []Token {RootToken {}, KeyToken {Key : "e^f" }}},
32
32
{"/g|h" , []Token {RootToken {}, KeyToken {Key : "g|h" }}},
@@ -35,18 +35,23 @@ var testCases = []PointerTestCase{
35
35
36
36
// Maps
37
37
{"/key" , []Token {RootToken {}, KeyToken {Key : "key" }}},
38
- {"/key/" , []Token {RootToken {}, KeyToken {Key : "key" , Expected : true }, KeyToken {Key : "" }}},
39
- {"/key/key2" , []Token {RootToken {}, KeyToken {Key : "key" , Expected : true }, KeyToken {Key : "key2" }}},
40
- {"/key?/key2/key3" , []Token {RootToken {}, KeyToken {Key : "key" }, KeyToken {Key : "key2" }, KeyToken {Key : "key3" }}},
38
+ {"/key/" , []Token {RootToken {}, KeyToken {Key : "key" }, KeyToken {Key : "" }}},
39
+ {"/key/key2" , []Token {RootToken {}, KeyToken {Key : "key" }, KeyToken {Key : "key2" }}},
40
+ {"/key?/key2/key3" , []Token {
41
+ RootToken {},
42
+ KeyToken {Key : "key" , Optional : true },
43
+ KeyToken {Key : "key2" , Optional : true },
44
+ KeyToken {Key : "key3" , Optional : true },
45
+ }},
41
46
42
47
// Array indices
43
48
{"/0" , []Token {RootToken {}, IndexToken {0 }}},
44
49
{"/1000001" , []Token {RootToken {}, IndexToken {1000001 }}},
45
50
{"/-2" , []Token {RootToken {}, IndexToken {- 2 }}},
46
51
47
52
{"/-" , []Token {RootToken {}, AfterLastIndexToken {}}},
48
- {"/ary/-" , []Token {RootToken {}, KeyToken {Key : "ary" , Expected : true }, AfterLastIndexToken {}}},
49
- {"/-/key" , []Token {RootToken {}, KeyToken {Key : "-" , Expected : true }, KeyToken {Key : "key" }}},
53
+ {"/ary/-" , []Token {RootToken {}, KeyToken {Key : "ary" }, AfterLastIndexToken {}}},
54
+ {"/-/key" , []Token {RootToken {}, KeyToken {Key : "-" }, KeyToken {Key : "key" }}},
50
55
51
56
// Matching index token
52
57
{"/name=val" , []Token {RootToken {}, MatchingIndexToken {Key : "name" , Value : "val" }}},
@@ -89,7 +94,11 @@ var _ = Describe("Pointer.String", func() {
89
94
90
95
var _ = Describe ("Pointer.Tokens" , func () {
91
96
parsingTestCases := []PointerTestCase {
92
- {"/key/key2?" , []Token {RootToken {}, KeyToken {Key : "key" , Expected : true }, KeyToken {Key : "key2" }}},
97
+ {"/key/key2?" , []Token {
98
+ RootToken {},
99
+ KeyToken {Key : "key" },
100
+ KeyToken {Key : "key2" , Optional : true },
101
+ }},
93
102
}
94
103
95
104
parsingTestCases = append (parsingTestCases , testCases ... )
0 commit comments