@tellescope/sdk 1.210.0 → 1.211.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.
@@ -4283,13 +4283,17 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
4283
4283
  && ((_b = e.tags) === null || _b === void 0 ? void 0 : _b.includes('Source'))
4284
4284
  && ((_c = e.tags) === null || _c === void 0 ? void 0 : _c.includes('Fill'))
4285
4285
  && ((_d = e.tags) === null || _d === void 0 ? void 0 : _d.includes('Status Update')));
4286
- } })];
4286
+ } })
4287
+ // duplicate updates get rate limited, so we need to make each update unique
4288
+ ];
4287
4289
  case 26:
4288
4290
  _a.sent();
4291
+ // duplicate updates get rate limited, so we need to make each update unique
4289
4292
  return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle' })];
4290
4293
  case 27:
4294
+ // duplicate updates get rate limited, so we need to make each update unique
4291
4295
  _a.sent();
4292
- return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", fill: 'Update' })];
4296
+ return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", fill: 'Update', externalId: 'avoid rate limiting' })];
4293
4297
  case 28:
4294
4298
  _a.sent();
4295
4299
  return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
@@ -4305,10 +4309,10 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
4305
4309
  } })];
4306
4310
  case 30:
4307
4311
  _a.sent();
4308
- return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle' })];
4312
+ return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle', externalId: "also avoid rate limit 1" })];
4309
4313
  case 31:
4310
4314
  _a.sent();
4311
- return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", sku: 'SK' })];
4315
+ return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", sku: 'SK', externalId: 'avoid rate limiting 2' })];
4312
4316
  case 32:
4313
4317
  _a.sent();
4314
4318
  return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
@@ -4324,10 +4328,10 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
4324
4328
  } })];
4325
4329
  case 34:
4326
4330
  _a.sent();
4327
- return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle' })];
4331
+ return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle', externalId: "also avoid rate limit 2" })];
4328
4332
  case 35:
4329
4333
  _a.sent();
4330
- return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", sku: 'SKU' })];
4334
+ return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", sku: 'SKU', externalId: 'avoid rate limiting 3' })];
4331
4335
  case 36:
4332
4336
  _a.sent();
4333
4337
  return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
@@ -4344,7 +4348,7 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
4344
4348
  } })];
4345
4349
  case 38:
4346
4350
  _a.sent();
4347
- return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle' })];
4351
+ return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle', externalId: "also avoid rate limit 3" })];
4348
4352
  case 39:
4349
4353
  _a.sent();
4350
4354
  return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", sku: '___SKU-PARTIAL--_' })];
@@ -6033,10 +6037,10 @@ var redaction_tests = function () { return __awaiter(void 0, void 0, void 0, fun
6033
6037
  })];
6034
6038
  case 8:
6035
6039
  notZoomIntegration = _a.sent();
6036
- return [4 /*yield*/, async_test('Zoom integration redacts authentication info', function () { return sdk.api.integrations.getOne(zoomIntegration); }, { onResult: function (i) { return !i.authentication; } })];
6040
+ return [4 /*yield*/, async_test('Zoom integration redacts authentication info', function () { return sdk.api.integrations.getOne(zoomIntegration.id); }, { onResult: function (i) { return !i.authentication; } })];
6037
6041
  case 9:
6038
6042
  _a.sent();
6039
- return [4 /*yield*/, async_test('Generic integration includes authentication info (for now, while used in front-end for some integrations like Zendesk)', function () { return sdk.api.integrations.getOne(notZoomIntegration); }, { onResult: function (i) { return !!i.authentication; } })];
6043
+ return [4 /*yield*/, async_test('Generic integration includes authentication info (for now, while used in front-end for some integrations like Zendesk)', function () { return sdk.api.integrations.getOne(notZoomIntegration.id); }, { onResult: function (i) { return !!i.authentication; } })];
6040
6044
  case 10:
6041
6045
  _a.sent();
