@pinata/sdk 2.1.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -2
- package/README.md +58 -695
- package/index.d.ts +9 -0
- package/index.js +6 -0
- package/index.mjs +4 -0
- package/legacy.js +15 -0
- package/package.json +58 -83
- package/react/index.d.ts +1 -0
- package/react/index.js +3 -0
- package/react/index.mjs +1 -0
- package/.babelrc +0 -5
- package/.editorconfig +0 -12
- package/.eslintrc +0 -173
- package/.husky/pre-commit +0 -6
- package/.nvmrc +0 -1
- package/.travis.yml +0 -5
- package/lib/pinata-sdk.js +0 -24526
- package/lib/pinata-sdk.min.js +0 -22
- package/pinata.png +0 -0
- package/src/commands/data/getFilesByCount/getFilesByCount.ts +0 -66
- package/src/commands/data/index.ts +0 -4
- package/src/commands/data/pinList/pinList.ts +0 -77
- package/src/commands/data/pinList/queryBuilder.ts +0 -239
- package/src/commands/data/testAuthentication.ts +0 -31
- package/src/commands/data/userPinnedDataTotal.ts +0 -24
- package/src/commands/pinning/hashMetadata.ts +0 -56
- package/src/commands/pinning/index.ts +0 -8
- package/src/commands/pinning/pinByHash.ts +0 -65
- package/src/commands/pinning/pinFileToIPFS.ts +0 -118
- package/src/commands/pinning/pinFromFS.ts +0 -60
- package/src/commands/pinning/pinJSONToIPFS.ts +0 -47
- package/src/commands/pinning/pinJobs/pinJobs.ts +0 -50
- package/src/commands/pinning/pinJobs/queryBuilder.ts +0 -75
- package/src/commands/pinning/unpin.ts +0 -32
- package/src/constants.ts +0 -4
- package/src/index.ts +0 -124
- package/src/require-babel-polyfill.ts +0 -5
- package/src/third-party/base-path-converter.d.ts +0 -3
- package/src/third-party/global.d.ts +0 -9
- package/src/third-party/is-ipfs.d.ts +0 -5
- package/src/util/errorResponse.ts +0 -10
- package/src/util/validators.ts +0 -182
- package/test/commands/data/getFilesByCount/getFilesByCount.test.ts +0 -212
- package/test/commands/data/pinList/pinList.test.ts +0 -102
- package/test/commands/data/pinList/queryBuilder.test.ts +0 -439
- package/test/commands/data/pinlist-sample-api.ts +0 -540
- package/test/commands/data/testAuthentication.test.ts +0 -34
- package/test/commands/data/userPinnedDataTotal.test.ts +0 -29
- package/test/commands/pinning/hashMetadata.test.ts +0 -76
- package/test/commands/pinning/pinByHash.test.ts +0 -46
- package/test/commands/pinning/pinFileToIPFS.test.ts +0 -53
- package/test/commands/pinning/pinFromFS.ts +0 -71
- package/test/commands/pinning/pinJSONToIPFS.test.ts +0 -42
- package/test/commands/pinning/pinJobs/pinJobs.test.ts +0 -29
- package/test/commands/pinning/pinJobs/queryBuilder.test.ts +0 -120
- package/test/commands/pinning/unpin.test.ts +0 -46
- package/test/util/validators.test.ts +0 -234
- package/tsconfig.json +0 -23
- package/types/commands/data/getFilesByCount/getFilesByCount.d.ts +0 -14
- package/types/commands/data/index.d.ts +0 -4
- package/types/commands/data/pinList/pinList.d.ts +0 -45
- package/types/commands/data/pinList/queryBuilder.d.ts +0 -1
- package/types/commands/data/testAuthentication.d.ts +0 -5
- package/types/commands/data/userPinnedDataTotal.d.ts +0 -2
- package/types/commands/pinning/hashMetadata.d.ts +0 -3
- package/types/commands/pinning/hashPinPolicy.d.ts +0 -9
- package/types/commands/pinning/index.d.ts +0 -8
- package/types/commands/pinning/pinByHash.d.ts +0 -14
- package/types/commands/pinning/pinFileToIPFS.d.ts +0 -25
- package/types/commands/pinning/pinFromFS.d.ts +0 -4
- package/types/commands/pinning/pinJSONToIPFS.d.ts +0 -3
- package/types/commands/pinning/pinJobs/pinJobs.d.ts +0 -20
- package/types/commands/pinning/pinJobs/queryBuilder.d.ts +0 -1
- package/types/commands/pinning/unpin.d.ts +0 -2
- package/types/commands/pinning/userPinPolicy.d.ts +0 -8
- package/types/constants.d.ts +0 -2
- package/types/index.d.ts +0 -39
- package/types/require-babel-polyfill.d.ts +0 -2
- package/types/util/errorResponse.d.ts +0 -1
- package/types/util/validators.d.ts +0 -37
- package/webpack.config.js +0 -58
|
@@ -1,439 +0,0 @@
|
|
|
1
|
-
import queryBuilder from '../../../../src/commands/data/pinList/queryBuilder';
|
|
2
|
-
|
|
3
|
-
const baseUrl = 'testing.com/test';
|
|
4
|
-
const noFiltersUrl = `${baseUrl}?`;
|
|
5
|
-
const validISODate = '2019-03-12T20:42:26.743Z';
|
|
6
|
-
const validInteger = 5;
|
|
7
|
-
|
|
8
|
-
describe('queryBuilder no params provided', () => {
|
|
9
|
-
test('if no baseUrl is provided', () => {
|
|
10
|
-
// expect(() => {
|
|
11
|
-
// queryBuilder();
|
|
12
|
-
// }).toThrow('no baseUrl provided');
|
|
13
|
-
});
|
|
14
|
-
test('if no filters are provided, return a non filtered url', () => {
|
|
15
|
-
expect(queryBuilder(baseUrl)).toEqual(noFiltersUrl);
|
|
16
|
-
});
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
describe('queryBuilder filter: hashContains', () => {
|
|
20
|
-
test('non string is provided', () => {
|
|
21
|
-
const filters = {
|
|
22
|
-
hashContains: {
|
|
23
|
-
test: 'test'
|
|
24
|
-
}
|
|
25
|
-
};
|
|
26
|
-
expect(() => {
|
|
27
|
-
queryBuilder(baseUrl, filters);
|
|
28
|
-
}).toThrow('hashContains value is not a string');
|
|
29
|
-
});
|
|
30
|
-
test('string value is provided', () => {
|
|
31
|
-
const filters = {
|
|
32
|
-
hashContains: 'test'
|
|
33
|
-
};
|
|
34
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?hashContains=test&`);
|
|
35
|
-
});
|
|
36
|
-
});
|
|
37
|
-
|
|
38
|
-
describe('queryBuilder filter: pinStart', () => {
|
|
39
|
-
test('non date is provided', () => {
|
|
40
|
-
const filters = {
|
|
41
|
-
pinStart: 'test'
|
|
42
|
-
};
|
|
43
|
-
expect(() => {
|
|
44
|
-
queryBuilder(baseUrl, filters);
|
|
45
|
-
}).toThrow('dates must be in valid ISO_8601 format');
|
|
46
|
-
});
|
|
47
|
-
test('date value is provided', () => {
|
|
48
|
-
const filters = {
|
|
49
|
-
pinStart: validISODate
|
|
50
|
-
};
|
|
51
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?pinStart=${validISODate}&`);
|
|
52
|
-
});
|
|
53
|
-
});
|
|
54
|
-
|
|
55
|
-
describe('queryBuilder filter: pinEnd', () => {
|
|
56
|
-
test('non date is provided', () => {
|
|
57
|
-
const filters = {
|
|
58
|
-
pinEnd: 'test'
|
|
59
|
-
};
|
|
60
|
-
expect(() => {
|
|
61
|
-
queryBuilder(baseUrl, filters);
|
|
62
|
-
}).toThrow('dates must be in valid ISO_8601 format');
|
|
63
|
-
});
|
|
64
|
-
test('date value is provided', () => {
|
|
65
|
-
const filters = {
|
|
66
|
-
pinEnd: validISODate
|
|
67
|
-
};
|
|
68
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?pinEnd=${validISODate}&`);
|
|
69
|
-
});
|
|
70
|
-
});
|
|
71
|
-
|
|
72
|
-
describe('queryBuilder filter: unpinStart', () => {
|
|
73
|
-
test('non date is provided', () => {
|
|
74
|
-
const filters = {
|
|
75
|
-
unpinStart: 'test'
|
|
76
|
-
};
|
|
77
|
-
expect(() => {
|
|
78
|
-
queryBuilder(baseUrl, filters);
|
|
79
|
-
}).toThrow('dates must be in valid ISO_8601 format');
|
|
80
|
-
});
|
|
81
|
-
test('date value is provided', () => {
|
|
82
|
-
const filters = {
|
|
83
|
-
unpinStart: validISODate
|
|
84
|
-
};
|
|
85
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?unpinStart=${validISODate}&`);
|
|
86
|
-
});
|
|
87
|
-
});
|
|
88
|
-
|
|
89
|
-
describe('queryBuilder filter: unpinEnd', () => {
|
|
90
|
-
test('non date is provided', () => {
|
|
91
|
-
const filters = {
|
|
92
|
-
unpinEnd: 'test'
|
|
93
|
-
};
|
|
94
|
-
expect(() => {
|
|
95
|
-
queryBuilder(baseUrl, filters);
|
|
96
|
-
}).toThrow('dates must be in valid ISO_8601 format');
|
|
97
|
-
});
|
|
98
|
-
test('date value is provided', () => {
|
|
99
|
-
const filters = {
|
|
100
|
-
unpinEnd: validISODate
|
|
101
|
-
};
|
|
102
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?unpinEnd=${validISODate}&`);
|
|
103
|
-
});
|
|
104
|
-
});
|
|
105
|
-
|
|
106
|
-
describe('queryBuilder filter: pinSizeMin', () => {
|
|
107
|
-
test('non number is provided', () => {
|
|
108
|
-
const filters = {
|
|
109
|
-
pinSizeMin: 'test'
|
|
110
|
-
};
|
|
111
|
-
expect(() => {
|
|
112
|
-
queryBuilder(baseUrl, filters);
|
|
113
|
-
}).toThrow('Please make sure the pinSizeMin is a valid positive integer');
|
|
114
|
-
});
|
|
115
|
-
test('date value is provided', () => {
|
|
116
|
-
const filters = {
|
|
117
|
-
pinSizeMin: validInteger
|
|
118
|
-
};
|
|
119
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?pinSizeMin=${validInteger}&`);
|
|
120
|
-
});
|
|
121
|
-
});
|
|
122
|
-
|
|
123
|
-
describe('queryBuilder filter: pinSizeMax', () => {
|
|
124
|
-
test('non number is provided', () => {
|
|
125
|
-
const filters = {
|
|
126
|
-
pinSizeMax: 'test'
|
|
127
|
-
};
|
|
128
|
-
expect(() => {
|
|
129
|
-
queryBuilder(baseUrl, filters);
|
|
130
|
-
}).toThrow('Please make sure the pinSizeMax is a valid positive integer');
|
|
131
|
-
});
|
|
132
|
-
test('date value is provided', () => {
|
|
133
|
-
const filters = {
|
|
134
|
-
pinSizeMax: validInteger
|
|
135
|
-
};
|
|
136
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?pinSizeMax=${validInteger}&`);
|
|
137
|
-
});
|
|
138
|
-
});
|
|
139
|
-
|
|
140
|
-
describe('queryBuilder filter: status', () => {
|
|
141
|
-
test('non accepted value is passed in', () => {
|
|
142
|
-
const filters = {
|
|
143
|
-
status: 'test'
|
|
144
|
-
};
|
|
145
|
-
expect(() => {
|
|
146
|
-
queryBuilder(baseUrl, filters);
|
|
147
|
-
}).toThrow('status value must be either: all, pinned, or unpinned');
|
|
148
|
-
});
|
|
149
|
-
test('valid status is provided', () => {
|
|
150
|
-
const validInput = 'pinned';
|
|
151
|
-
const filters = {
|
|
152
|
-
status: validInput
|
|
153
|
-
};
|
|
154
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?status=${validInput}&`);
|
|
155
|
-
});
|
|
156
|
-
});
|
|
157
|
-
|
|
158
|
-
describe('queryBuilder filter: pageLimit', () => {
|
|
159
|
-
test('non integer pageLimit is passed in', () => {
|
|
160
|
-
const filters = {
|
|
161
|
-
pageLimit: 'test'
|
|
162
|
-
};
|
|
163
|
-
expect(() => {
|
|
164
|
-
queryBuilder(baseUrl, filters);
|
|
165
|
-
}).toThrow('Please make sure the pageLimit is a valid integer between 1-1000');
|
|
166
|
-
});
|
|
167
|
-
test('non valid pageLimit is passed in', () => {
|
|
168
|
-
const filters = {
|
|
169
|
-
pageLimit: 1001
|
|
170
|
-
};
|
|
171
|
-
expect(() => {
|
|
172
|
-
queryBuilder(baseUrl, filters);
|
|
173
|
-
}).toThrow('Please make sure the pageLimit is a valid integer between 1-1000');
|
|
174
|
-
});
|
|
175
|
-
test('Decimal is passed in - expect to round down', () => {
|
|
176
|
-
const filters = {
|
|
177
|
-
pageLimit: 500.7
|
|
178
|
-
};
|
|
179
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?pageLimit=500&`);
|
|
180
|
-
|
|
181
|
-
});
|
|
182
|
-
test('valid pageLimit is provided', () => {
|
|
183
|
-
const validInput = 500;
|
|
184
|
-
const filters = {
|
|
185
|
-
pageLimit: validInput
|
|
186
|
-
};
|
|
187
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?pageLimit=${validInput}&`);
|
|
188
|
-
});
|
|
189
|
-
});
|
|
190
|
-
|
|
191
|
-
describe('queryBuilder filter: pageOffset', () => {
|
|
192
|
-
test('non integer pageOffset is passed in', () => {
|
|
193
|
-
const filters = {
|
|
194
|
-
pageOffset: 'test'
|
|
195
|
-
};
|
|
196
|
-
expect(() => {
|
|
197
|
-
queryBuilder(baseUrl, filters);
|
|
198
|
-
}).toThrow('Please make sure the pageOffset is a positive integer');
|
|
199
|
-
});
|
|
200
|
-
test('non valid pageOffset is passed in', () => {
|
|
201
|
-
const filters = {
|
|
202
|
-
pageOffset: '-1'
|
|
203
|
-
};
|
|
204
|
-
expect(() => {
|
|
205
|
-
queryBuilder(baseUrl, filters);
|
|
206
|
-
}).toThrow('Please make sure the pageOffset is a positive integer');
|
|
207
|
-
});
|
|
208
|
-
test('Decimal is passed in - expect to round down', () => {
|
|
209
|
-
const filters = {
|
|
210
|
-
pageOffset: 500.7
|
|
211
|
-
};
|
|
212
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?pageOffset=500&`);
|
|
213
|
-
});
|
|
214
|
-
test('valid pageOffset is provided', () => {
|
|
215
|
-
const validInput = 500;
|
|
216
|
-
const filters = {
|
|
217
|
-
pageOffset: validInput
|
|
218
|
-
};
|
|
219
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?pageOffset=${validInput}&`);
|
|
220
|
-
});
|
|
221
|
-
});
|
|
222
|
-
|
|
223
|
-
describe('metadata provided', () => {
|
|
224
|
-
test('metadata is not an object', () => {
|
|
225
|
-
const filters = {
|
|
226
|
-
metadata: 'test'
|
|
227
|
-
};
|
|
228
|
-
expect(() => {
|
|
229
|
-
queryBuilder(baseUrl, filters);
|
|
230
|
-
}).toThrow('metadata value must be an object');
|
|
231
|
-
});
|
|
232
|
-
test('metadata name value provided', () => {
|
|
233
|
-
const name = 'testName';
|
|
234
|
-
const filters = {
|
|
235
|
-
metadata: {
|
|
236
|
-
name: name
|
|
237
|
-
}
|
|
238
|
-
};
|
|
239
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?metadata[name]=${name}&`);
|
|
240
|
-
});
|
|
241
|
-
test('metadata keyvalues is not an object', () => {
|
|
242
|
-
const filters = {
|
|
243
|
-
metadata: {
|
|
244
|
-
keyvalues: 'test'
|
|
245
|
-
}
|
|
246
|
-
};
|
|
247
|
-
expect(() => {
|
|
248
|
-
queryBuilder(baseUrl, filters);
|
|
249
|
-
}).toThrow('metadata keyvalues must be an object');
|
|
250
|
-
});
|
|
251
|
-
test('individual keyvalue is not an object', () => {
|
|
252
|
-
const filters = {
|
|
253
|
-
metadata: {
|
|
254
|
-
keyvalues: {
|
|
255
|
-
testKeyValue: 'nonObject'
|
|
256
|
-
}
|
|
257
|
-
}
|
|
258
|
-
};
|
|
259
|
-
expect(() => {
|
|
260
|
-
queryBuilder(baseUrl, filters);
|
|
261
|
-
}).toThrow('keyValue: testKeyValue is not an object');
|
|
262
|
-
});
|
|
263
|
-
test('individual keyvalue does not have value or op attributes', () => {
|
|
264
|
-
const filters = {
|
|
265
|
-
metadata: {
|
|
266
|
-
keyvalues: {
|
|
267
|
-
testKeyValue: {
|
|
268
|
-
test: 'test'
|
|
269
|
-
}
|
|
270
|
-
}
|
|
271
|
-
}
|
|
272
|
-
};
|
|
273
|
-
expect(() => {
|
|
274
|
-
queryBuilder(baseUrl, filters);
|
|
275
|
-
}).toThrow('keyValue: testKeyValue must have both value and op attributes');
|
|
276
|
-
});
|
|
277
|
-
test('individual keyvalue value is an object type', () => {
|
|
278
|
-
const filters = {
|
|
279
|
-
metadata: {
|
|
280
|
-
keyvalues: {
|
|
281
|
-
testKeyValue: {
|
|
282
|
-
value: {
|
|
283
|
-
objectType: 'test'
|
|
284
|
-
},
|
|
285
|
-
op: 'test'
|
|
286
|
-
}
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
};
|
|
290
|
-
expect(() => {
|
|
291
|
-
queryBuilder(baseUrl, filters);
|
|
292
|
-
}).toThrow('Metadata keyvalue values must be strings, booleans, or numbers');
|
|
293
|
-
});
|
|
294
|
-
test('individual keyvalue op code is not valid', () => {
|
|
295
|
-
const filters = {
|
|
296
|
-
metadata: {
|
|
297
|
-
keyvalues: {
|
|
298
|
-
testKeyValue: {
|
|
299
|
-
value: 'test',
|
|
300
|
-
op: 'invalid'
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
}
|
|
304
|
-
};
|
|
305
|
-
expect(() => {
|
|
306
|
-
queryBuilder(baseUrl, filters);
|
|
307
|
-
}).toThrow('keyValue op: invalid is not a valid op code');
|
|
308
|
-
});
|
|
309
|
-
test('between op code passed in, but only one value provided', () => {
|
|
310
|
-
const filters = {
|
|
311
|
-
metadata: {
|
|
312
|
-
keyvalues: {
|
|
313
|
-
testKeyValue: {
|
|
314
|
-
value: 'test',
|
|
315
|
-
op: 'between'
|
|
316
|
-
}
|
|
317
|
-
}
|
|
318
|
-
}
|
|
319
|
-
};
|
|
320
|
-
expect(() => {
|
|
321
|
-
queryBuilder(baseUrl, filters);
|
|
322
|
-
}).toThrow('Because between op code was passed in, keyValue: testKeyValue must have both also include a secondValue');
|
|
323
|
-
});
|
|
324
|
-
test('between op code passed in, but object passed in as secondValue', () => {
|
|
325
|
-
const filters = {
|
|
326
|
-
metadata: {
|
|
327
|
-
keyvalues: {
|
|
328
|
-
testKeyValue: {
|
|
329
|
-
value: 'test',
|
|
330
|
-
secondValue: {
|
|
331
|
-
test: 'test'
|
|
332
|
-
},
|
|
333
|
-
op: 'between'
|
|
334
|
-
}
|
|
335
|
-
}
|
|
336
|
-
}
|
|
337
|
-
};
|
|
338
|
-
expect(() => {
|
|
339
|
-
queryBuilder(baseUrl, filters);
|
|
340
|
-
}).toThrow('Metadata keyvalue secondValue must be a string, boolean, or number');
|
|
341
|
-
});
|
|
342
|
-
test('notBetween op code passed in, but only one value provided', () => {
|
|
343
|
-
const filters = {
|
|
344
|
-
metadata: {
|
|
345
|
-
keyvalues: {
|
|
346
|
-
testKeyValue: {
|
|
347
|
-
value: 'test',
|
|
348
|
-
op: 'notBetween'
|
|
349
|
-
}
|
|
350
|
-
}
|
|
351
|
-
}
|
|
352
|
-
};
|
|
353
|
-
expect(() => {
|
|
354
|
-
queryBuilder(baseUrl, filters);
|
|
355
|
-
}).toThrow('Because notBetween op code was passed in, keyValue: testKeyValue must have both also include a secondValue');
|
|
356
|
-
});
|
|
357
|
-
test('notBetween op code passed in, but object passed in as secondValue', () => {
|
|
358
|
-
const filters = {
|
|
359
|
-
metadata: {
|
|
360
|
-
keyvalues: {
|
|
361
|
-
testKeyValue: {
|
|
362
|
-
value: 'test',
|
|
363
|
-
secondValue: {
|
|
364
|
-
test: 'test'
|
|
365
|
-
},
|
|
366
|
-
op: 'notBetween'
|
|
367
|
-
}
|
|
368
|
-
}
|
|
369
|
-
}
|
|
370
|
-
};
|
|
371
|
-
expect(() => {
|
|
372
|
-
queryBuilder(baseUrl, filters);
|
|
373
|
-
}).toThrow('Metadata keyvalue secondValue must be a string, boolean, or number');
|
|
374
|
-
});
|
|
375
|
-
test('Pass in a valid keyvalue object', () => {
|
|
376
|
-
const filters = {
|
|
377
|
-
metadata: {
|
|
378
|
-
keyvalues: {
|
|
379
|
-
testKeyValue: {
|
|
380
|
-
value: 'test',
|
|
381
|
-
op: 'eq'
|
|
382
|
-
}
|
|
383
|
-
}
|
|
384
|
-
}
|
|
385
|
-
};
|
|
386
|
-
const query = JSON.stringify(filters.metadata.keyvalues);
|
|
387
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?metadata[keyvalues]=${query}`);
|
|
388
|
-
});
|
|
389
|
-
test('Pass in a valid keyvalue object with two parameters', () => {
|
|
390
|
-
const filters = {
|
|
391
|
-
metadata: {
|
|
392
|
-
keyvalues: {
|
|
393
|
-
testKeyValue: {
|
|
394
|
-
value: 'test',
|
|
395
|
-
op: 'eq'
|
|
396
|
-
},
|
|
397
|
-
testKeyValue2: {
|
|
398
|
-
value: 'test2',
|
|
399
|
-
op: 'eq'
|
|
400
|
-
}
|
|
401
|
-
}
|
|
402
|
-
}
|
|
403
|
-
};
|
|
404
|
-
const query = JSON.stringify(filters.metadata.keyvalues);
|
|
405
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?metadata[keyvalues]=${query}`);
|
|
406
|
-
});
|
|
407
|
-
test('Pass in a valid keyvalue object with a secondValue', () => {
|
|
408
|
-
const filters = {
|
|
409
|
-
metadata: {
|
|
410
|
-
keyvalues: {
|
|
411
|
-
testKeyValue: {
|
|
412
|
-
value: 'test',
|
|
413
|
-
op: 'between',
|
|
414
|
-
secondValue: 'test2'
|
|
415
|
-
}
|
|
416
|
-
}
|
|
417
|
-
}
|
|
418
|
-
};
|
|
419
|
-
const query = JSON.stringify(filters.metadata.keyvalues);
|
|
420
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?metadata[keyvalues]=${query}`);
|
|
421
|
-
});
|
|
422
|
-
test('Pass in a valid name and keyvalue object with a secondValue', () => {
|
|
423
|
-
const testName = 'testName';
|
|
424
|
-
const filters = {
|
|
425
|
-
metadata: {
|
|
426
|
-
name: testName,
|
|
427
|
-
keyvalues: {
|
|
428
|
-
testKeyValue: {
|
|
429
|
-
value: 'test',
|
|
430
|
-
op: 'between',
|
|
431
|
-
secondValue: 'test2'
|
|
432
|
-
}
|
|
433
|
-
}
|
|
434
|
-
}
|
|
435
|
-
};
|
|
436
|
-
const query = JSON.stringify(filters.metadata.keyvalues);
|
|
437
|
-
expect(queryBuilder(baseUrl, filters)).toEqual(`${baseUrl}?metadata[name]=${testName}&metadata[keyvalues]=${query}`);
|
|
438
|
-
});
|
|
439
|
-
});
|