@tellescope/sdk 1.69.2 → 1.69.4

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.
@@ -1 +1 @@
1
- {"version":3,"file":"tests.d.ts","sourceRoot":"","sources":["../../../src/tests/tests.ts"],"names":[],"mappings":"AAqmEA,eAAO,MAAM,kCAAkC,qBAgJ9C,CAAA;AAED,eAAO,MAAM,mCAAmC,qBA2K/C,CAAA;AAGD,eAAO,MAAM,oBAAoB,qBAoHhC,CAAA;AAED,eAAO,MAAM,+BAA+B,qBAsF3C,CAAA;AAID,eAAO,MAAM,0BAA0B,qBAqCtC,CAAA;AAsfD,eAAO,MAAM,cAAc,qBAqC1B,CAAA;AAqiBD,eAAO,MAAM,6BAA6B,qBAgCzC,CAAA;AAED,eAAO,MAAM,0BAA0B,qBAmFtC,CAAA;AAqED,eAAO,MAAM,eAAe,qBAgD3B,CAAA;AAED,eAAO,MAAM,oBAAoB,6BAsBhC,CAAA;AAED,eAAO,MAAM,oCAAoC,qBAmKhD,CAAA;AAED,eAAO,MAAM,mCAAmC,qBAkE/C,CAAA;AAqtCD,eAAO,MAAM,yBAAyB,qBA0DrC,CAAA;AAED,eAAO,MAAM,kBAAkB,qBAgG9B,CAAA;AAED,eAAO,MAAM,sBAAsB,qBA0BlC,CAAA"}
1
+ {"version":3,"file":"tests.d.ts","sourceRoot":"","sources":["../../../src/tests/tests.ts"],"names":[],"mappings":"AAqmEA,eAAO,MAAM,kCAAkC,qBAgJ9C,CAAA;AAED,eAAO,MAAM,mCAAmC,qBA2K/C,CAAA;AAGD,eAAO,MAAM,oBAAoB,qBAoHhC,CAAA;AAED,eAAO,MAAM,+BAA+B,qBAsF3C,CAAA;AAID,eAAO,MAAM,0BAA0B,qBAqCtC,CAAA;AAsfD,eAAO,MAAM,cAAc,qBAqC1B,CAAA;AAqiBD,eAAO,MAAM,6BAA6B,qBAgCzC,CAAA;AAED,eAAO,MAAM,0BAA0B,qBAmFtC,CAAA;AAqED,eAAO,MAAM,eAAe,qBAgD3B,CAAA;AAED,eAAO,MAAM,oBAAoB,6BAsBhC,CAAA;AAED,eAAO,MAAM,oCAAoC,qBAqPhD,CAAA;AAED,eAAO,MAAM,mCAAmC,qBAkE/C,CAAA;AAqtCD,eAAO,MAAM,yBAAyB,qBA0DrC,CAAA;AAED,eAAO,MAAM,kBAAkB,qBAgG9B,CAAA;AAED,eAAO,MAAM,sBAAsB,qBA0BlC,CAAA"}
@@ -4904,7 +4904,7 @@ var filter_by_date_tests = function () { return __awaiter(void 0, void 0, void 0
4904
4904
  }); };
4905
4905
  exports.filter_by_date_tests = filter_by_date_tests;
4906
4906
  var self_serve_appointment_booking_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
4907
- var e1, e2, event15min, event30min, dayOfWeekStartingSundayIndexedByZero, nySlots, bookedAppointment, conflict;
4907
+ var e1, e2, event15min, event30min, dayOfWeekStartingSundayIndexedByZero, nySlots, bookedAppointment, conflict, multiSlots, bookedMultiAppointment;
4908
4908
  return __generator(this, function (_a) {
4909
4909
  switch (_a.label) {
4910
4910
  case 0:
@@ -5001,7 +5001,6 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5001
5001
  if (!(user1block1_ET && user2block1_PT))
5002
5002
  return false; // should be slots for both users
5003
5003
  if (user2block1_PT.startTimeInMS - user1block1_ET.startTimeInMS !== 1000 * 60 * 60 * 3) {
5004
- console.log(user1block1_ET.startTimeInMS, user2block1_PT.startTimeInMS, user1block1_ET.startTimeInMS - user2block1_PT.startTimeInMS);
5005
5004
  return false; // difference should be three hours, since same availability in different timezones
5006
5005
  }
5007
5006
  return true;
@@ -5027,6 +5026,7 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5027
5026
  })];
5028
5027
  case 13:
5029
5028
  bookedAppointment = (_a.sent()).createdEvent;
