@tellescope/sdk 1.74.2 → 1.75.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.
@@ -5001,6 +5001,24 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5001
5001
  restrictedByState: true,
5002
5002
  }); }, { onResult: function (r) { return r.availabilityBlocks.length === 2; } })];
5003
5003
  case 10:
5004
+ _a.sent();
5005
+ return [4 /*yield*/, (0, testing_1.async_test)('30 minute slots for state restriction with 15 min interval', function () { return enduserSDK.api.calendar_events.get_appointment_availability({
5006
+ calendarEventTemplateId: event30min.id,
5007
+ from: new Date(Date.now() - 10000),
5008
+ to: new Date(Date.now() + 3 * 24 * 60 * 60 * 1000),
5009
+ restrictedByState: true,
5010
+ intervalInMinutes: 15,
5011
+ }); }, { onResult: function (r) { return r.availabilityBlocks.length === 3; } })];
5012
+ case 11:
5013
+ _a.sent();
5014
+ return [4 /*yield*/, (0, testing_1.async_test)('30 minute slots for state restriction with 10 min interval', function () { return enduserSDK.api.calendar_events.get_appointment_availability({
5015
+ calendarEventTemplateId: event30min.id,
5016
+ from: new Date(Date.now() - 10000),
5017
+ to: new Date(Date.now() + 3 * 24 * 60 * 60 * 1000),
5018
+ restrictedByState: true,
5019
+ intervalInMinutes: 10,
5020
+ }); }, { onResult: function (r) { return r.availabilityBlocks.length === 4; } })];
5021
+ case 12:
5004
5022
  _a.sent();
5005
5023
  return [4 /*yield*/, (0, testing_1.async_test)('30 minute slots for no state restrictions', function () { return enduserSDK.api.calendar_events.get_appointment_availability({
5006
5024
  calendarEventTemplateId: event30min.id,
@@ -5019,7 +5037,7 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5019
5037
  }
5020
5038
  return true;
5021
5039
  } })];
5022
- case 11:
5040
+ case 13:
5023
5041
  _a.sent();
5024
5042
  return [4 /*yield*/, enduserSDK.api.calendar_events.get_appointment_availability({
5025
5043
  calendarEventTemplateId: event30min.id,
@@ -5027,7 +5045,7 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5027
5045
  to: new Date(Date.now() + 3 * 24 * 60 * 60 * 1000),
5028
5046
  restrictedByState: true,
5029
5047
  })];
5030
- case 12:
5048
+ case 14:
5031
5049
  nySlots = _a.sent();
5032
5050
  return [4 /*yield*/, enduserSDK.api.calendar_events.book_appointment({
5033
5051
  calendarEventTemplateId: event30min.id,
@@ -5038,7 +5056,7 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5038
5056
  fields: "Test",
5039
5057
  }
5040
5058
  })];
5041
- case 13:
5059
+ case 15:
5042
5060
  bookedAppointment = (_a.sent()).createdEvent;
5043
5061
  (0, testing_1.assert)(bookedAppointment.attendees.length === 2, 'did not get 2 attendees', '2 attendees fo non-multi-event');
5044
5062
  return [4 /*yield*/, (0, testing_1.async_test)('double-booking prevented', function () { return enduserSDK.api.calendar_events.book_appointment({
@@ -5046,7 +5064,7 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5046
5064
  startTime: new Date(nySlots.availabilityBlocks[0].startTimeInMS),
5047
5065
  userId: nySlots.availabilityBlocks[0].userId,
5048
5066
  }); }, handleAnyError)];
5049
- case 14:
5067
+ case 16:
5050
5068
  _a.sent();