6042
6046
  return [4 /*yield*/, Promise.all([
@@ -6952,7 +6956,7 @@ export var role_based_access_permissions_tests = function () { return __awaiter(
6952
6956
  case 10:
6953
6957
  // cleanup
6954
6958
  _a.sent();
6955
- return [4 /*yield*/, sdk.api.users.updateOne(sdkNonAdminId, { roles: ['Non-Admin'] }, { replaceObjectFields: true })];
6959
+ return [4 /*yield*/, sdk.api.users.updateOne(sdkNonAdminId, { roles: ['Non-Admin'], tags: ['avoid rate limit'] }, { replaceObjectFields: true })];
6956
6960
  case 11:
6957
6961
  _a.sent();
6958
6962
  return [4 /*yield*/, sdkNonAdmin.authenticate(nonAdminEmail, nonAdminPassword)]; // to use new role, handle logout on role change
@@ -7025,7 +7029,8 @@ var run_autoreply_test = function (title, _a) {
7025
7029
  sdk.api.chat_rooms.deleteOne(room.id),
7026
7030
  // cleanup availabilities
7027
7031
  sdk.api.users.updateOne(sdk.userInfo.id, {
7028
- weeklyAvailabilities: []
7032
+ weeklyAvailabilities: [],
7033
+ url: Math.random().toString().slice(2, 10), // avoid rate limit
7029
7034
  }, {
7030
7035
  replaceObjectFields: true
7031
7036
  })
@@ -7046,6 +7051,7 @@ var auto_reply_tests = function () { return __awaiter(void 0, void 0, void 0, fu
7046
7051
  return [4 /*yield*/, sdk.api.users.updateOne(sdk.userInfo.id, {
7047
7052
  autoReplyEnabled: false,
7048
7053
  weeklyAvailabilities: [],
7054
+ url: Math.random().toString().slice(2, 10), // avoid rate limit
7049
7055
  }, { replaceObjectFields: true })];
7050
7056
  case 1:
7051
7057
  // cleanup user availabilities / autoReplyEnabled to avoid conflicts
@@ -7399,19 +7405,39 @@ var rate_limit_tests = function () { return __awaiter(void 0, void 0, void 0, fu
7399
7405
  ])];
7400
7406
  case 1:
7401
7407
  _a = (_d.sent()).created, e1 = _a[0], e2 = _a[1], e3 = _a[2];
7408
+ // prevent duplicate updates to same enduser
7409
+ return [4 /*yield*/, async_test("Duplicate updates 1", function () { return sdk.api.endusers.updateOne(e1.id, { fields: { Test: 'Trigger' } }); }, passOnAnyResult)];
7410
+ case 2:
7411
+ // prevent duplicate updates to same enduser
7412
+ _d.sent();
7413
+ return [4 /*yield*/, async_test("Duplicate updates 2", function () { return sdk.api.endusers.updateOne(e1.id, { fields: { Test: 'Trigger' } }); }, passOnAnyResult)];
7414
+ case 3:
7415
+ _d.sent();
7416
+ return [4 /*yield*/, async_test("Duplicate updates 3", function () { return sdk.api.endusers.updateOne(e1.id, { fields: { Test: 'Trigger' } }); }, passOnAnyResult)];
7417
+ case 4:
7418
+ _d.sent();
7419
+ return [4 /*yield*/, async_test("Duplicate updates 4 (should trip)", function () { return sdk.api.endusers.updateOne(e1.id, { fields: { Test: 'Trigger' } }); }, handleRateLimitError)];
7420
+ case 5:
7421
+ _d.sent();
7422
+ return [4 /*yield*/, async_test("Duplicate updates 5 (should trip again)", function () { return sdk.api.endusers.updateOne(e1.id, { fields: { Test: 'Trigger' } }); }, handleRateLimitError)];
7423
+ case 6:
7424
+ _d.sent();
7425
+ return [4 /*yield*/, async_test("Duplicate updates other enduser (should not again)", function () { return sdk.api.endusers.updateOne(e2.id, { fields: { Test: 'Trigger' } }); }, passOnAnyResult)];
7426
+ case 7:
7427
+ _d.sent();
7402
7428
  return [4 /*yield*/, async_test("Same template email rate limit 1-per-minute", function () { return sdk.api.emails.createSome([
7403
7429
  { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: PLACEHOLDER_ID },
7404
7430
  { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: PLACEHOLDER_ID },
7405
7431
  ]); }, handleRateLimitError)
7406
7432
  // these should work, as 1 each is safe
7407
7433
  ];
7408
- case 2:
7434
+ case 8:
7409
7435
  _d.sent();
7410
7436
  return [4 /*yield*/, sdk.api.emails.createSome([
7411
7437
  { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: PLACEHOLDER_ID },
7412
7438
  { enduserId: e2.id, subject: 'ratelimit', textContent: 'rate limit', templateId: PLACEHOLDER_ID },
7413
7439
  ])];
7414
- case 3:
7440
+ case 9:
7415
7441
  _b = (_d.sent()).created, email1 = _b[0], email2 = _b[1];
7416
7442
  // already has 1 created
7417
7443
  return [4 /*yield*/, async_test("Same enduser rate limit 5 per 5 seconds", function () { return sdk.api.emails.createSome([
@@ -7421,7 +7447,7 @@ var rate_limit_tests = function () { return __awaiter(void 0, void 0, void 0, fu
7421
7447
  { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', },
7422
7448
  { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit' },
7423
7449
  ]); }, handleRateLimitError)];
7424
- case 4:
7450
+ case 10:
7425
7451
  // already has 1 created
7426
7452
  _d.sent();
7427
7453
  return [4 /*yield*/, async_test("Same enduser rate limit 5 per 5 seconds not for log only", function () { return sdk.api.emails.createSome([
@@ -7431,25 +7457,25 @@ var rate_limit_tests = function () { return __awaiter(void 0, void 0, void 0, fu
7431
7457
  { logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', },
7432
7458
  { logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit' },
7433
7459
  ]); }, passOnAnyResult)];
7434
- case 5:
7460
+ case 11:
7435
7461
  _d.sent();
7436
7462
  return [4 /*yield*/, wait(undefined, 2500)]; // give it some time before trying again, to ensure still blocked after 2.5 < 60 seconds
7437
- case 6:
7463
+ case 12:
7438
7464
  _d.sent(); // give it some time before trying again, to ensure still blocked after 2.5 < 60 seconds
7439
7465
  return [4 /*yield*/, async_test("Same template email rate limit 1-per-minute after creating", function () { return sdk.api.emails.createOne({
7440
7466
  enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: PLACEHOLDER_ID
7441
7467
  }); }, handleRateLimitError)];
7442
- case 7:
7468
+ case 13:
7443
7469
  _d.sent();
7444
7470
  return [4 /*yield*/, async_test("Same template email rate limit 1-per-minute not for logOnly 1", function () { return sdk.api.emails.createOne({
7445
7471
  logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: PLACEHOLDER_ID
7446
7472
  }); }, passOnAnyResult)];
7447
- case 8:
7473
+ case 14:
7448
7474
  _d.sent();
7449
7475
  return [4 /*yield*/, async_test("Same template email rate limit 1-per-minute not for logOnly 2", function () { return sdk.api.emails.createOne({
7450
7476
  logOnly: true, enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit', templateId: PLACEHOLDER_ID
7451
7477
  }); }, passOnAnyResult)];
7452
- case 9:
7478
+ case 15:
7453
7479
  _d.sent();
7454
7480
  return [4 /*yield*/, async_test("Same template sms rate limit 1-per-minute", function () { return sdk.api.sms_messages.createSome([
7455
7481
  { enduserId: e1.id, templateId: PLACEHOLDER_ID, message: 'hi' },
@@ -7457,13 +7483,13 @@ var rate_limit_tests = function () { return __awaiter(void 0, void 0, void 0, fu
7457
7483
  ]); }, handleRateLimitError)
7458
7484
  // these should work, as 1 each is safe
7459
7485
  ];
7460
- case 10:
7486
+ case 16:
7461
7487
  _d.sent();
7462
7488
  return [4 /*yield*/, sdk.api.sms_messages.createSome([
7463
7489
  { enduserId: e1.id, templateId: PLACEHOLDER_ID, message: 'hi' },
7464
7490
  { enduserId: e2.id, templateId: PLACEHOLDER_ID, message: 'hi' },
7465
7491
  ])];
7466
- case 11:
7492
+ case 17:
7467
7493
  _c = (_d.sent()).created, sms1 = _c[0], sms2 = _c[1];
7468
7494
  // already has 1 created, so 3 new should error (4 > 3)
7469
7495
  return [4 /*yield*/, async_test("Same enduser sms rate limit 3 per 3 seconds", function () { return sdk.api.sms_messages.createSome([
@@ -7471,7 +7497,7 @@ var rate_limit_tests = function () { return __awaiter(void 0, void 0, void 0, fu
7471
7497
  { enduserId: e1.id, message: 'hi' },
7472
7498
  { enduserId: e1.id, message: 'hi' },
7473
7499
  ]); }, handleRateLimitError)];
7474
- case 12:
7500
+ case 18:
7475
7501
  // already has 1 created, so 3 new should error (4 > 3)
7476
7502
  _d.sent();
7477
7503
  return [4 /*yield*/, async_test("Same enduser sms rate limit not applied on logOnly 3 per 3 seconds", function () { return sdk.api.sms_messages.createSome([
@@ -7481,27 +7507,27 @@ var rate_limit_tests = function () { return __awaiter(void 0, void 0, void 0, fu
7481
7507
  { logOnly: true, enduserId: e3.id, message: 'hi' },
7482
7508
  { logOnly: true, enduserId: e3.id, message: 'hi' },
7483
7509
  ]); }, passOnAnyResult)];
7484
- case 13:
7510
+ case 19:
7485
7511
  _d.sent();
7486
7512
  return [4 /*yield*/, wait(undefined, 2500)]; // give it some time before trying again, to ensure still blocked after 2.5 < 60 seconds
7487
- case 14:
7513
+ case 20:
7488
7514
  _d.sent(); // give it some time before trying again, to ensure still blocked after 2.5 < 60 seconds
7489
7515
  return [4 /*yield*/, async_test("Same template sms rate limit 1-per-minute after creating", function () { return sdk.api.sms_messages.createOne({
7490
7516
  enduserId: e2.id, templateId: PLACEHOLDER_ID, message: 'hi'
7491
7517
  }); }, handleRateLimitError)];
7492
- case 15:
7518
+ case 21:
7493
7519
  _d.sent();
7494
7520
  return [4 /*yield*/, async_test("Same template sms rate limit 1-per-minute logonly does not apply 1", function () { return sdk.api.sms_messages.createOne({
7495
7521
  logOnly: true, enduserId: e2.id, templateId: PLACEHOLDER_ID, message: 'hi'
7496
7522
  }); }, passOnAnyResult)];
7497
- case 16:
7523
+ case 22:
7498
7524
  _d.sent();
7499
7525
  return [4 /*yield*/, async_test("Same template sms rate limit 1-per-minute logonly does not apply 2", function () { return sdk.api.sms_messages.createOne({
7500
7526
  logOnly: true, enduserId: e2.id, templateId: PLACEHOLDER_ID, message: 'hi'
7501
7527
  }); }, passOnAnyResult)
7502
7528
  // these should work, as they do not have the same template
7503
7529
  ];
7504
- case 17:
7530
+ case 23:
7505
7531
  _d.sent();
7506
7532
  // these should work, as they do not have the same template
7507
7533
  return [4 /*yield*/, sdk.api.emails.createSome([
@@ -7509,7 +7535,7 @@ var rate_limit_tests = function () { return __awaiter(void 0, void 0, void 0, fu
7509
7535
  { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit' },
7510
7536
  { enduserId: e1.id, subject: 'ratelimit', textContent: 'rate limit' },
7511
7537
  ])];
7512
- case 18:
7538
+ case 24:
7513
7539
  // these should work, as they do not have the same template
7514
7540
  _d.sent();
7515
7541
  return [4 /*yield*/, Promise.all([
@@ -7517,7 +7543,7 @@ var rate_limit_tests = function () { return __awaiter(void 0, void 0, void 0, fu
7517
7543
  sdk.api.endusers.deleteOne(e2.id),
7518
7544
  sdk.api.endusers.deleteOne(e3.id),
7519
7545
  ])];
7520
- case 19:
7546
+ case 25:
7521
7547
  _d.sent();
7522
7548
  return [2 /*return*/];
7523
7549
  }
@@ -13575,88 +13601,88 @@ var ip_address_form_tests = function () { return __awaiter(void 0, void 0, void
13575
13601
  return [4 /*yield*/, setup_tests()];
13576
13602
  case 16:
13577
13603
  _l.sent();
13578
- return [4 /*yield*/, ip_address_form_tests()];
13604
+ return [4 /*yield*/, rate_limit_tests()];
13579
13605
  case 17:
13580
13606
  _l.sent();
13581
- return [4 /*yield*/, bulk_update_tests()];
13607
+ return [4 /*yield*/, ip_address_form_tests()];
13582
13608
  case 18:
13583
13609
  _l.sent();
13584
- return [4 /*yield*/, formsort_tests()];
13610
+ return [4 /*yield*/, bulk_update_tests()];
13585
13611
  case 19:
13586
13612
  _l.sent();
13587
- return [4 /*yield*/, inbox_loading_tests()];
13613
+ return [4 /*yield*/, formsort_tests()];
13588
13614
  case 20:
13589
13615
  _l.sent();
13590
- return [4 /*yield*/, cancel_upcoming_appointments_journey_action_test()];
13616
+ return [4 /*yield*/, inbox_loading_tests()];
13591
13617
  case 21:
13592
13618
  _l.sent();
13593
- return [4 /*yield*/, multi_tenant_tests()]; // should come right after setup tests
13619
+ return [4 /*yield*/, cancel_upcoming_appointments_journey_action_test()];
13594
13620
  case 22:
13621
+ _l.sent();
13622
+ return [4 /*yield*/, multi_tenant_tests()]; // should come right after setup tests
13623
+ case 23:
13595
13624
  _l.sent(); // should come right after setup tests
13596
13625
  return [4 /*yield*/, sync_tests_with_access_tags()]; // should come directly after setup to avoid extra sync values
13597
- case 23:
13626
+ case 24:
13598
13627
  _l.sent(); // should come directly after setup to avoid extra sync values
13599
13628
  return [4 /*yield*/, sync_tests()]; // should come directly after setup to avoid extra sync values
13600
- case 24:
13629
+ case 25:
13601
13630
  _l.sent(); // should come directly after setup to avoid extra sync values
13602
13631
  return [4 /*yield*/, get_templated_message_tests()];
13603
- case 25:
13604
- _l.sent();
13605
- return [4 /*yield*/, updatedAt_tests()];
13606
13632
  case 26:
13607
13633
  _l.sent();
13608
- return [4 /*yield*/, automation_trigger_tests()];
13634
+ return [4 /*yield*/, updatedAt_tests()];
13609
13635
  case 27:
13610
13636
  _l.sent();
13611
- return [4 /*yield*/, file_source_tests()];
13637
+ return [4 /*yield*/, automation_trigger_tests()];
13612
13638
  case 28:
13613
13639
  _l.sent();
13614
- return [4 /*yield*/, enduser_access_tags_tests()];
13640
+ return [4 /*yield*/, file_source_tests()];
13615
13641
  case 29:
13616
13642
  _l.sent();
13617
- return [4 /*yield*/, enduserAccessTests()];
13643
+ return [4 /*yield*/, enduser_access_tags_tests()];
13618
13644
  case 30:
13619
13645
  _l.sent();
13620
- return [4 /*yield*/, test_form_response_search()];
13646
+ return [4 /*yield*/, enduserAccessTests()];
13621
13647
  case 31:
13622
13648
  _l.sent();
13623
- return [4 /*yield*/, date_parsing_tests()];
13649
+ return [4 /*yield*/, test_form_response_search()];
13624
13650
  case 32:
13625
13651
  _l.sent();
13626
- return [4 /*yield*/, fromEmailOverride_tests()];
13652
+ return [4 /*yield*/, date_parsing_tests()];
13627
13653
  case 33:
13628
13654
  _l.sent();
13629
- return [4 /*yield*/, ticket_tests()];
13655
+ return [4 /*yield*/, fromEmailOverride_tests()];
13630
13656
  case 34:
13631
13657
  _l.sent();
13632
- return [4 /*yield*/, uniqueness_tests()];
13658
+ return [4 /*yield*/, ticket_tests()];
13633
13659
  case 35:
13634
13660
  _l.sent();
13635
- return [4 /*yield*/, enduser_orders_tests()];
13661
+ return [4 /*yield*/, uniqueness_tests()];
13636
13662
  case 36:
13637
13663
  _l.sent();
13638
- return [4 /*yield*/, calendar_event_care_team_tests()];
13664
+ return [4 /*yield*/, enduser_orders_tests()];
13639
13665
  case 37:
13640
13666
  _l.sent();
13641
- return [4 /*yield*/, merge_enduser_tests()];
13667
+ return [4 /*yield*/, calendar_event_care_team_tests()];
13642
13668
  case 38:
13643
13669
  _l.sent();
13644
- return [4 /*yield*/, input_modifier_tests()];
13670
+ return [4 /*yield*/, merge_enduser_tests()];
13645
13671
  case 39:
13646
13672
  _l.sent();
13647
- return [4 /*yield*/, switch_to_related_contacts_tests()];
13673
+ return [4 /*yield*/, input_modifier_tests()];
13648
13674
  case 40:
13649
13675
  _l.sent();
13650
- return [4 /*yield*/, redaction_tests()];
13676
+ return [4 /*yield*/, switch_to_related_contacts_tests()];
13651
13677
  case 41:
13652
13678
  _l.sent();
13653
- return [4 /*yield*/, self_serve_appointment_booking_tests()];
13679
+ return [4 /*yield*/, redaction_tests()];
13654
13680
  case 42:
13655
13681
  _l.sent();
13656
- return [4 /*yield*/, no_chained_triggers_tests()];
13682
+ return [4 /*yield*/, self_serve_appointment_booking_tests()];
13657
13683
  case 43:
13658
13684
  _l.sent();
13659
- return [4 /*yield*/, rate_limit_tests()];
13685
+ return [4 /*yield*/, no_chained_triggers_tests()];
13660
13686
  case 44:
13661
13687
  _l.sent();
13662
13688
  return [4 /*yield*/, mdb_filter_tests()];