@@ -165,9 +165,9 @@ describe('SubscriptionCallbackPlugin', () => {
165
165
"SubscriptionCallback[1234-cats]: Received new subscription request",
166
166
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
167
167
"SubscriptionManager[1234-cats]: \`check\` request successful",
168
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
168
169
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
169
170
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
170
- "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
171
171
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
172
172
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
173
173
"SubscriptionManager: Sending \`check\` request to http://mock-router-url.com for ID: 1234-cats",
@@ -274,9 +274,9 @@ describe('SubscriptionCallbackPlugin', () => {
274
274
"SubscriptionCallback[1234-cats]: Received new subscription request",
275
275
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
276
276
"SubscriptionManager[1234-cats]: \`check\` request successful",
277
+ "SubscriptionManager[1234-cats]: Heartbeat disabled for http://mock-router-url.com",
277
278
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
278
279
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
279
- "SubscriptionManager[1234-cats]: Heartbeat disabled for http://mock-router-url.com",
280
280
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
281
281
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
282
282
"TESTING: Triggering first update",
@@ -387,9 +387,9 @@ describe('SubscriptionCallbackPlugin', () => {
387
387
"SubscriptionCallback[1234-cats]: Received new subscription request",
388
388
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
389
389
"SubscriptionManager[1234-cats]: \`check\` request successful",
390
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
390
391
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
391
392
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
392
- "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
393
393
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
394
394
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
395
395
"SubscriptionManager: Sending \`check\` request to http://mock-router-url.com for ID: 1234-cats",
@@ -505,9 +505,9 @@ describe('SubscriptionCallbackPlugin', () => {
505
505
"SubscriptionCallback[1234-cats]: Received new subscription request",
506
506
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
507
507
"SubscriptionManager[1234-cats]: \`check\` request successful",
508
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
508
509
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
509
510
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
510
- "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
511
511
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
512
512
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
513
513
"SubscriptionManager: Sending \`check\` request to http://mock-router-url.com for ID: 1234-cats",
@@ -653,17 +653,17 @@ describe('SubscriptionCallbackPlugin', () => {
653
653
"SubscriptionCallback[1234-cats]: Received new subscription request",
654
654
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
655
655
"SubscriptionManager[1234-cats]: \`check\` request successful",
656
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
656
657
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
657
658
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
658
- "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
659
659
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
660
660
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
661
661
"SubscriptionCallback[5678-dogs]: Received new subscription request",
662
662
"SubscriptionManager[5678-dogs]: Sending \`check\` request to router",
663
663
"SubscriptionManager[5678-dogs]: \`check\` request successful",
664
+ "SubscriptionManager[5678-dogs]: Starting new heartbeat interval for http://mock-router-url-2.com",
664
665
"SubscriptionCallback[5678-dogs]: Starting graphql-js subscription",
665
666
"SubscriptionCallback[5678-dogs]: graphql-js subscription successful",
666
- "SubscriptionManager[5678-dogs]: Starting new heartbeat interval for http://mock-router-url-2.com",
667
667
"SubscriptionManager[5678-dogs]: Listening to graphql-js subscription",
668
668
"SubscriptionCallback[5678-dogs]: Responding to original subscription request",
669
669
"SubscriptionManager: Sending \`check\` request to http://mock-router-url.com for ID: 1234-cats",
@@ -850,17 +850,17 @@ describe('SubscriptionCallbackPlugin', () => {
850
850
"SubscriptionCallback[1234-cats]: Received new subscription request",
851
851
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
852
852
"SubscriptionManager[1234-cats]: \`check\` request successful",
853
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
853
854
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
854
855
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
855
- "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
856
856
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
857
857
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
858
858
"SubscriptionCallback[5678-dogs]: Received new subscription request",
859
859
"SubscriptionManager[5678-dogs]: Sending \`check\` request to router",
860
860
"SubscriptionManager[5678-dogs]: \`check\` request successful",
861
+ "SubscriptionManager[5678-dogs]: Starting new heartbeat interval for http://mock-router-url.com/5678-dogs",
861
862
"SubscriptionCallback[5678-dogs]: Starting graphql-js subscription",
862
863
"SubscriptionCallback[5678-dogs]: graphql-js subscription successful",
863
- "SubscriptionManager[5678-dogs]: Starting new heartbeat interval for http://mock-router-url.com/5678-dogs",
864
864
"SubscriptionManager[5678-dogs]: Listening to graphql-js subscription",
865
865
"SubscriptionCallback[5678-dogs]: Responding to original subscription request",
866
866
"SubscriptionManager: Sending \`check\` request to http://mock-router-url.com for ID: 1234-cats",
@@ -1003,9 +1003,9 @@ describe('SubscriptionCallbackPlugin', () => {
1003
1003
"SubscriptionCallback[1234-cats]: Received new subscription request",
1004
1004
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
1005
1005
"SubscriptionManager[1234-cats]: \`check\` request successful",
1006
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1006
1007
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
1007
1008
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
1008
- "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1009
1009
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
1010
1010
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
1011
1011
"SubscriptionManager: Sending \`check\` request to http://mock-router-url.com for ID: 1234-cats",
@@ -1084,9 +1084,9 @@ describe('SubscriptionCallbackPlugin', () => {
1084
1084
"SubscriptionCallback[1234-cats]: Received new subscription request",
1085
1085
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
1086
1086
"SubscriptionManager[1234-cats]: \`check\` request successful",
1087
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1087
1088
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
1088
1089
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
1089
- "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1090
1090
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
1091
1091
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
1092
1092
"SubscriptionManager[1234-cats]: Sending \`next\` request to router",
@@ -1139,9 +1139,9 @@ describe('SubscriptionCallbackPlugin', () => {
1139
1139
"SubscriptionCallback[1234-cats]: Received new subscription request",
1140
1140
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
1141
1141
"SubscriptionManager[1234-cats]: \`check\` request successful",
1142
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1142
1143
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
1143
1144
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
1144
- "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1145
1145
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
1146
1146
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
1147
1147
"ERROR: SubscriptionManager[1234-cats]: Generator threw an error, terminating subscription: The subscription generator didn't catch this!",
@@ -1274,9 +1274,11 @@ describe('SubscriptionCallbackPlugin', () => {
1274
1274
] ,
1275
1275
} ) ;
1276
1276
1277
- // Trigger the heartbeat interval just to make sure it doesn't actually
1278
- // happen in this case (we haven't mocked it, so it'll throw an error if it
1279
- // sends a heartbeat).
1277
+ // The heartbeat is initialized just before awaiting the subscription.
1278
+ // So in this case where the subscription throws, there will be one
1279
+ // heartbeat before the subscription is cleaned up.
1280
+ mockRouterCheckResponse ( ) ;
1281
+
1280
1282
jest . advanceTimersByTime ( 5000 ) ;
1281
1283
1282
1284
await completeRequest ;
@@ -1285,13 +1287,17 @@ describe('SubscriptionCallbackPlugin', () => {
1285
1287
[
1286
1288
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
1287
1289
"SubscriptionManager[1234-cats]: \`check\` request successful",
1290
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1288
1291
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
1289
1292
"ERROR: SubscriptionCallback[1234-cats]: graphql-js subscription unsuccessful: [
1290
1293
The subscription field "invalidSubscriptionField" is not defined.
1291
1294
]",
1292
1295
"SubscriptionManager[1234-cats]: Sending \`complete\` request to router with errors",
1293
1296
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
1297
+ "SubscriptionManager: Sending \`check\` request to http://mock-router-url.com for ID: 1234-cats",
1294
1298
"SubscriptionManager[1234-cats]: \`complete\` request successful",
1299
+ "SubscriptionManager: Heartbeat received response for ID: 1234-cats",
1300
+ "SubscriptionManager: Heartbeat request successful, ID: 1234-cats",
1295
1301
"SubscriptionCallback: Server is shutting down. Cleaning up outstanding subscriptions and heartbeat intervals",
1296
1302
"SubscriptionCallback: Successfully cleaned up outstanding subscriptions and heartbeat intervals.",
1297
1303
]
@@ -1353,9 +1359,9 @@ describe('SubscriptionCallbackPlugin', () => {
1353
1359
"SubscriptionCallback[1234-cats]: Received new subscription request",
1354
1360
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
1355
1361
"SubscriptionManager[1234-cats]: \`check\` request successful",
1362
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1356
1363
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
1357
1364
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
1358
- "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1359
1365
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
1360
1366
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
1361
1367
"SubscriptionManager: Sending \`check\` request to http://mock-router-url.com for ID: 1234-cats",
@@ -1433,9 +1439,9 @@ describe('SubscriptionCallbackPlugin', () => {
1433
1439
"SubscriptionCallback[1234-cats]: Received new subscription request",
1434
1440
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
1435
1441
"SubscriptionManager[1234-cats]: \`check\` request successful",
1442
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1436
1443
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
1437
1444
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
1438
- "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1439
1445
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
1440
1446
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
1441
1447
"SubscriptionManager: Sending \`check\` request to http://mock-router-url.com for ID: 1234-cats",
@@ -1543,9 +1549,9 @@ describe('SubscriptionCallbackPlugin', () => {
1543
1549
"WARN: SubscriptionManager[1234-cats]: Retrying \`check\` request (attempt 1) due to error: request to http://mock-router-url.com/ failed, reason: network request error",
1544
1550
"WARN: SubscriptionManager[1234-cats]: Retrying \`check\` request (attempt 2) due to error: request to http://mock-router-url.com/ failed, reason: network request error",
1545
1551
"SubscriptionManager[1234-cats]: \`check\` request successful",
1552
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1546
1553
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
1547
1554
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
1548
- "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1549
1555
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
1550
1556
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
1551
1557
"SubscriptionManager: Sending \`check\` request to http://mock-router-url.com for ID: 1234-cats",
@@ -1664,9 +1670,9 @@ describe('SubscriptionCallbackPlugin', () => {
1664
1670
"SubscriptionCallback[1234-cats]: Received new subscription request",
1665
1671
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
1666
1672
"SubscriptionManager[1234-cats]: \`check\` request successful",
1673
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1667
1674
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
1668
1675
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
1669
- "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1670
1676
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
1671
1677
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
1672
1678
"SubscriptionManager: Sending \`check\` request to http://mock-router-url.com for ID: 1234-cats",
@@ -1772,9 +1778,9 @@ describe('SubscriptionCallbackPlugin', () => {
1772
1778
"SubscriptionCallback[1234-cats]: Received new subscription request",
1773
1779
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
1774
1780
"SubscriptionManager[1234-cats]: \`check\` request successful",
1781
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1775
1782
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
1776
1783
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
1777
- "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1778
1784
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
1779
1785
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
1780
1786
"SubscriptionManager: Sending \`check\` request to http://mock-router-url.com for ID: 1234-cats",
@@ -1875,9 +1881,9 @@ describe('SubscriptionCallbackPlugin', () => {
1875
1881
"SubscriptionCallback[1234-cats]: Received new subscription request",
1876
1882
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
1877
1883
"SubscriptionManager[1234-cats]: \`check\` request successful",
1884
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1878
1885
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
1879
1886
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
1880
- "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1881
1887
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
1882
1888
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
1883
1889
"SubscriptionManager: Sending \`check\` request to http://mock-router-url.com for ID: 1234-cats",
@@ -1981,9 +1987,9 @@ describe('SubscriptionCallbackPlugin', () => {
1981
1987
"SubscriptionCallback[1234-cats]: Received new subscription request",
1982
1988
"SubscriptionManager[1234-cats]: Sending \`check\` request to router",
1983
1989
"SubscriptionManager[1234-cats]: \`check\` request successful",
1990
+ "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1984
1991
"SubscriptionCallback[1234-cats]: Starting graphql-js subscription",
1985
1992
"SubscriptionCallback[1234-cats]: graphql-js subscription successful",
1986
- "SubscriptionManager[1234-cats]: Starting new heartbeat interval for http://mock-router-url.com",
1987
1993
"SubscriptionManager[1234-cats]: Listening to graphql-js subscription",
1988
1994
"SubscriptionCallback[1234-cats]: Responding to original subscription request",
1989
1995
"SubscriptionManager: Sending \`check\` request to http://mock-router-url.com for ID: 1234-cats",
0 commit comments