5051
5069
  return [4 /*yield*/, (0, testing_1.async_test)('30 minute slots for state restriction with 1 overlapping conflict', function () { return enduserSDK.api.calendar_events.get_appointment_availability({
5052
5070
  calendarEventTemplateId: event30min.id,
@@ -5058,14 +5076,14 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5058
5076
  && r.availabilityBlocks[0].startTimeInMS === nySlots.availabilityBlocks[1].startTimeInMS;
5059
5077
  } // the first slot of nySlots is booked
5060
5078
  })];
5061
- case 15:
5079
+ case 17:
5062
5080
  _a.sent();
5063
5081
  return [4 /*yield*/, sdk.api.calendar_events.createOne({
5064
5082
  title: 'conflict',
5065
5083
  startTimeInMS: nySlots.availabilityBlocks[1].startTimeInMS,
5066
5084
  durationInMinutes: nySlots.availabilityBlocks[1].durationInMinutes,
5067
5085
  })];
5068
- case 16:
5086
+ case 18:
5069
5087
  conflict = _a.sent();
5070
5088
  return [4 /*yield*/, (0, testing_1.async_test)('30 minute slots for state restriction with 2 overlapping conflict', function () { return enduserSDK.api.calendar_events.get_appointment_availability({
5071
5089
  calendarEventTemplateId: event30min.id,
@@ -5073,7 +5091,7 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5073
5091
  to: new Date(Date.now() + 3 * 24 * 60 * 60 * 1000),
5074
5092
  restrictedByState: true,
5075
5093
  }); }, { onResult: function (r) { return r.availabilityBlocks.length === 0; } })];
5076
- case 17:
5094
+ case 19:
5077
5095
  _a.sent();
5078
5096
  return [4 /*yield*/, (0, testing_1.async_test)('booking against conflict prevented', function () { return enduserSDK.api.calendar_events.book_appointment({
5079
5097
  calendarEventTemplateId: event30min.id,
@@ -5082,7 +5100,7 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5082
5100
  }); }, handleAnyError)
5083
5101
  // test 'multi' flag for booking multiple providers for a given patient
5084
5102
  ];
5085
- case 18:
5103
+ case 20:
5086
5104
  _a.sent();
5087
5105
  // test 'multi' flag for booking multiple providers for a given patient
5088
5106
  return [4 /*yield*/, sdk.api.users.updateOne(sdk.userInfo.id, {
@@ -5097,7 +5115,7 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5097
5115
  }, {
5098
5116
  replaceObjectFields: true,
5099
5117
  })];
5100
- case 19:
5118
+ case 21:
5101
5119
  // test 'multi' flag for booking multiple providers for a given patient
5102
5120
  _a.sent();
5103
5121
  return [4 /*yield*/, sdkNonAdmin.api.users.updateOne(sdkNonAdmin.userInfo.id, {
@@ -5112,7 +5130,7 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5112
5130
  }, {
5113
5131
  replaceObjectFields: true,
5114
5132
  })];
5115
- case 20:
5133
+ case 22:
5116
5134
  _a.sent();
5117
5135
  return [4 /*yield*/, enduserSDK.api.calendar_events.get_appointment_availability({
5118
5136
  calendarEventTemplateId: event30min.id,
@@ -5121,7 +5139,7 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5121
5139
  multi: true,
5122
5140
  userIds: [sdk.userInfo.id, sdkNonAdmin.userInfo.id]
5123
5141
  })];
5124
- case 21:
5142
+ case 23:
5125
5143
  multiSlots = _a.sent();
5126
5144
  (0, testing_1.assert)(multiSlots.availabilityBlocks.length === 2, 'expected 2 slots', 'multi slots are intersection of availability');
5127
5145
  return [4 /*yield*/, enduserSDK.api.calendar_events.book_appointment({
@@ -5130,7 +5148,7 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5130
5148
  userId: sdk.userInfo.id,
5131
5149
  otherUserIds: [sdkNonAdmin.userInfo.id]
5132
5150
  })];
5133
- case 22:
5151
+ case 24:
5134
5152
  bookedMultiAppointment = (_a.sent()).createdEvent;
5135
5153
  (0, testing_1.assert)((bookedMultiAppointment.attendees.length === 3
5136
5154
  && bookedMultiAppointment.attendees.filter(function (a) { return a.type === 'enduser'; }).length === 1), 'did not get valid attendees', 'Multi attendees fo multi-event');
@@ -5139,14 +5157,14 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5139
5157
  startTime: new Date(multiSlots.availabilityBlocks[0].startTimeInMS),
5140
5158
  userId: sdk.userInfo.id,
5141
5159
  }); }, handleAnyError)];
5142
- case 23:
5160
+ case 25:
5143
5161
  _a.sent();
