@graphql-box/cache-manager 2.4.2 → 3.1.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/lib/browser/index.js +1 -1
- package/lib/browser/index.js.map +1 -1
- package/lib/browser/production.analysis.txt +63 -27
- package/lib/main/helpers/isFirstResponseChunk.js +11 -0
- package/lib/main/helpers/isFirstResponseChunk.js.map +1 -0
- package/lib/main/helpers/isLastResponseChunk.js +11 -0
- package/lib/main/helpers/isLastResponseChunk.js.map +1 -0
- package/lib/main/helpers/isNotLastResponseChunk.js +11 -0
- package/lib/main/helpers/isNotLastResponseChunk.js.map +1 -0
- package/lib/main/helpers/isNotResponseChunk.js +11 -0
- package/lib/main/helpers/isNotResponseChunk.js.map +1 -0
- package/lib/main/helpers/mergeResponseDataSets.js +53 -0
- package/lib/main/helpers/mergeResponseDataSets.js.map +1 -0
- package/lib/main/helpers/normalizePatchResponseData.js +10 -5
- package/lib/main/helpers/normalizePatchResponseData.js.map +1 -1
- package/lib/main/main/index.js +145 -121
- package/lib/main/main/index.js.map +1 -1
- package/lib/module/helpers/isFirstResponseChunk.js +2 -0
- package/lib/module/helpers/isFirstResponseChunk.js.map +1 -0
- package/lib/module/helpers/isLastResponseChunk.js +2 -0
- package/lib/module/helpers/isLastResponseChunk.js.map +1 -0
- package/lib/module/helpers/isNotLastResponseChunk.js +2 -0
- package/lib/module/helpers/isNotLastResponseChunk.js.map +1 -0
- package/lib/module/helpers/isNotResponseChunk.js +2 -0
- package/lib/module/helpers/isNotResponseChunk.js.map +1 -0
- package/lib/module/helpers/mergeResponseDataSets.js +41 -0
- package/lib/module/helpers/mergeResponseDataSets.js.map +1 -0
- package/lib/module/helpers/normalizePatchResponseData.js +10 -5
- package/lib/module/helpers/normalizePatchResponseData.js.map +1 -1
- package/lib/module/main/index.js +142 -121
- package/lib/module/main/index.js.map +1 -1
- package/lib/types/defs/index.d.ts +3 -10
- package/lib/types/defs/index.d.ts.map +1 -1
- package/lib/types/helpers/isFirstResponseChunk.d.ts +5 -0
- package/lib/types/helpers/isFirstResponseChunk.d.ts.map +1 -0
- package/lib/types/helpers/isLastResponseChunk.d.ts +5 -0
- package/lib/types/helpers/isLastResponseChunk.d.ts.map +1 -0
- package/lib/types/helpers/isNotLastResponseChunk.d.ts +5 -0
- package/lib/types/helpers/isNotLastResponseChunk.d.ts.map +1 -0
- package/lib/types/helpers/isNotResponseChunk.d.ts +5 -0
- package/lib/types/helpers/isNotResponseChunk.d.ts.map +1 -0
- package/lib/types/helpers/mergeResponseDataSets.d.ts +4 -0
- package/lib/types/helpers/mergeResponseDataSets.d.ts.map +1 -0
- package/lib/types/helpers/normalizePatchResponseData.d.ts +2 -8
- package/lib/types/helpers/normalizePatchResponseData.d.ts.map +1 -1
- package/lib/types/main/index.d.ts +7 -5
- package/lib/types/main/index.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/__snapshots__/index.test.ts.snap +12481 -11881
- package/src/defs/index.ts +14 -22
- package/src/helpers/isFirstResponseChunk.ts +5 -0
- package/src/helpers/isLastResponseChunk.ts +5 -0
- package/src/helpers/isNotLastResponseChunk.ts +5 -0
- package/src/helpers/isNotResponseChunk.ts +5 -0
- package/src/helpers/mergeResponseDataSets.ts +35 -0
- package/src/helpers/normalizePatchResponseData.ts +8 -1
- package/src/index.test.ts +191 -115
- package/src/main/index.ts +171 -137
package/src/index.test.ts
CHANGED
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
DEFAULT_TYPE_ID_KEY,
|
|
5
5
|
DehydratedCacheMetadata,
|
|
6
6
|
MUTATION,
|
|
7
|
+
RawResponseDataWithMaybeCacheMetadata,
|
|
7
8
|
RequestData,
|
|
8
9
|
ResponseData,
|
|
9
10
|
SUBSCRIPTION,
|
|
@@ -31,13 +32,15 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
31
32
|
});
|
|
32
33
|
|
|
33
34
|
describe("resolveRequest >>", () => {
|
|
34
|
-
let responseData: ResponseData;
|
|
35
|
+
let responseData: ResponseData | undefined;
|
|
35
36
|
let requestData: RequestData;
|
|
36
37
|
|
|
37
38
|
describe("mutation >> nested interface >>", () => {
|
|
38
39
|
describe("cascading cache control >>", () => {
|
|
39
40
|
beforeAll(async () => {
|
|
40
|
-
|
|
41
|
+
responseData = undefined;
|
|
42
|
+
|
|
43
|
+
cacheManager = new CacheManager({
|
|
41
44
|
cache: new Cachemap({
|
|
42
45
|
name: "cachemap",
|
|
43
46
|
store: map(),
|
|
@@ -49,7 +52,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
49
52
|
|
|
50
53
|
requestData = getRequestData(parsedRequests.nestedInterfaceMutation);
|
|
51
54
|
|
|
52
|
-
responseData = await cacheManager.
|
|
55
|
+
responseData = await cacheManager.cacheResponse(
|
|
53
56
|
requestData,
|
|
54
57
|
responses.nestedInterfaceMutation,
|
|
55
58
|
{ awaitDataCaching: true },
|
|
@@ -68,7 +71,9 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
68
71
|
|
|
69
72
|
describe("type cache directives >>", () => {
|
|
70
73
|
beforeAll(async () => {
|
|
71
|
-
|
|
74
|
+
responseData = undefined;
|
|
75
|
+
|
|
76
|
+
cacheManager = new CacheManager({
|
|
72
77
|
cache: new Cachemap({
|
|
73
78
|
name: "cachemap",
|
|
74
79
|
store: map(),
|
|
@@ -86,7 +91,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
86
91
|
|
|
87
92
|
requestData = getRequestData(parsedRequests.nestedInterfaceMutation);
|
|
88
93
|
|
|
89
|
-
responseData = await cacheManager.
|
|
94
|
+
responseData = await cacheManager.cacheResponse(
|
|
90
95
|
requestData,
|
|
91
96
|
responses.nestedInterfaceMutation,
|
|
92
97
|
{ awaitDataCaching: true },
|
|
@@ -107,7 +112,9 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
107
112
|
describe("subscription >> nested type >>", () => {
|
|
108
113
|
describe("cascading cache control >>", () => {
|
|
109
114
|
beforeAll(async () => {
|
|
110
|
-
|
|
115
|
+
responseData = undefined;
|
|
116
|
+
|
|
117
|
+
cacheManager = new CacheManager({
|
|
111
118
|
cache: new Cachemap({
|
|
112
119
|
name: "cachemap",
|
|
113
120
|
store: map(),
|
|
@@ -119,7 +126,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
119
126
|
|
|
120
127
|
requestData = getRequestData(parsedRequests.nestedTypeSubscription);
|
|
121
128
|
|
|
122
|
-
responseData = await cacheManager.
|
|
129
|
+
responseData = await cacheManager.cacheResponse(
|
|
123
130
|
requestData,
|
|
124
131
|
responses.nestedTypeSubscription,
|
|
125
132
|
{ awaitDataCaching: true },
|
|
@@ -138,7 +145,9 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
138
145
|
|
|
139
146
|
describe("type cache directives >>", () => {
|
|
140
147
|
beforeAll(async () => {
|
|
141
|
-
|
|
148
|
+
responseData = undefined;
|
|
149
|
+
|
|
150
|
+
cacheManager = new CacheManager({
|
|
142
151
|
cache: new Cachemap({
|
|
143
152
|
name: "cachemap",
|
|
144
153
|
store: map(),
|
|
@@ -153,7 +162,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
153
162
|
|
|
154
163
|
requestData = getRequestData(parsedRequests.nestedTypeSubscription);
|
|
155
164
|
|
|
156
|
-
responseData = await cacheManager.
|
|
165
|
+
responseData = await cacheManager.cacheResponse(
|
|
157
166
|
requestData,
|
|
158
167
|
responses.nestedTypeSubscription,
|
|
159
168
|
{ awaitDataCaching: true },
|
|
@@ -173,14 +182,16 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
173
182
|
});
|
|
174
183
|
|
|
175
184
|
describe("resolveQuery >>", () => {
|
|
176
|
-
let responseData: ResponseData;
|
|
185
|
+
let responseData: ResponseData | undefined;
|
|
177
186
|
let requestData: RequestData;
|
|
178
187
|
|
|
179
188
|
describe("not filtered >>", () => {
|
|
180
189
|
describe("single type >>", () => {
|
|
181
190
|
describe("cascading cache control >>", () => {
|
|
182
191
|
beforeAll(async () => {
|
|
183
|
-
|
|
192
|
+
responseData = undefined;
|
|
193
|
+
|
|
194
|
+
cacheManager = new CacheManager({
|
|
184
195
|
cache: new Cachemap({
|
|
185
196
|
name: "cachemap",
|
|
186
197
|
store: map(),
|
|
@@ -192,7 +203,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
192
203
|
|
|
193
204
|
requestData = getRequestData(parsedRequests.singleTypeQuery);
|
|
194
205
|
|
|
195
|
-
responseData = await cacheManager.
|
|
206
|
+
responseData = await cacheManager.cacheQuery(
|
|
196
207
|
requestData,
|
|
197
208
|
requestData,
|
|
198
209
|
responses.singleTypeQuery,
|
|
@@ -212,7 +223,9 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
212
223
|
|
|
213
224
|
describe("type cache directives >>", () => {
|
|
214
225
|
beforeAll(async () => {
|
|
215
|
-
|
|
226
|
+
responseData = undefined;
|
|
227
|
+
|
|
228
|
+
cacheManager = new CacheManager({
|
|
216
229
|
cache: new Cachemap({
|
|
217
230
|
name: "cachemap",
|
|
218
231
|
store: map(),
|
|
@@ -226,7 +239,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
226
239
|
|
|
227
240
|
requestData = getRequestData(parsedRequests.singleTypeQuery);
|
|
228
241
|
|
|
229
|
-
responseData = await cacheManager.
|
|
242
|
+
responseData = await cacheManager.cacheQuery(
|
|
230
243
|
requestData,
|
|
231
244
|
requestData,
|
|
232
245
|
responses.singleTypeQuery,
|
|
@@ -248,7 +261,9 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
248
261
|
describe("nested type with edges >>", () => {
|
|
249
262
|
describe("cascading cache control >>", () => {
|
|
250
263
|
beforeAll(async () => {
|
|
251
|
-
|
|
264
|
+
responseData = undefined;
|
|
265
|
+
|
|
266
|
+
cacheManager = new CacheManager({
|
|
252
267
|
cache: new Cachemap({
|
|
253
268
|
name: "cachemap",
|
|
254
269
|
store: map(),
|
|
@@ -260,7 +275,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
260
275
|
|
|
261
276
|
requestData = getRequestData(parsedRequests.nestedTypeQuery);
|
|
262
277
|
|
|
263
|
-
responseData = await cacheManager.
|
|
278
|
+
responseData = await cacheManager.cacheQuery(
|
|
264
279
|
requestData,
|
|
265
280
|
requestData,
|
|
266
281
|
responses.nestedTypeQuery,
|
|
@@ -280,7 +295,9 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
280
295
|
|
|
281
296
|
describe("type cache directives >>", () => {
|
|
282
297
|
beforeAll(async () => {
|
|
283
|
-
|
|
298
|
+
responseData = undefined;
|
|
299
|
+
|
|
300
|
+
cacheManager = new CacheManager({
|
|
284
301
|
cache: new Cachemap({
|
|
285
302
|
name: "cachemap",
|
|
286
303
|
store: map(),
|
|
@@ -297,7 +314,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
297
314
|
|
|
298
315
|
requestData = getRequestData(parsedRequests.nestedTypeQuery);
|
|
299
316
|
|
|
300
|
-
responseData = await cacheManager.
|
|
317
|
+
responseData = await cacheManager.cacheQuery(
|
|
301
318
|
requestData,
|
|
302
319
|
requestData,
|
|
303
320
|
responses.nestedTypeQuery,
|
|
@@ -319,7 +336,9 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
319
336
|
describe("nested union with edges >>", () => {
|
|
320
337
|
describe("cascading cache control >>", () => {
|
|
321
338
|
beforeAll(async () => {
|
|
322
|
-
|
|
339
|
+
responseData = undefined;
|
|
340
|
+
|
|
341
|
+
cacheManager = new CacheManager({
|
|
323
342
|
cache: new Cachemap({
|
|
324
343
|
name: "cachemap",
|
|
325
344
|
store: map(),
|
|
@@ -331,7 +350,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
331
350
|
|
|
332
351
|
requestData = getRequestData(parsedRequests.nestedUnionQuery);
|
|
333
352
|
|
|
334
|
-
responseData = await cacheManager.
|
|
353
|
+
responseData = await cacheManager.cacheQuery(
|
|
335
354
|
requestData,
|
|
336
355
|
requestData,
|
|
337
356
|
responses.nestedUnionQuery,
|
|
@@ -351,7 +370,9 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
351
370
|
|
|
352
371
|
describe("type cache directives >>", () => {
|
|
353
372
|
beforeAll(async () => {
|
|
354
|
-
|
|
373
|
+
responseData = undefined;
|
|
374
|
+
|
|
375
|
+
cacheManager = new CacheManager({
|
|
355
376
|
cache: new Cachemap({
|
|
356
377
|
name: "cachemap",
|
|
357
378
|
store: map(),
|
|
@@ -366,7 +387,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
366
387
|
|
|
367
388
|
requestData = getRequestData(parsedRequests.nestedUnionQuery);
|
|
368
389
|
|
|
369
|
-
responseData = await cacheManager.
|
|
390
|
+
responseData = await cacheManager.cacheQuery(
|
|
370
391
|
requestData,
|
|
371
392
|
requestData,
|
|
372
393
|
responses.nestedUnionQuery,
|
|
@@ -390,10 +411,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
390
411
|
describe("single type >>", () => {
|
|
391
412
|
describe("cascading cache control >>", () => {
|
|
392
413
|
beforeAll(async () => {
|
|
414
|
+
responseData = undefined;
|
|
393
415
|
// @ts-ignore
|
|
394
416
|
jest.spyOn(CacheManager, "_isValid").mockReturnValue(true);
|
|
395
417
|
|
|
396
|
-
cacheManager =
|
|
418
|
+
cacheManager = new CacheManager({
|
|
397
419
|
cache: new Cachemap({
|
|
398
420
|
name: "cachemap",
|
|
399
421
|
store: map(),
|
|
@@ -405,7 +427,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
405
427
|
|
|
406
428
|
requestData = getRequestData(parsedRequests.singleTypeQuerySet.initial);
|
|
407
429
|
|
|
408
|
-
|
|
430
|
+
await cacheManager.cacheQuery(
|
|
409
431
|
requestData,
|
|
410
432
|
requestData,
|
|
411
433
|
responses.singleTypeQuerySet.initial,
|
|
@@ -421,10 +443,10 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
421
443
|
data,
|
|
422
444
|
});
|
|
423
445
|
|
|
424
|
-
responseData = await cacheManager.
|
|
446
|
+
responseData = await cacheManager.cacheQuery(
|
|
425
447
|
getRequestData(parsedRequests.singleTypeQuerySet.full),
|
|
426
448
|
getRequestData(parsedRequests.singleTypeQuerySet.updated),
|
|
427
|
-
responses.singleTypeQuerySet.updated,
|
|
449
|
+
responses.singleTypeQuerySet.updated as RawResponseDataWithMaybeCacheMetadata,
|
|
428
450
|
{ awaitDataCaching: true },
|
|
429
451
|
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.singleTypeQuery, queryFiltered: true }),
|
|
430
452
|
);
|
|
@@ -441,10 +463,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
441
463
|
|
|
442
464
|
describe("type cache directives >>", () => {
|
|
443
465
|
beforeAll(async () => {
|
|
466
|
+
responseData = undefined;
|
|
444
467
|
// @ts-ignore
|
|
445
468
|
jest.spyOn(CacheManager, "_isValid").mockReturnValue(true);
|
|
446
469
|
|
|
447
|
-
cacheManager =
|
|
470
|
+
cacheManager = new CacheManager({
|
|
448
471
|
cache: new Cachemap({
|
|
449
472
|
name: "cachemap",
|
|
450
473
|
store: map(),
|
|
@@ -458,7 +481,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
458
481
|
|
|
459
482
|
requestData = getRequestData(parsedRequests.singleTypeQuerySet.initial);
|
|
460
483
|
|
|
461
|
-
|
|
484
|
+
await cacheManager.cacheQuery(
|
|
462
485
|
requestData,
|
|
463
486
|
requestData,
|
|
464
487
|
responses.singleTypeQuerySet.initial,
|
|
@@ -474,10 +497,10 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
474
497
|
data,
|
|
475
498
|
});
|
|
476
499
|
|
|
477
|
-
responseData = await cacheManager.
|
|
500
|
+
responseData = await cacheManager.cacheQuery(
|
|
478
501
|
getRequestData(parsedRequests.singleTypeQuerySet.full),
|
|
479
502
|
getRequestData(parsedRequests.singleTypeQuerySet.updated),
|
|
480
|
-
responses.singleTypeQuerySet.updated,
|
|
503
|
+
responses.singleTypeQuerySet.updated as RawResponseDataWithMaybeCacheMetadata,
|
|
481
504
|
{ awaitDataCaching: true },
|
|
482
505
|
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.singleTypeQuery, queryFiltered: true }),
|
|
483
506
|
);
|
|
@@ -496,10 +519,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
496
519
|
describe("nested type with edges >>", () => {
|
|
497
520
|
describe("cascading cache control >>", () => {
|
|
498
521
|
beforeAll(async () => {
|
|
522
|
+
responseData = undefined;
|
|
499
523
|
// @ts-ignore
|
|
500
524
|
jest.spyOn(CacheManager, "_isValid").mockReturnValue(true);
|
|
501
525
|
|
|
502
|
-
cacheManager =
|
|
526
|
+
cacheManager = new CacheManager({
|
|
503
527
|
cache: new Cachemap({
|
|
504
528
|
name: "cachemap",
|
|
505
529
|
store: map(),
|
|
@@ -511,7 +535,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
511
535
|
|
|
512
536
|
requestData = getRequestData(parsedRequests.nestedTypeQuerySet.initial);
|
|
513
537
|
|
|
514
|
-
|
|
538
|
+
await cacheManager.cacheQuery(
|
|
515
539
|
requestData,
|
|
516
540
|
requestData,
|
|
517
541
|
responses.nestedTypeQuerySet.initial,
|
|
@@ -527,10 +551,10 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
527
551
|
data,
|
|
528
552
|
});
|
|
529
553
|
|
|
530
|
-
responseData = await cacheManager.
|
|
554
|
+
responseData = await cacheManager.cacheQuery(
|
|
531
555
|
getRequestData(parsedRequests.nestedTypeQuerySet.full),
|
|
532
556
|
getRequestData(parsedRequests.nestedTypeQuerySet.updated),
|
|
533
|
-
responses.nestedTypeQuerySet.updated,
|
|
557
|
+
responses.nestedTypeQuerySet.updated as RawResponseDataWithMaybeCacheMetadata,
|
|
534
558
|
{ awaitDataCaching: true },
|
|
535
559
|
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.nestedTypeQuery, queryFiltered: true }),
|
|
536
560
|
);
|
|
@@ -547,10 +571,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
547
571
|
|
|
548
572
|
describe("type cache directives >>", () => {
|
|
549
573
|
beforeAll(async () => {
|
|
574
|
+
responseData = undefined;
|
|
550
575
|
// @ts-ignore
|
|
551
576
|
jest.spyOn(CacheManager, "_isValid").mockReturnValue(true);
|
|
552
577
|
|
|
553
|
-
cacheManager =
|
|
578
|
+
cacheManager = new CacheManager({
|
|
554
579
|
cache: new Cachemap({
|
|
555
580
|
name: "cachemap",
|
|
556
581
|
store: map(),
|
|
@@ -567,7 +592,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
567
592
|
|
|
568
593
|
requestData = getRequestData(parsedRequests.nestedTypeQuerySet.initial);
|
|
569
594
|
|
|
570
|
-
|
|
595
|
+
await cacheManager.cacheQuery(
|
|
571
596
|
requestData,
|
|
572
597
|
requestData,
|
|
573
598
|
responses.nestedTypeQuerySet.initial,
|
|
@@ -583,10 +608,10 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
583
608
|
data,
|
|
584
609
|
});
|
|
585
610
|
|
|
586
|
-
responseData = await cacheManager.
|
|
611
|
+
responseData = await cacheManager.cacheQuery(
|
|
587
612
|
getRequestData(parsedRequests.nestedTypeQuerySet.full),
|
|
588
613
|
getRequestData(parsedRequests.nestedTypeQuerySet.updated),
|
|
589
|
-
responses.nestedTypeQuerySet.updated,
|
|
614
|
+
responses.nestedTypeQuerySet.updated as RawResponseDataWithMaybeCacheMetadata,
|
|
590
615
|
{ awaitDataCaching: true },
|
|
591
616
|
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.nestedTypeQuery, queryFiltered: true }),
|
|
592
617
|
);
|
|
@@ -605,10 +630,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
605
630
|
describe("nested union with edges >>", () => {
|
|
606
631
|
describe("cascading cache control >>", () => {
|
|
607
632
|
beforeAll(async () => {
|
|
633
|
+
responseData = undefined;
|
|
608
634
|
// @ts-ignore
|
|
609
635
|
jest.spyOn(CacheManager, "_isValid").mockReturnValue(true);
|
|
610
636
|
|
|
611
|
-
cacheManager =
|
|
637
|
+
cacheManager = new CacheManager({
|
|
612
638
|
cache: new Cachemap({
|
|
613
639
|
name: "cachemap",
|
|
614
640
|
store: map(),
|
|
@@ -620,7 +646,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
620
646
|
|
|
621
647
|
requestData = getRequestData(parsedRequests.nestedUnionQuerySet.initial);
|
|
622
648
|
|
|
623
|
-
|
|
649
|
+
await cacheManager.cacheQuery(
|
|
624
650
|
requestData,
|
|
625
651
|
requestData,
|
|
626
652
|
responses.nestedUnionQuerySet.initial,
|
|
@@ -636,10 +662,10 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
636
662
|
data,
|
|
637
663
|
});
|
|
638
664
|
|
|
639
|
-
responseData = await cacheManager.
|
|
665
|
+
responseData = await cacheManager.cacheQuery(
|
|
640
666
|
getRequestData(parsedRequests.nestedUnionQuerySet.full),
|
|
641
667
|
getRequestData(parsedRequests.nestedUnionQuerySet.updated),
|
|
642
|
-
responses.nestedUnionQuerySet.updated,
|
|
668
|
+
responses.nestedUnionQuerySet.updated as RawResponseDataWithMaybeCacheMetadata,
|
|
643
669
|
{ awaitDataCaching: true },
|
|
644
670
|
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.nestedUnionQuery, queryFiltered: true }),
|
|
645
671
|
);
|
|
@@ -656,10 +682,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
656
682
|
|
|
657
683
|
describe("type cache directives >>", () => {
|
|
658
684
|
beforeAll(async () => {
|
|
685
|
+
responseData = undefined;
|
|
659
686
|
// @ts-ignore
|
|
660
687
|
jest.spyOn(CacheManager, "_isValid").mockReturnValue(true);
|
|
661
688
|
|
|
662
|
-
cacheManager =
|
|
689
|
+
cacheManager = new CacheManager({
|
|
663
690
|
cache: new Cachemap({
|
|
664
691
|
name: "cachemap",
|
|
665
692
|
store: map(),
|
|
@@ -674,7 +701,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
674
701
|
|
|
675
702
|
requestData = getRequestData(parsedRequests.nestedUnionQuerySet.initial);
|
|
676
703
|
|
|
677
|
-
|
|
704
|
+
await cacheManager.cacheQuery(
|
|
678
705
|
requestData,
|
|
679
706
|
requestData,
|
|
680
707
|
responses.nestedUnionQuerySet.initial,
|
|
@@ -690,10 +717,10 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
690
717
|
data,
|
|
691
718
|
});
|
|
692
719
|
|
|
693
|
-
responseData = await cacheManager.
|
|
720
|
+
responseData = await cacheManager.cacheQuery(
|
|
694
721
|
getRequestData(parsedRequests.nestedUnionQuerySet.full),
|
|
695
722
|
getRequestData(parsedRequests.nestedUnionQuerySet.updated),
|
|
696
|
-
responses.nestedUnionQuerySet.updated,
|
|
723
|
+
responses.nestedUnionQuerySet.updated as RawResponseDataWithMaybeCacheMetadata,
|
|
697
724
|
{ awaitDataCaching: true },
|
|
698
725
|
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.nestedUnionQuery, queryFiltered: true }),
|
|
699
726
|
);
|
|
@@ -711,11 +738,13 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
711
738
|
|
|
712
739
|
describe("defer >>", () => {
|
|
713
740
|
describe("cascading cache control >>", () => {
|
|
741
|
+
const responseDataSet: ResponseData[] = [];
|
|
742
|
+
|
|
714
743
|
beforeAll(async () => {
|
|
715
744
|
// @ts-ignore
|
|
716
745
|
jest.spyOn(CacheManager, "_isValid").mockReturnValue(true);
|
|
717
746
|
|
|
718
|
-
cacheManager =
|
|
747
|
+
cacheManager = new CacheManager({
|
|
719
748
|
cache: new Cachemap({
|
|
720
749
|
name: "cachemap",
|
|
721
750
|
store: map(),
|
|
@@ -727,12 +756,12 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
727
756
|
|
|
728
757
|
requestData = getRequestData(parsedRequests.deferQuerySet.initial);
|
|
729
758
|
|
|
730
|
-
|
|
759
|
+
await cacheManager.cacheQuery(
|
|
731
760
|
requestData,
|
|
732
761
|
requestData,
|
|
733
762
|
responses.deferQuerySet.initial,
|
|
734
763
|
{ awaitDataCaching: true },
|
|
735
|
-
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.deferQuery }),
|
|
764
|
+
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.deferQuery, hasDeferOrStream: true }),
|
|
736
765
|
);
|
|
737
766
|
|
|
738
767
|
const { cacheMetadata, data } = responses.deferQuerySet.partial;
|
|
@@ -743,17 +772,34 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
743
772
|
data,
|
|
744
773
|
});
|
|
745
774
|
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
775
|
+
await new Promise((resolve: (value: void) => void) => {
|
|
776
|
+
const updateResponses = [...(responses.deferQuerySet.updated as RawResponseDataWithMaybeCacheMetadata[])];
|
|
777
|
+
|
|
778
|
+
const interval = setInterval(async () => {
|
|
779
|
+
const result = await cacheManager.cacheQuery(
|
|
780
|
+
getRequestData(parsedRequests.deferQuerySet.full),
|
|
781
|
+
getRequestData(parsedRequests.deferQuerySet.updated),
|
|
782
|
+
updateResponses.shift() as RawResponseDataWithMaybeCacheMetadata,
|
|
783
|
+
{ awaitDataCaching: true },
|
|
784
|
+
getRequestContext({
|
|
785
|
+
fieldTypeMap: requestFieldTypeMaps.deferQuery,
|
|
786
|
+
hasDeferOrStream: true,
|
|
787
|
+
queryFiltered: true,
|
|
788
|
+
}),
|
|
789
|
+
);
|
|
790
|
+
|
|
791
|
+
responseDataSet.push(result);
|
|
792
|
+
|
|
793
|
+
if (!updateResponses.length) {
|
|
794
|
+
clearInterval(interval);
|
|
795
|
+
resolve();
|
|
796
|
+
}
|
|
797
|
+
}, 50);
|
|
798
|
+
});
|
|
753
799
|
});
|
|
754
800
|
|
|
755
801
|
it("correct response data", () => {
|
|
756
|
-
expect(
|
|
802
|
+
expect(responseDataSet).toMatchSnapshot();
|
|
757
803
|
});
|
|
758
804
|
|
|
759
805
|
it("correct cache data", async () => {
|
|
@@ -765,12 +811,14 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
765
811
|
});
|
|
766
812
|
|
|
767
813
|
describe("analyzeQuery >>", () => {
|
|
768
|
-
let analyzeQueryResult: AnalyzeQueryResult;
|
|
814
|
+
let analyzeQueryResult: AnalyzeQueryResult | undefined;
|
|
769
815
|
|
|
770
816
|
describe("no matching data >>", () => {
|
|
771
817
|
describe("single type >>", () => {
|
|
772
818
|
beforeAll(async () => {
|
|
773
|
-
|
|
819
|
+
analyzeQueryResult = undefined;
|
|
820
|
+
|
|
821
|
+
cacheManager = new CacheManager({
|
|
774
822
|
cache: new Cachemap({
|
|
775
823
|
name: "cachemap",
|
|
776
824
|
store: map(),
|
|
@@ -787,18 +835,20 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
787
835
|
});
|
|
788
836
|
|
|
789
837
|
it("correct request data", () => {
|
|
790
|
-
const { ast, ...otherProps } = analyzeQueryResult
|
|
838
|
+
const { ast, ...otherProps } = analyzeQueryResult?.updated as RequestData;
|
|
791
839
|
expect(otherProps).toMatchSnapshot();
|
|
792
840
|
});
|
|
793
841
|
|
|
794
842
|
it("no response data", () => {
|
|
795
|
-
expect(analyzeQueryResult
|
|
843
|
+
expect(analyzeQueryResult?.response).toBeUndefined();
|
|
796
844
|
});
|
|
797
845
|
});
|
|
798
846
|
|
|
799
847
|
describe("nested type with edges >>", () => {
|
|
800
848
|
beforeAll(async () => {
|
|
801
|
-
|
|
849
|
+
analyzeQueryResult = undefined;
|
|
850
|
+
|
|
851
|
+
cacheManager = new CacheManager({
|
|
802
852
|
cache: new Cachemap({
|
|
803
853
|
name: "cachemap",
|
|
804
854
|
store: map(),
|
|
@@ -815,18 +865,20 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
815
865
|
});
|
|
816
866
|
|
|
817
867
|
it("correct request data", () => {
|
|
818
|
-
const { ast, ...otherProps } = analyzeQueryResult
|
|
868
|
+
const { ast, ...otherProps } = analyzeQueryResult?.updated as RequestData;
|
|
819
869
|
expect(otherProps).toMatchSnapshot();
|
|
820
870
|
});
|
|
821
871
|
|
|
822
872
|
it("no response data", () => {
|
|
823
|
-
expect(analyzeQueryResult
|
|
873
|
+
expect(analyzeQueryResult?.response).toBeUndefined();
|
|
824
874
|
});
|
|
825
875
|
});
|
|
826
876
|
|
|
827
877
|
describe("nested union with edges >>", () => {
|
|
828
878
|
beforeAll(async () => {
|
|
829
|
-
|
|
879
|
+
analyzeQueryResult = undefined;
|
|
880
|
+
|
|
881
|
+
cacheManager = new CacheManager({
|
|
830
882
|
cache: new Cachemap({
|
|
831
883
|
name: "cachemap",
|
|
832
884
|
store: map(),
|
|
@@ -843,18 +895,20 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
843
895
|
});
|
|
844
896
|
|
|
845
897
|
it("correct request data", () => {
|
|
846
|
-
const { ast, ...otherProps } = analyzeQueryResult
|
|
898
|
+
const { ast, ...otherProps } = analyzeQueryResult?.updated as RequestData;
|
|
847
899
|
expect(otherProps).toMatchSnapshot();
|
|
848
900
|
});
|
|
849
901
|
|
|
850
902
|
it("no response data", () => {
|
|
851
|
-
expect(analyzeQueryResult
|
|
903
|
+
expect(analyzeQueryResult?.response).toBeUndefined();
|
|
852
904
|
});
|
|
853
905
|
});
|
|
854
906
|
|
|
855
907
|
describe("defer >>", () => {
|
|
856
908
|
beforeAll(async () => {
|
|
857
|
-
|
|
909
|
+
analyzeQueryResult = undefined;
|
|
910
|
+
|
|
911
|
+
cacheManager = new CacheManager({
|
|
858
912
|
cache: new Cachemap({
|
|
859
913
|
name: "cachemap",
|
|
860
914
|
store: map(),
|
|
@@ -866,17 +920,17 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
866
920
|
analyzeQueryResult = await cacheManager.analyzeQuery(
|
|
867
921
|
getRequestData(parsedRequests.deferQuery),
|
|
868
922
|
{ awaitDataCaching: true },
|
|
869
|
-
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.deferQuery }),
|
|
923
|
+
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.deferQuery, hasDeferOrStream: true }),
|
|
870
924
|
);
|
|
871
925
|
});
|
|
872
926
|
|
|
873
927
|
it("correct request data", () => {
|
|
874
|
-
const { ast, ...otherProps } = analyzeQueryResult
|
|
928
|
+
const { ast, ...otherProps } = analyzeQueryResult?.updated as RequestData;
|
|
875
929
|
expect(otherProps).toMatchSnapshot();
|
|
876
930
|
});
|
|
877
931
|
|
|
878
932
|
it("no response data", () => {
|
|
879
|
-
expect(analyzeQueryResult
|
|
933
|
+
expect(analyzeQueryResult?.response).toBeUndefined();
|
|
880
934
|
});
|
|
881
935
|
});
|
|
882
936
|
});
|
|
@@ -884,10 +938,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
884
938
|
describe("entire matching data >>", () => {
|
|
885
939
|
describe("single type >>", () => {
|
|
886
940
|
beforeAll(async () => {
|
|
941
|
+
analyzeQueryResult = undefined;
|
|
887
942
|
// @ts-ignore
|
|
888
943
|
jest.spyOn(CacheManager, "_isValid").mockReturnValue(true);
|
|
889
944
|
|
|
890
|
-
cacheManager =
|
|
945
|
+
cacheManager = new CacheManager({
|
|
891
946
|
cache: new Cachemap({
|
|
892
947
|
name: "cachemap",
|
|
893
948
|
store: map(),
|
|
@@ -901,7 +956,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
901
956
|
|
|
902
957
|
const requestData = getRequestData(parsedRequests.singleTypeQuery);
|
|
903
958
|
|
|
904
|
-
await cacheManager.
|
|
959
|
+
await cacheManager.cacheQuery(
|
|
905
960
|
requestData,
|
|
906
961
|
requestData,
|
|
907
962
|
responses.singleTypeQuery,
|
|
@@ -917,11 +972,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
917
972
|
});
|
|
918
973
|
|
|
919
974
|
it("no request data", () => {
|
|
920
|
-
expect(analyzeQueryResult
|
|
975
|
+
expect(analyzeQueryResult?.updated).toBeUndefined();
|
|
921
976
|
});
|
|
922
977
|
|
|
923
978
|
it("correct response data", () => {
|
|
924
|
-
expect(analyzeQueryResult
|
|
979
|
+
expect(analyzeQueryResult?.response).toMatchSnapshot();
|
|
925
980
|
});
|
|
926
981
|
|
|
927
982
|
it("correct cache data", async () => {
|
|
@@ -931,10 +986,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
931
986
|
|
|
932
987
|
describe("nested type with edges >>", () => {
|
|
933
988
|
beforeAll(async () => {
|
|
989
|
+
analyzeQueryResult = undefined;
|
|
934
990
|
// @ts-ignore
|
|
935
991
|
jest.spyOn(CacheManager, "_isValid").mockReturnValue(true);
|
|
936
992
|
|
|
937
|
-
cacheManager =
|
|
993
|
+
cacheManager = new CacheManager({
|
|
938
994
|
cache: new Cachemap({
|
|
939
995
|
name: "cachemap",
|
|
940
996
|
store: map(),
|
|
@@ -951,7 +1007,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
951
1007
|
|
|
952
1008
|
const requestData = getRequestData(parsedRequests.nestedTypeQuery);
|
|
953
1009
|
|
|
954
|
-
await cacheManager.
|
|
1010
|
+
await cacheManager.cacheQuery(
|
|
955
1011
|
requestData,
|
|
956
1012
|
requestData,
|
|
957
1013
|
responses.nestedTypeQuery,
|
|
@@ -967,11 +1023,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
967
1023
|
});
|
|
968
1024
|
|
|
969
1025
|
it("no request data", () => {
|
|
970
|
-
expect(analyzeQueryResult
|
|
1026
|
+
expect(analyzeQueryResult?.updated).toBeUndefined();
|
|
971
1027
|
});
|
|
972
1028
|
|
|
973
1029
|
it("correct response data", () => {
|
|
974
|
-
expect(analyzeQueryResult
|
|
1030
|
+
expect(analyzeQueryResult?.response).toMatchSnapshot();
|
|
975
1031
|
});
|
|
976
1032
|
|
|
977
1033
|
it("correct cache data", async () => {
|
|
@@ -981,10 +1037,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
981
1037
|
|
|
982
1038
|
describe("nested union with edges >>", () => {
|
|
983
1039
|
beforeAll(async () => {
|
|
1040
|
+
analyzeQueryResult = undefined;
|
|
984
1041
|
// @ts-ignore
|
|
985
1042
|
jest.spyOn(CacheManager, "_isValid").mockReturnValue(true);
|
|
986
1043
|
|
|
987
|
-
cacheManager =
|
|
1044
|
+
cacheManager = new CacheManager({
|
|
988
1045
|
cache: new Cachemap({
|
|
989
1046
|
name: "cachemap",
|
|
990
1047
|
store: map(),
|
|
@@ -999,7 +1056,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
999
1056
|
|
|
1000
1057
|
const requestData = getRequestData(parsedRequests.nestedUnionQuery);
|
|
1001
1058
|
|
|
1002
|
-
await cacheManager.
|
|
1059
|
+
await cacheManager.cacheQuery(
|
|
1003
1060
|
requestData,
|
|
1004
1061
|
requestData,
|
|
1005
1062
|
responses.nestedUnionQuery,
|
|
@@ -1015,11 +1072,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
1015
1072
|
});
|
|
1016
1073
|
|
|
1017
1074
|
it("no request data", () => {
|
|
1018
|
-
expect(analyzeQueryResult
|
|
1075
|
+
expect(analyzeQueryResult?.updated).toBeUndefined();
|
|
1019
1076
|
});
|
|
1020
1077
|
|
|
1021
1078
|
it("correct response data", () => {
|
|
1022
|
-
expect(analyzeQueryResult
|
|
1079
|
+
expect(analyzeQueryResult?.response).toMatchSnapshot();
|
|
1023
1080
|
});
|
|
1024
1081
|
|
|
1025
1082
|
it("correct cache data", async () => {
|
|
@@ -1029,10 +1086,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
1029
1086
|
|
|
1030
1087
|
describe("defer >>", () => {
|
|
1031
1088
|
beforeAll(async () => {
|
|
1089
|
+
analyzeQueryResult = undefined;
|
|
1032
1090
|
// @ts-ignore
|
|
1033
1091
|
jest.spyOn(CacheManager, "_isValid").mockReturnValue(true);
|
|
1034
1092
|
|
|
1035
|
-
cacheManager =
|
|
1093
|
+
cacheManager = new CacheManager({
|
|
1036
1094
|
cache: new Cachemap({
|
|
1037
1095
|
name: "cachemap",
|
|
1038
1096
|
store: map(),
|
|
@@ -1042,29 +1100,43 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
1042
1100
|
typeIDKey: DEFAULT_TYPE_ID_KEY,
|
|
1043
1101
|
});
|
|
1044
1102
|
|
|
1045
|
-
const requestData = getRequestData(parsedRequests.
|
|
1046
|
-
|
|
1047
|
-
await
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1103
|
+
const requestData = getRequestData(parsedRequests.deferQuerySet.updated);
|
|
1104
|
+
|
|
1105
|
+
await new Promise((resolve: (value: void) => void) => {
|
|
1106
|
+
const updateResponses = [...(responses.deferQuerySet.updated as RawResponseDataWithMaybeCacheMetadata[])];
|
|
1107
|
+
|
|
1108
|
+
const interval = setInterval(async () => {
|
|
1109
|
+
await cacheManager.cacheQuery(
|
|
1110
|
+
requestData,
|
|
1111
|
+
requestData,
|
|
1112
|
+
updateResponses.shift() as RawResponseDataWithMaybeCacheMetadata,
|
|
1113
|
+
{ awaitDataCaching: true },
|
|
1114
|
+
getRequestContext({
|
|
1115
|
+
fieldTypeMap: requestFieldTypeMaps.deferQuery,
|
|
1116
|
+
hasDeferOrStream: true,
|
|
1117
|
+
}),
|
|
1118
|
+
);
|
|
1119
|
+
|
|
1120
|
+
if (!updateResponses.length) {
|
|
1121
|
+
clearInterval(interval);
|
|
1122
|
+
resolve();
|
|
1123
|
+
}
|
|
1124
|
+
}, 50);
|
|
1125
|
+
});
|
|
1054
1126
|
|
|
1055
1127
|
analyzeQueryResult = await cacheManager.analyzeQuery(
|
|
1056
|
-
|
|
1128
|
+
requestData,
|
|
1057
1129
|
{ awaitDataCaching: true },
|
|
1058
|
-
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.deferQuery }),
|
|
1130
|
+
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.deferQuery, hasDeferOrStream: true }),
|
|
1059
1131
|
);
|
|
1060
1132
|
});
|
|
1061
1133
|
|
|
1062
1134
|
it("no request data", () => {
|
|
1063
|
-
expect(analyzeQueryResult
|
|
1135
|
+
expect(analyzeQueryResult?.updated).toBeUndefined();
|
|
1064
1136
|
});
|
|
1065
1137
|
|
|
1066
1138
|
it("correct response data", () => {
|
|
1067
|
-
expect(analyzeQueryResult
|
|
1139
|
+
expect(analyzeQueryResult?.response).toMatchSnapshot();
|
|
1068
1140
|
});
|
|
1069
1141
|
|
|
1070
1142
|
it("correct cache data", async () => {
|
|
@@ -1076,10 +1148,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
1076
1148
|
describe("some matching data >>", () => {
|
|
1077
1149
|
describe("single type >>", () => {
|
|
1078
1150
|
beforeAll(async () => {
|
|
1151
|
+
analyzeQueryResult = undefined;
|
|
1079
1152
|
// @ts-ignore
|
|
1080
1153
|
jest.spyOn(CacheManager, "_isValid").mockReturnValue(true);
|
|
1081
1154
|
|
|
1082
|
-
cacheManager =
|
|
1155
|
+
cacheManager = new CacheManager({
|
|
1083
1156
|
cache: new Cachemap({
|
|
1084
1157
|
name: "cachemap",
|
|
1085
1158
|
store: map(),
|
|
@@ -1093,7 +1166,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
1093
1166
|
|
|
1094
1167
|
const requestData = getRequestData(parsedRequests.singleTypeQuerySet.initial);
|
|
1095
1168
|
|
|
1096
|
-
await cacheManager.
|
|
1169
|
+
await cacheManager.cacheQuery(
|
|
1097
1170
|
requestData,
|
|
1098
1171
|
requestData,
|
|
1099
1172
|
responses.singleTypeQuerySet.initial,
|
|
@@ -1109,12 +1182,12 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
1109
1182
|
});
|
|
1110
1183
|
|
|
1111
1184
|
it("correct request data", () => {
|
|
1112
|
-
const { ast, ...otherProps } = analyzeQueryResult
|
|
1185
|
+
const { ast, ...otherProps } = analyzeQueryResult?.updated as RequestData;
|
|
1113
1186
|
expect(otherProps).toMatchSnapshot();
|
|
1114
1187
|
});
|
|
1115
1188
|
|
|
1116
1189
|
it("no response data", () => {
|
|
1117
|
-
expect(analyzeQueryResult
|
|
1190
|
+
expect(analyzeQueryResult?.response).toBeUndefined();
|
|
1118
1191
|
});
|
|
1119
1192
|
|
|
1120
1193
|
it("correct cache data", async () => {
|
|
@@ -1129,10 +1202,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
1129
1202
|
|
|
1130
1203
|
describe("nested type with edges >", () => {
|
|
1131
1204
|
beforeAll(async () => {
|
|
1205
|
+
analyzeQueryResult = undefined;
|
|
1132
1206
|
// @ts-ignore
|
|
1133
1207
|
jest.spyOn(CacheManager, "_isValid").mockReturnValue(true);
|
|
1134
1208
|
|
|
1135
|
-
cacheManager =
|
|
1209
|
+
cacheManager = new CacheManager({
|
|
1136
1210
|
cache: new Cachemap({
|
|
1137
1211
|
name: "cachemap",
|
|
1138
1212
|
store: map(),
|
|
@@ -1149,7 +1223,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
1149
1223
|
|
|
1150
1224
|
const requestData = getRequestData(parsedRequests.nestedTypeQuerySet.initial);
|
|
1151
1225
|
|
|
1152
|
-
await cacheManager.
|
|
1226
|
+
await cacheManager.cacheQuery(
|
|
1153
1227
|
requestData,
|
|
1154
1228
|
requestData,
|
|
1155
1229
|
responses.nestedTypeQuerySet.initial,
|
|
@@ -1165,12 +1239,12 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
1165
1239
|
});
|
|
1166
1240
|
|
|
1167
1241
|
it("correct request data", () => {
|
|
1168
|
-
const { ast, ...otherProps } = analyzeQueryResult
|
|
1242
|
+
const { ast, ...otherProps } = analyzeQueryResult?.updated as RequestData;
|
|
1169
1243
|
expect(otherProps).toMatchSnapshot();
|
|
1170
1244
|
});
|
|
1171
1245
|
|
|
1172
1246
|
it("no response data", () => {
|
|
1173
|
-
expect(analyzeQueryResult
|
|
1247
|
+
expect(analyzeQueryResult?.response).toBeUndefined();
|
|
1174
1248
|
});
|
|
1175
1249
|
|
|
1176
1250
|
it("correct cache data", async () => {
|
|
@@ -1185,10 +1259,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
1185
1259
|
|
|
1186
1260
|
describe("nested union with edges >>", () => {
|
|
1187
1261
|
beforeAll(async () => {
|
|
1262
|
+
analyzeQueryResult = undefined;
|
|
1188
1263
|
// @ts-ignore
|
|
1189
1264
|
jest.spyOn(CacheManager, "_isValid").mockReturnValue(true);
|
|
1190
1265
|
|
|
1191
|
-
cacheManager =
|
|
1266
|
+
cacheManager = new CacheManager({
|
|
1192
1267
|
cache: new Cachemap({
|
|
1193
1268
|
name: "cachemap",
|
|
1194
1269
|
store: map(),
|
|
@@ -1203,7 +1278,7 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
1203
1278
|
|
|
1204
1279
|
const requestData = getRequestData(parsedRequests.nestedUnionQuerySet.initial);
|
|
1205
1280
|
|
|
1206
|
-
await cacheManager.
|
|
1281
|
+
await cacheManager.cacheQuery(
|
|
1207
1282
|
requestData,
|
|
1208
1283
|
requestData,
|
|
1209
1284
|
responses.nestedUnionQuerySet.initial,
|
|
@@ -1219,12 +1294,12 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
1219
1294
|
});
|
|
1220
1295
|
|
|
1221
1296
|
it("correct request data", () => {
|
|
1222
|
-
const { ast, ...otherProps } = analyzeQueryResult
|
|
1297
|
+
const { ast, ...otherProps } = analyzeQueryResult?.updated as RequestData;
|
|
1223
1298
|
expect(otherProps).toMatchSnapshot();
|
|
1224
1299
|
});
|
|
1225
1300
|
|
|
1226
1301
|
it("no response data", () => {
|
|
1227
|
-
expect(analyzeQueryResult
|
|
1302
|
+
expect(analyzeQueryResult?.response).toBeUndefined();
|
|
1228
1303
|
});
|
|
1229
1304
|
|
|
1230
1305
|
it("correct cache data", async () => {
|
|
@@ -1239,10 +1314,11 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
1239
1314
|
|
|
1240
1315
|
describe("defer >>", () => {
|
|
1241
1316
|
beforeAll(async () => {
|
|
1317
|
+
analyzeQueryResult = undefined;
|
|
1242
1318
|
// @ts-ignore
|
|
1243
1319
|
jest.spyOn(CacheManager, "_isValid").mockReturnValue(true);
|
|
1244
1320
|
|
|
1245
|
-
cacheManager =
|
|
1321
|
+
cacheManager = new CacheManager({
|
|
1246
1322
|
cache: new Cachemap({
|
|
1247
1323
|
name: "cachemap",
|
|
1248
1324
|
store: map(),
|
|
@@ -1254,28 +1330,28 @@ describe("@graphql-box/cache-manager >>", () => {
|
|
|
1254
1330
|
|
|
1255
1331
|
const requestData = getRequestData(parsedRequests.deferQuerySet.initial);
|
|
1256
1332
|
|
|
1257
|
-
await cacheManager.
|
|
1333
|
+
await cacheManager.cacheQuery(
|
|
1258
1334
|
requestData,
|
|
1259
1335
|
requestData,
|
|
1260
1336
|
responses.deferQuerySet.initial,
|
|
1261
1337
|
{ awaitDataCaching: true },
|
|
1262
|
-
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.deferQuery }),
|
|
1338
|
+
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.deferQuery, hasDeferOrStream: true }),
|
|
1263
1339
|
);
|
|
1264
1340
|
|
|
1265
1341
|
analyzeQueryResult = await cacheManager.analyzeQuery(
|
|
1266
1342
|
getRequestData(parsedRequests.deferQuery),
|
|
1267
1343
|
{ awaitDataCaching: true },
|
|
1268
|
-
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.deferQuery }),
|
|
1344
|
+
getRequestContext({ fieldTypeMap: requestFieldTypeMaps.deferQuery, hasDeferOrStream: true }),
|
|
1269
1345
|
);
|
|
1270
1346
|
});
|
|
1271
1347
|
|
|
1272
1348
|
it("correct request data", () => {
|
|
1273
|
-
const { ast, ...otherProps } = analyzeQueryResult
|
|
1349
|
+
const { ast, ...otherProps } = analyzeQueryResult?.updated as RequestData;
|
|
1274
1350
|
expect(otherProps).toMatchSnapshot();
|
|
1275
1351
|
});
|
|
1276
1352
|
|
|
1277
1353
|
it("no response data", () => {
|
|
1278
|
-
expect(analyzeQueryResult
|
|
1354
|
+
expect(analyzeQueryResult?.response).toBeUndefined();
|
|
1279
1355
|
});
|
|
1280
1356
|
|
|
1281
1357
|
it("correct cache data", async () => {
|