source: frontend/node_modules/qs/test/empty-keys-cases.js

Last change on this file was 9af201e, checked in by MBK <marija.karapandzova@…>, 11 days ago

Fix frontend appearance

  • Property mode set to 100644
File size: 7.5 KB
Line 
1'use strict';
2
3module.exports = {
4 emptyTestCases: [
5 {
6 input: '&',
7 withEmptyKeys: {},
8 stringifyOutput: {
9 brackets: '',
10 indices: '',
11 repeat: ''
12 },
13 noEmptyKeys: {}
14 },
15 {
16 input: '&&',
17 withEmptyKeys: {},
18 stringifyOutput: {
19 brackets: '',
20 indices: '',
21 repeat: ''
22 },
23 noEmptyKeys: {}
24 },
25 {
26 input: '&=',
27 withEmptyKeys: { '': '' },
28 stringifyOutput: {
29 brackets: '=',
30 indices: '=',
31 repeat: '='
32 },
33 noEmptyKeys: {}
34 },
35 {
36 input: '&=&',
37 withEmptyKeys: { '': '' },
38 stringifyOutput: {
39 brackets: '=',
40 indices: '=',
41 repeat: '='
42 },
43 noEmptyKeys: {}
44 },
45 {
46 input: '&=&=',
47 withEmptyKeys: { '': ['', ''] },
48 stringifyOutput: {
49 brackets: '[]=&[]=',
50 indices: '[0]=&[1]=',
51 repeat: '=&='
52 },
53 noEmptyKeys: {}
54 },
55 {
56 input: '&=&=&',
57 withEmptyKeys: { '': ['', ''] },
58 stringifyOutput: {
59 brackets: '[]=&[]=',
60 indices: '[0]=&[1]=',
61 repeat: '=&='
62 },
63 noEmptyKeys: {}
64 },
65 {
66 input: '=',
67 withEmptyKeys: { '': '' },
68 noEmptyKeys: {},
69 stringifyOutput: {
70 brackets: '=',
71 indices: '=',
72 repeat: '='
73 }
74 },
75 {
76 input: '=&',
77 withEmptyKeys: { '': '' },
78 stringifyOutput: {
79 brackets: '=',
80 indices: '=',
81 repeat: '='
82 },
83 noEmptyKeys: {}
84 },
85 {
86 input: '=&&&',
87 withEmptyKeys: { '': '' },
88 stringifyOutput: {
89 brackets: '=',
90 indices: '=',
91 repeat: '='
92 },
93 noEmptyKeys: {}
94 },
95 {
96 input: '=&=&=&',
97 withEmptyKeys: { '': ['', '', ''] },
98 stringifyOutput: {
99 brackets: '[]=&[]=&[]=',
100 indices: '[0]=&[1]=&[2]=',
101 repeat: '=&=&='
102 },
103 noEmptyKeys: {}
104 },
105 {
106 input: '=&a[]=b&a[1]=c',
107 withEmptyKeys: { '': '', a: ['b', 'c'] },
108 stringifyOutput: {
109 brackets: '=&a[]=b&a[]=c',
110 indices: '=&a[0]=b&a[1]=c',
111 repeat: '=&a=b&a=c'
112 },
113 noEmptyKeys: { a: ['b', 'c'] }
114 },
115 {
116 input: '=a',
117 withEmptyKeys: { '': 'a' },
118 noEmptyKeys: {},
119 stringifyOutput: {
120 brackets: '=a',
121 indices: '=a',
122 repeat: '=a'
123 }
124 },
125 {
126 input: 'a==a',
127 withEmptyKeys: { a: '=a' },
128 noEmptyKeys: { a: '=a' },
129 stringifyOutput: {
130 brackets: 'a==a',
131 indices: 'a==a',
132 repeat: 'a==a'
133 }
134 },
135 {
136 input: '=&a[]=b',
137 withEmptyKeys: { '': '', a: ['b'] },
138 stringifyOutput: {
139 brackets: '=&a[]=b',
140 indices: '=&a[0]=b',
141 repeat: '=&a=b'
142 },
143 noEmptyKeys: { a: ['b'] }
144 },
145 {
146 input: '=&a[]=b&a[]=c&a[2]=d',
147 withEmptyKeys: { '': '', a: ['b', 'c', 'd'] },
148 stringifyOutput: {
149 brackets: '=&a[]=b&a[]=c&a[]=d',
150 indices: '=&a[0]=b&a[1]=c&a[2]=d',
151 repeat: '=&a=b&a=c&a=d'
152 },
153 noEmptyKeys: { a: ['b', 'c', 'd'] }
154 },
155 {
156 input: '=a&=b',
157 withEmptyKeys: { '': ['a', 'b'] },
158 stringifyOutput: {
159 brackets: '[]=a&[]=b',
160 indices: '[0]=a&[1]=b',
161 repeat: '=a&=b'
162 },
163 noEmptyKeys: {}
164 },
165 {
166 input: '=a&foo=b',
167 withEmptyKeys: { '': 'a', foo: 'b' },
168 noEmptyKeys: { foo: 'b' },
169 stringifyOutput: {
170 brackets: '=a&foo=b',
171 indices: '=a&foo=b',
172 repeat: '=a&foo=b'
173 }
174 },
175 {
176 input: 'a[]=b&a=c&=',
177 withEmptyKeys: { '': '', a: ['b', 'c'] },
178 stringifyOutput: {
179 brackets: '=&a[]=b&a[]=c',
180 indices: '=&a[0]=b&a[1]=c',
181 repeat: '=&a=b&a=c'
182 },
183 noEmptyKeys: { a: ['b', 'c'] }
184 },
185 {
186 input: 'a[]=b&a=c&=',
187 withEmptyKeys: { '': '', a: ['b', 'c'] },
188 stringifyOutput: {
189 brackets: '=&a[]=b&a[]=c',
190 indices: '=&a[0]=b&a[1]=c',
191 repeat: '=&a=b&a=c'
192 },
193 noEmptyKeys: { a: ['b', 'c'] }
194 },
195 {
196 input: 'a[0]=b&a=c&=',
197 withEmptyKeys: { '': '', a: ['b', 'c'] },
198 stringifyOutput: {
199 brackets: '=&a[]=b&a[]=c',
200 indices: '=&a[0]=b&a[1]=c',
201 repeat: '=&a=b&a=c'
202 },
203 noEmptyKeys: { a: ['b', 'c'] }
204 },
205 {
206 input: 'a=b&a[]=c&=',
207 withEmptyKeys: { '': '', a: ['b', 'c'] },
208 stringifyOutput: {
209 brackets: '=&a[]=b&a[]=c',
210 indices: '=&a[0]=b&a[1]=c',
211 repeat: '=&a=b&a=c'
212 },
213 noEmptyKeys: { a: ['b', 'c'] }
214 },
215 {
216 input: 'a=b&a[0]=c&=',
217 withEmptyKeys: { '': '', a: ['b', 'c'] },
218 stringifyOutput: {
219 brackets: '=&a[]=b&a[]=c',
220 indices: '=&a[0]=b&a[1]=c',
221 repeat: '=&a=b&a=c'
222 },
223 noEmptyKeys: { a: ['b', 'c'] }
224 },
225 {
226 input: '[]=a&[]=b& []=1',
227 withEmptyKeys: { '': ['a', 'b'], ' ': ['1'] },
228 stringifyOutput: {
229 brackets: '[]=a&[]=b& []=1',
230 indices: '[0]=a&[1]=b& [0]=1',
231 repeat: '=a&=b& =1'
232 },
233 noEmptyKeys: { 0: 'a', 1: 'b', ' ': ['1'] }
234 },
235 {
236 input: '[0]=a&[1]=b&a[0]=1&a[1]=2',
237 withEmptyKeys: { '': ['a', 'b'], a: ['1', '2'] },
238 noEmptyKeys: { 0: 'a', 1: 'b', a: ['1', '2'] },
239 stringifyOutput: {
240 brackets: '[]=a&[]=b&a[]=1&a[]=2',
241 indices: '[0]=a&[1]=b&a[0]=1&a[1]=2',
242 repeat: '=a&=b&a=1&a=2'
243 }
244 },
245 {
246 input: '[deep]=a&[deep]=2',
247 withEmptyKeys: { '': { deep: ['a', '2'] }
248 },
249 stringifyOutput: {
250 brackets: '[deep][]=a&[deep][]=2',
251 indices: '[deep][0]=a&[deep][1]=2',
252 repeat: '[deep]=a&[deep]=2'
253 },
254 noEmptyKeys: { deep: ['a', '2'] }
255 },
256 {
257 input: '%5B0%5D=a&%5B1%5D=b',
258 withEmptyKeys: { '': ['a', 'b'] },
259 stringifyOutput: {
260 brackets: '[]=a&[]=b',
261 indices: '[0]=a&[1]=b',
262 repeat: '=a&=b'
263 },
264 noEmptyKeys: { 0: 'a', 1: 'b' }
265 }
266 ]
267};
Note: See TracBrowser for help on using the repository browser.