5029
+ (0, testing_1.assert)(bookedAppointment.attendees.length === 2, 'did not get 2 attendees', '2 attendees fo non-multi-event');
5030
5030
  return [4 /*yield*/, (0, testing_1.async_test)('double-booking prevented', function () { return enduserSDK.api.calendar_events.book_appointment({
5031
5031
  calendarEventTemplateId: event30min.id,
5032
5032
  startTime: new Date(nySlots.availabilityBlocks[0].startTimeInMS),
@@ -5065,8 +5065,82 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5065
5065
  calendarEventTemplateId: event30min.id,
5066
5066
  startTime: new Date(nySlots.availabilityBlocks[1].startTimeInMS),
5067
5067
  userId: nySlots.availabilityBlocks[1].userId,
5068
- }); }, handleAnyError)];
5068
+ }); }, handleAnyError)
5069
+ // test 'multi' flag for booking multiple providers for a given patient
5070
+ ];
5069
5071
  case 18:
5072
+ _a.sent();
5073
+ // test 'multi' flag for booking multiple providers for a given patient
5074
+ return [4 /*yield*/, sdk.api.users.updateOne(sdk.userInfo.id, {
5075
+ weeklyAvailabilities: [
5076
+ {
5077
+ dayOfWeekStartingSundayIndexedByZero: dayOfWeekStartingSundayIndexedByZero,
5078
+ startTimeInMinutes: 60 * 12,
5079
+ endTimeInMinutes: 60 * 13, // 1pm,
5080
+ },
5081
+ ],
5082
+ timezone: 'America/New_York',
5083
+ }, {
5084
+ replaceObjectFields: true,
5085
+ })];
5086
+ case 19:
5087
+ // test 'multi' flag for booking multiple providers for a given patient
5088
+ _a.sent();
5089
+ return [4 /*yield*/, sdkNonAdmin.api.users.updateOne(sdkNonAdmin.userInfo.id, {
5090
+ weeklyAvailabilities: [
5091
+ {
5092
+ dayOfWeekStartingSundayIndexedByZero: dayOfWeekStartingSundayIndexedByZero,
5093
+ startTimeInMinutes: 60 * 12,
5094
+ endTimeInMinutes: 60 * 14, // 2pm,
5095
+ },
5096
+ ],
5097
+ timezone: 'America/New_York',
5098
+ }, {
5099
+ replaceObjectFields: true,
5100
+ })];
5101
+ case 20:
5102
+ _a.sent();
5103
+ return [4 /*yield*/, enduserSDK.api.calendar_events.get_appointment_availability({
5104
+ calendarEventTemplateId: event30min.id,
5105
+ from: new Date(Date.now()),
5106
+ to: new Date(Date.now() + 8 * 24 * 60 * 60 * 1000),
5107
+ multi: true,
5108
+ userIds: [sdk.userInfo.id, sdkNonAdmin.userInfo.id]
5109
+ })];
5110
+ case 21:
5111
+ multiSlots = _a.sent();
5112
+ (0, testing_1.assert)(multiSlots.availabilityBlocks.length === 2, 'expected 2 slots', 'multi slots are intersection of availability');
5113
+ return [4 /*yield*/, enduserSDK.api.calendar_events.book_appointment({
5114
+ calendarEventTemplateId: event30min.id,
5115
+ startTime: new Date(multiSlots.availabilityBlocks[0].startTimeInMS),
5116
+ userId: sdk.userInfo.id,
5117
+ otherUserIds: [sdkNonAdmin.userInfo.id]
5118
+ })];
5119
+ case 22:
5120
+ bookedMultiAppointment = (_a.sent()).createdEvent;
5121
+ (0, testing_1.assert)((bookedMultiAppointment.attendees.length === 3
5122
+ && bookedMultiAppointment.attendees.filter(function (a) { return a.type === 'enduser'; }).length === 1), 'did not get valid attendees', 'Multi attendees fo multi-event');
5123
+ return [4 /*yield*/, (0, testing_1.async_test)('booking against conflict prevented 1 user', function () { return enduserSDK.api.calendar_events.book_appointment({
5124
+ calendarEventTemplateId: event30min.id,
5125
+ startTime: new Date(multiSlots.availabilityBlocks[0].startTimeInMS),
5126
+ userId: sdk.userInfo.id,
5127
+ }); }, handleAnyError)];
5128
+ case 23:
5129
+ _a.sent();
5130
+ return [4 /*yield*/, (0, testing_1.async_test)('booking against conflict prevented other user', function () { return enduserSDK.api.calendar_events.book_appointment({
5131
+ calendarEventTemplateId: event30min.id,
5132
+ startTime: new Date(multiSlots.availabilityBlocks[0].startTimeInMS),
5133
+ userId: sdkNonAdmin.userInfo.id,
5134
+ }); }, handleAnyError)];
5135
+ case 24:
5136
+ _a.sent();
5137
+ return [4 /*yield*/, (0, testing_1.async_test)('booking against conflict prevented 2 users', function () { return enduserSDK.api.calendar_events.book_appointment({
5138
+ calendarEventTemplateId: event30min.id,
5139
+ startTime: new Date(multiSlots.availabilityBlocks[0].startTimeInMS),
5140
+ userId: sdk.userInfo.id,
5141
+ otherUserIds: [sdkNonAdmin.userInfo.id],
5142
+ }); }, handleAnyError)];
5143
+ case 25:
5070
5144
  _a.sent();