5144
5162
  return [4 /*yield*/, (0, testing_1.async_test)('booking against conflict prevented other user', function () { return enduserSDK.api.calendar_events.book_appointment({
5145
5163
  calendarEventTemplateId: event30min.id,
5146
5164
  startTime: new Date(multiSlots.availabilityBlocks[0].startTimeInMS),
5147
5165
  userId: sdkNonAdmin.userInfo.id,
5148
5166
  }); }, handleAnyError)];
5149
- case 24:
5167
+ case 26:
5150
5168
  _a.sent();
5151
5169
  return [4 /*yield*/, (0, testing_1.async_test)('booking against conflict prevented 2 users', function () { return enduserSDK.api.calendar_events.book_appointment({
5152
5170
  calendarEventTemplateId: event30min.id,
@@ -5154,7 +5172,7 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5154
5172
  userId: sdk.userInfo.id,
5155
5173
  otherUserIds: [sdkNonAdmin.userInfo.id],
5156
5174
  }); }, handleAnyError)];
5157
- case 25:
5175
+ case 27:
5158
5176
  _a.sent();
5159
5177
  return [4 /*yield*/, Promise.all([
5160
5178
  sdk.api.endusers.deleteOne(e1.id),
@@ -5165,7 +5183,7 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5165
5183
  sdk.api.calendar_events.deleteOne(conflict.id),
5166
5184
  sdk.api.calendar_events.deleteOne(bookedMultiAppointment.id),
5167
5185
  ])];
5168
- case 26:
5186
+ case 28:
5169
5187
  _a.sent();
5170
5188
  return [2 /*return*/];
5171
5189
  }
@@ -6836,6 +6854,7 @@ var alternate_phones_tests = function () { return __awaiter(void 0, void 0, void
6836
6854
  exports.alternate_phones_tests = alternate_phones_tests;
6837
6855
  var NO_TEST = function () { };
6838
6856
  var tests = {
6857
+ enduser_encounters: NO_TEST,
6839
6858
  enduser_orders: NO_TEST,
6840
6859
  ticket_queues: NO_TEST,
6841
6860
  phone_trees: NO_TEST,
@@ -7657,6 +7676,42 @@ var test_send_with_template = function () { return __awaiter(void 0, void 0, voi
7657
7676
  }
7658
7677
  });
7659
7678
  }); };
