-
Notifications
You must be signed in to change notification settings - Fork 21
/
Copy pathparam-dict.json
113 lines (113 loc) · 3.38 KB
/
param-dict.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
[
{
"name": "basic parameterised dict",
"raw": ["abc=123;a=1;b=2, def=456, ghi=789;q=9;r=\"+w\""],
"header_type": "dictionary",
"expected": [
["abc", [123, [["a", 1], ["b", 2]]]],
["def", [456, []]],
["ghi", [789, [["q", 9], ["r", "+w"]]]]
]
},
{
"name": "single item parameterised dict",
"raw": ["a=b; q=1.0"],
"header_type": "dictionary",
"expected": [
["a", [{"__type": "token", "value": "b"}, [["q", 1.0]]]]
],
"canonical": ["a=b;q=1.0"]
},
{
"name": "list item parameterised dictionary",
"raw": ["a=(1 2); q=1.0"],
"header_type": "dictionary",
"expected": [["a", [[[1, []], [2, []]], [["q", 1.0]]]]],
"canonical": ["a=(1 2);q=1.0"]
},
{
"name": "missing parameter value parameterised dict",
"raw": ["a=3;c;d=5"],
"header_type": "dictionary",
"expected": [
["a", [3, [["c", true], ["d", 5]]]]
]
},
{
"name": "terminal missing parameter value parameterised dict",
"raw": ["a=3;c=5;d"],
"header_type": "dictionary",
"expected": [
["a", [3, [["c", 5], ["d", true]]]]
]
},
{
"name": "no whitespace parameterised dict",
"raw": ["a=b;c=1,d=e;f=2"],
"header_type": "dictionary",
"expected": [
["a", [{"__type": "token", "value": "b"}, [["c", 1]]]],
["d", [{"__type": "token", "value": "e"}, [["f", 2]]]]
],
"canonical": ["a=b;c=1, d=e;f=2"]
},
{
"name": "whitespace before = parameterised dict",
"raw": ["a=b;q =0.5"],
"header_type": "dictionary",
"must_fail": true
},
{
"name": "whitespace after = parameterised dict",
"raw": ["a=b;q= 0.5"],
"header_type": "dictionary",
"must_fail": true
},
{
"name": "whitespace before ; parameterised dict",
"raw": ["a=b ;q=0.5"],
"header_type": "dictionary",
"must_fail": true
},
{
"name": "whitespace after ; parameterised dict",
"raw": ["a=b; q=0.5"],
"header_type": "dictionary",
"expected": [
["a", [{"__type": "token", "value": "b"}, [["q", 0.5]]]]
],
"canonical": ["a=b;q=0.5"]
},
{
"name": "extra whitespace parameterised dict",
"raw": ["a=b; c=1 , d=e; f=2; g=3"],
"header_type": "dictionary",
"expected": [
["a", [{"__type": "token", "value": "b"}, [["c", 1]]]],
["d", [{"__type": "token", "value": "e"}, [["f", 2], ["g", 3]]]]
],
"canonical": ["a=b;c=1, d=e;f=2;g=3"]
},
{
"name": "two lines parameterised list",
"raw": ["a=b;c=1", "d=e;f=2"],
"header_type": "dictionary",
"expected": [
["a", [{"__type": "token", "value": "b"}, [["c", 1]]]],
["d", [{"__type": "token", "value": "e"}, [["f", 2]]]]
],
"canonical": ["a=b;c=1, d=e;f=2"]
},
{
"name": "trailing comma parameterised list",
"raw": ["a=b; q=1.0,"],
"header_type": "dictionary",
"must_fail": true
},
{
"name": "empty item parameterised list",
"raw": ["a=b; q=1.0,,c=d"],
"header_type": "dictionary",
"must_fail": true
}
]