5071
5145
  return [4 /*yield*/, Promise.all([
5072
5146
  sdk.api.endusers.deleteOne(e1.id),
@@ -5075,8 +5149,9 @@ var self_serve_appointment_booking_tests = function () { return __awaiter(void 0
5075
5149
  sdk.api.calendar_event_templates.deleteOne(event15min.id),
5076
5150
  sdk.api.calendar_events.deleteOne(bookedAppointment.id),
5077
5151
  sdk.api.calendar_events.deleteOne(conflict.id),
5152
+ sdk.api.calendar_events.deleteOne(bookedMultiAppointment.id),
5078
5153
  ])];
5079
- case 19:
5154
+ case 26:
5080
5155
  _a.sent();
5081
5156
  return [2 /*return*/];
5082
5157
  }
@@ -7031,52 +7106,52 @@ var test_weighted_round_robin = function () { return __awaiter(void 0, void 0, v
7031
7106
  return [4 /*yield*/, multi_tenant_tests()]; // should come right after setup tests
7032
7107
  case 10:
7033
7108
  _k.sent(); // should come right after setup tests
7034
- return [4 /*yield*/, (0, exports.alternate_phones_tests)()];
7109
+ return [4 /*yield*/, (0, exports.self_serve_appointment_booking_tests)()];
7035
7110
  case 11:
7036
7111
  _k.sent();
7037
- return [4 /*yield*/, (0, exports.ticket_queue_tests)()];
7112
+ return [4 /*yield*/, (0, exports.alternate_phones_tests)()];
7038
7113
  case 12:
7039
7114
  _k.sent();
7040
- return [4 /*yield*/, (0, exports.no_chained_triggers_tests)()];
7115
+ return [4 /*yield*/, (0, exports.ticket_queue_tests)()];
7041
7116
  case 13:
7042
7117
  _k.sent();
7043
- return [4 /*yield*/, field_equals_trigger_tests()];
7118
+ return [4 /*yield*/, (0, exports.no_chained_triggers_tests)()];
7044
7119
  case 14:
7045
7120
  _k.sent();
7046
- return [4 /*yield*/, test_ticket_automation_assignment_and_optimization()];
7121
+ return [4 /*yield*/, field_equals_trigger_tests()];
7047
7122
  case 15:
7048
7123
  _k.sent();
7049
- return [4 /*yield*/, role_based_access_tests()];
7124
+ return [4 /*yield*/, test_ticket_automation_assignment_and_optimization()];
7050
7125
  case 16:
7051
7126
  _k.sent();
7052
- return [4 /*yield*/, automation_trigger_tests()];
7127
+ return [4 /*yield*/, role_based_access_tests()];
7053
7128
  case 17:
7054
7129
  _k.sent();
7055
- return [4 /*yield*/, enduser_session_tests()];
7130
+ return [4 /*yield*/, automation_trigger_tests()];
7056
7131
  case 18:
7057
7132
  _k.sent();
7058
- return [4 /*yield*/, nextReminderInMS_tests()];
7133
+ return [4 /*yield*/, enduser_session_tests()];
7059
7134
  case 19:
7060
7135
  _k.sent();
7061
- return [4 /*yield*/, search_tests()];
7136
+ return [4 /*yield*/, nextReminderInMS_tests()];
7062
7137
  case 20:
7063
7138
  _k.sent();
7064
- return [4 /*yield*/, wait_for_trigger_tests()];
7139
+ return [4 /*yield*/, search_tests()];
7065
7140
  case 21:
7066
7141
  _k.sent();
7067
- return [4 /*yield*/, pdf_generation()];
7142
+ return [4 /*yield*/, wait_for_trigger_tests()];
7068
7143
  case 22:
7069
7144
  _k.sent();
7070
- return [4 /*yield*/, remove_from_journey_on_incoming_comms_tests()];
7145
+ return [4 /*yield*/, pdf_generation()];
7071
7146
  case 23:
7072
7147
  _k.sent();
7073
- return [4 /*yield*/, rate_limit_tests()];
7148
+ return [4 /*yield*/, remove_from_journey_on_incoming_comms_tests()];
7074
7149
  case 24:
7075
7150
  _k.sent();
7076
- return [4 /*yield*/, merge_enduser_tests()];
7151
+ return [4 /*yield*/, rate_limit_tests()];
7077
7152
  case 25:
7078
7153
  _k.sent();
7079
- return [4 /*yield*/, (0, exports.self_serve_appointment_booking_tests)()];
7154
+ return [4 /*yield*/, merge_enduser_tests()];
7080
7155
  case 26:
7081
7156
  _k.sent();
7082
7157
  return [4 /*yield*/, auto_reply_tests()];