7679
+ var delete_user_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
7680
+ var existing, u, authToken, createdUserSDK;
7681
+ var _a;
7682
+ return __generator(this, function (_b) {
7683
+ switch (_b.label) {
7684
+ case 0: return [4 /*yield*/, sdk.api.users.getSome({ filter: { email: 'deleteme@tellescope.com' } })];
7685
+ case 1:
7686
+ existing = _b.sent();
7687
+ if (!(((_a = existing[0]) === null || _a === void 0 ? void 0 : _a.email) === 'deleteme@tellescope.com')) return [3 /*break*/, 3];
7688
+ return [4 /*yield*/, sdk.api.users.deleteOne(existing[0].id)];
7689
+ case 2:
7690
+ _b.sent();
7691
+ _b.label = 3;
7692
+ case 3: return [4 /*yield*/, sdk.api.users.createOne({ email: 'deleteme@tellescope.com', verifiedEmail: true })];
7693
+ case 4:
7694
+ u = _b.sent();
7695
+ return [4 /*yield*/, sdk.api.users.generate_auth_token({ id: u.id })];
7696
+ case 5:
7697
+ authToken = (_b.sent()).authToken;
7698
+ createdUserSDK = new sdk_1.Session({ host: host, authToken: authToken });
7699
+ return [4 /*yield*/, (0, testing_1.async_test)("Authenticated", createdUserSDK.test_authenticated, passOnAnyResult)];
7700
+ case 6:
7701
+ _b.sent();
7702
+ return [4 /*yield*/, sdk.api.users.deleteOne(u.id)];
7703
+ case 7:
7704
+ _b.sent();
7705
+ return [4 /*yield*/, (0, testing_1.wait)(undefined, 250)];
7706
+ case 8:
7707
+ _b.sent();
7708
+ return [4 /*yield*/, (0, testing_1.async_test)("De-authenticated after deletion", createdUserSDK.test_authenticated, handleAnyError)];
7709
+ case 9:
7710
+ _b.sent();
7711
+ return [2 /*return*/];
7712
+ }
7713
+ });
7714
+ }); };
7660
7715
  (function () { return __awaiter(void 0, void 0, void 0, function () {
7661
7716
  var err_1, n, _a, _b, _c, _i, returnValidation, t, _d, _f, _g, _h, err_2;
7662
7717
  var _j, _k;
@@ -7669,7 +7724,7 @@ var test_send_with_template = function () { return __awaiter(void 0, void 0, voi
7669
7724
  _l.sent();
7670
7725
  _l.label = 2;
7671
7726
  case 2:
7672
- _l.trys.push([2, 45, , 46]);
7727
+ _l.trys.push([2, 46, , 47]);
7673
7728
  (0, exports.form_conditional_logic_tests)();
7674
7729
  return [4 /*yield*/, test_weighted_round_robin()];
7675
7730
  case 3:
@@ -7704,117 +7759,120 @@ var test_send_with_template = function () { return __awaiter(void 0, void 0, voi
7704
7759
  return [4 /*yield*/, setup_tests()];
7705
7760
  case 9:
7706
7761
  _l.sent();
7707
- return [4 /*yield*/, multi_tenant_tests()
7708
- // await test_send_with_template()
7709
- ]; // should come right after setup tests
7762
+ return [4 /*yield*/, multi_tenant_tests()]; // should come right after setup tests
7710
7763
  case 10:
7711
7764
  _l.sent(); // should come right after setup tests
7712
- // await test_send_with_template()
7713
- return [4 /*yield*/, bulk_read_tests()];
7765
+ return [4 /*yield*/, delete_user_tests()
7766
+ // await test_send_with_template()
7767
+ ];
7714
7768
  case 11:
7715
- // await test_send_with_template()
7716
7769
  _l.sent();
7717
- return [4 /*yield*/, (0, exports.ticket_reminder_tests)()];
7770
+ // await test_send_with_template()
7771
+ return [4 /*yield*/, (0, exports.self_serve_appointment_booking_tests)()];
7718
7772
  case 12:
7773
+ // await test_send_with_template()
7719
7774
  _l.sent();
7720
- return [4 /*yield*/, enduser_access_tags_tests()];
7775
+ return [4 /*yield*/, bulk_read_tests()];
7721
7776
  case 13:
7722
7777
  _l.sent();
7723
- return [4 /*yield*/, marketing_email_unsubscribe_tests()];
7778
+ return [4 /*yield*/, (0, exports.ticket_reminder_tests)()];
7724
7779
  case 14:
7725
7780
  _l.sent();
7726
- return [4 /*yield*/, unique_strings_tests()];
7781
+ return [4 /*yield*/, enduser_access_tags_tests()];
7727
7782
  case 15:
7728
7783
  _l.sent();
7729
- return [4 /*yield*/, (0, exports.self_serve_appointment_booking_tests)()];
7784
+ return [4 /*yield*/, marketing_email_unsubscribe_tests()];
7730
7785
  case 16:
7731
7786
  _l.sent();
7732
- return [4 /*yield*/, (0, exports.alternate_phones_tests)()];
7787
+ return [4 /*yield*/, unique_strings_tests()];
7733
7788
  case 17:
7734
7789
  _l.sent();
7735
- return [4 /*yield*/, (0, exports.ticket_queue_tests)()];
7790
+ return [4 /*yield*/, (0, exports.alternate_phones_tests)()];
7736
7791
  case 18:
7737
7792
  _l.sent();
7738
- return [4 /*yield*/, (0, exports.no_chained_triggers_tests)()];
7793
+ return [4 /*yield*/, (0, exports.ticket_queue_tests)()];
7739
7794
  case 19:
7740
7795
  _l.sent();
7741
- return [4 /*yield*/, field_equals_trigger_tests()];
7796
+ return [4 /*yield*/, (0, exports.no_chained_triggers_tests)()];
7742
7797
  case 20:
7743
7798
  _l.sent();
7744
- return [4 /*yield*/, test_ticket_automation_assignment_and_optimization()];
7799
+ return [4 /*yield*/, field_equals_trigger_tests()];
7745
7800
  case 21:
7746
7801
  _l.sent();
7747
- return [4 /*yield*/, role_based_access_tests()];
7802
+ return [4 /*yield*/, test_ticket_automation_assignment_and_optimization()];
7748
7803
  case 22:
7749
7804
  _l.sent();
7750
- return [4 /*yield*/, automation_trigger_tests()];
7805
+ return [4 /*yield*/, role_based_access_tests()];
7751
7806
  case 23:
7752
7807
  _l.sent();
7753
- return [4 /*yield*/, enduser_session_tests()];
7808
+ return [4 /*yield*/, automation_trigger_tests()];
7754
7809
  case 24:
7755
7810
  _l.sent();
7756
- return [4 /*yield*/, nextReminderInMS_tests()];
7811
+ return [4 /*yield*/, enduser_session_tests()];
7757
7812
  case 25:
7758
7813
  _l.sent();
7759
- return [4 /*yield*/, search_tests()];
7814
+ return [4 /*yield*/, nextReminderInMS_tests()];
7760
7815
  case 26:
7761
7816
  _l.sent();
7762
- return [4 /*yield*/, wait_for_trigger_tests()];
7817
+ return [4 /*yield*/, search_tests()];
7763
7818
  case 27:
7764
7819
  _l.sent();
7765
- return [4 /*yield*/, pdf_generation()];
7820
+ return [4 /*yield*/, wait_for_trigger_tests()];
7766
7821
  case 28:
7767
7822
  _l.sent();
7768
- return [4 /*yield*/, remove_from_journey_on_incoming_comms_tests()];
7823
+ return [4 /*yield*/, pdf_generation()];
7769
7824
  case 29:
7770
7825
  _l.sent();
7771
- return [4 /*yield*/, rate_limit_tests()];
7826
+ return [4 /*yield*/, remove_from_journey_on_incoming_comms_tests()];
7772
7827
  case 30:
7773
7828
  _l.sent();
7774
- return [4 /*yield*/, merge_enduser_tests()];
7829
+ return [4 /*yield*/, rate_limit_tests()];
7775
7830
  case 31:
7776
7831
  _l.sent();
7777
- return [4 /*yield*/, auto_reply_tests()];
7832
+ return [4 /*yield*/, merge_enduser_tests()];
7778
7833
  case 32:
7779
7834
  _l.sent();
7780
- return [4 /*yield*/, sub_organization_enduser_tests()];
7835
+ return [4 /*yield*/, auto_reply_tests()];
7781
7836
  case 33:
7782
7837
  _l.sent();
7783
- return [4 /*yield*/, sub_organization_tests()];
7838
+ return [4 /*yield*/, sub_organization_enduser_tests()];
7784
7839
  case 34:
7785
7840
  _l.sent();
7786
- return [4 /*yield*/, (0, exports.filter_by_date_tests)()];
7841
+ return [4 /*yield*/, sub_organization_tests()];
7787
7842
  case 35:
7788
7843
  _l.sent();
7789
- return [4 /*yield*/, generate_user_auth_tests()];
7844
+ return [4 /*yield*/, (0, exports.filter_by_date_tests)()];
7790
7845
  case 36:
7791
7846
  _l.sent();
7792
- return [4 /*yield*/, generateEnduserAuthTests()];
7847
+ return [4 /*yield*/, generate_user_auth_tests()];
7793
7848
  case 37:
7794
7849
  _l.sent();
7795
- return [4 /*yield*/, public_form_tests()];
7850
+ return [4 /*yield*/, generateEnduserAuthTests()];
7796
7851
  case 38:
7797
7852
  _l.sent();
7798
- return [4 /*yield*/, badInputTests()];
7853
+ return [4 /*yield*/, public_form_tests()];
7799
7854
  case 39:
7800
7855
  _l.sent();
7801
- return [4 /*yield*/, filterTests()];
7856
+ return [4 /*yield*/, badInputTests()];
7802
7857
  case 40:
7803
7858
  _l.sent();
7804
- return [4 /*yield*/, updatesTests()];
7859
+ return [4 /*yield*/, filterTests()];
7805
7860
  case 41:
7806
7861
  _l.sent();
7807
- return [4 /*yield*/, threadKeyTests()];
7862
+ return [4 /*yield*/, updatesTests()];
7808
7863
  case 42:
7809
7864
  _l.sent();
7810
- return [4 /*yield*/, enduserAccessTests()];
7865
+ return [4 /*yield*/, threadKeyTests()];
7811
7866
  case 43:
7812
7867
  _l.sent();
7813
- return [4 /*yield*/, enduser_redaction_tests()];
7868
+ return [4 /*yield*/, enduserAccessTests()];
7814
7869
  case 44:
7815
7870
  _l.sent();
7816
- return [3 /*break*/, 46];
7871
+ return [4 /*yield*/, enduser_redaction_tests()];
7817
7872
  case 45:
7873
+ _l.sent();
7874
+ return [3 /*break*/, 47];
7875
+ case 46:
7818
7876
  err_1 = _l.sent();
7819
7877
  console.error("Failed during custom test");
7820
7878
  if (err_1.message && err_1.info) {
@@ -7824,18 +7882,18 @@ var test_send_with_template = function () { return __awaiter(void 0, void 0, voi
7824
7882
  console.error(err_1);
7825
7883
  }
7826
7884
  process.exit(1);
7827
- return [3 /*break*/, 46];
7828
- case 46:
7885
+ return [3 /*break*/, 47];
7886
+ case 47:
7829
7887
  _a = schema_1.schema;
7830
7888
  _b = [];
7831
7889
  for (_c in _a)
7832
7890
  _b.push(_c);
7833
7891
  _i = 0;
7834
- _l.label = 47;
7835
- case 47:
7836
- if (!(_i < _b.length)) return [3 /*break*/, 50];
7892
+ _l.label = 48;
7893
+ case 48:
7894
+ if (!(_i < _b.length)) return [3 /*break*/, 51];
7837
7895
  _c = _b[_i];
7838
- if (!(_c in _a)) return [3 /*break*/, 49];
7896
+ if (!(_c in _a)) return [3 /*break*/, 50];
7839
7897
  n = _c;
7840
7898
  returnValidation = (_k = (_j = schema_1.schema[n].customActions) === null || _j === void 0 ? void 0 : _j.create) === null || _k === void 0 ? void 0 : _k.returns;
7841
7899
  return [4 /*yield*/, run_generated_tests({
@@ -7846,41 +7904,41 @@ var test_send_with_template = function () { return __awaiter(void 0, void 0, voi
7846
7904
  create: returnValidation // ModelFields<ClientModel>,
7847
7905
  }
7848
7906
  })];
7849
- case 48:
7850
- _l.sent();
7851
- _l.label = 49;
7852
7907
  case 49:
7853
- _i++;
7854
- return [3 /*break*/, 47];
7908
+ _l.sent();
7909
+ _l.label = 50;
7855
7910
  case 50:
7911
+ _i++;
7912
+ return [3 /*break*/, 48];
7913
+ case 51:
7856
7914
  _d = tests;
7857
7915
  _f = [];
7858
7916
  for (_g in _d)
7859
7917
  _f.push(_g);
7860
7918
  _h = 0;
7861
- _l.label = 51;
7862
- case 51:
7863
- if (!(_h < _f.length)) return [3 /*break*/, 56];
7864
- _g = _f[_h];
7865
- if (!(_g in _d)) return [3 /*break*/, 55];
7866
- t = _g;
7867
7919
  _l.label = 52;
7868
7920
  case 52:
7869
- _l.trys.push([52, 54, , 55]);
7870
- return [4 /*yield*/, tests[t]()];
7921
+ if (!(_h < _f.length)) return [3 /*break*/, 57];
7922
+ _g = _f[_h];
7923
+ if (!(_g in _d)) return [3 /*break*/, 56];
7924
+ t = _g;
7925
+ _l.label = 53;
7871
7926
  case 53:
7872
- _l.sent();
7873
- return [3 /*break*/, 55];
7927
+ _l.trys.push([53, 55, , 56]);
7928
+ return [4 /*yield*/, tests[t]()];
7874
7929
  case 54:
7930
+ _l.sent();
7931
+ return [3 /*break*/, 56];
7932
+ case 55:
7875
7933
  err_2 = _l.sent();
7876
7934
  console.error("Error running test:");
7877
7935
  console.error(err_2);
7878
7936
  process.exit(1);
7879
- return [3 /*break*/, 55];
7880
- case 55:
7881
- _h++;
7882
- return [3 /*break*/, 51];
7937
+ return [3 /*break*/, 56];
7883
7938
  case 56:
7939
+ _h++;
7940
+ return [3 /*break*/, 52];
7941
+ case 57:
7884
7942
  process.exit();
7885
7943
  return [2 /*return*/];
7886
7944
  }