@tellescope/sdk 1.255.19 → 1.256.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/cjs/tests/api_tests/custom_dashboards.test.d.ts.map +1 -1
- package/lib/cjs/tests/api_tests/custom_dashboards.test.js +99 -8
- package/lib/cjs/tests/api_tests/custom_dashboards.test.js.map +1 -1
- package/lib/cjs/tests/api_tests/default_summary_journey.test.d.ts.map +1 -0
- package/lib/cjs/tests/api_tests/default_summary_journey.test.js.map +1 -0
- package/lib/cjs/tests/api_tests/file_download_unicode_names.test.d.ts +6 -0
- package/lib/cjs/tests/api_tests/file_download_unicode_names.test.d.ts.map +1 -0
- package/lib/cjs/tests/api_tests/file_download_unicode_names.test.js +278 -0
- package/lib/cjs/tests/api_tests/file_download_unicode_names.test.js.map +1 -0
- package/lib/cjs/tests/api_tests/openloop_webhooks.test.d.ts.map +1 -1
- package/lib/cjs/tests/api_tests/openloop_webhooks.test.js +212 -33
- package/lib/cjs/tests/api_tests/openloop_webhooks.test.js.map +1 -1
- package/lib/cjs/tests/api_tests/phone_calls_cold_transfer.test.d.ts.map +1 -1
- package/lib/cjs/tests/api_tests/phone_calls_cold_transfer.test.js +85 -9
- package/lib/cjs/tests/api_tests/phone_calls_cold_transfer.test.js.map +1 -1
- package/lib/cjs/tests/api_tests/security/F-0013-sanitize-user-html-with-iframes.test.d.ts +2 -0
- package/lib/cjs/tests/api_tests/security/F-0013-sanitize-user-html-with-iframes.test.d.ts.map +1 -0
- package/lib/cjs/tests/api_tests/security/F-0013-sanitize-user-html-with-iframes.test.js +242 -0
- package/lib/cjs/tests/api_tests/security/F-0013-sanitize-user-html-with-iframes.test.js.map +1 -0
- package/lib/cjs/tests/api_tests/security/F-0015-webhook-outbound-ssrf.test.d.ts +29 -0
- package/lib/cjs/tests/api_tests/security/F-0015-webhook-outbound-ssrf.test.d.ts.map +1 -0
- package/lib/cjs/tests/api_tests/security/F-0015-webhook-outbound-ssrf.test.js +443 -0
- package/lib/cjs/tests/api_tests/security/F-0015-webhook-outbound-ssrf.test.js.map +1 -0
- package/lib/cjs/tests/api_tests/security/F-0025-proxy-image-unauth-ssrf.test.d.ts +35 -0
- package/lib/cjs/tests/api_tests/security/F-0025-proxy-image-unauth-ssrf.test.d.ts.map +1 -0
- package/lib/cjs/tests/api_tests/security/F-0025-proxy-image-unauth-ssrf.test.js +231 -0
- package/lib/cjs/tests/api_tests/security/F-0025-proxy-image-unauth-ssrf.test.js.map +1 -0
- package/lib/cjs/tests/api_tests/security/F-0166-allowed-paths-wildcard-bypass.test.d.ts.map +1 -1
- package/lib/cjs/tests/api_tests/security/F-0166-allowed-paths-wildcard-bypass.test.js +524 -294
- package/lib/cjs/tests/api_tests/security/F-0166-allowed-paths-wildcard-bypass.test.js.map +1 -1
- package/lib/cjs/tests/tests.d.ts.map +1 -1
- package/lib/cjs/tests/tests.js +431 -230
- package/lib/cjs/tests/tests.js.map +1 -1
- package/lib/esm/enduser.d.ts +0 -1
- package/lib/esm/enduser.d.ts.map +1 -1
- package/lib/esm/sdk.d.ts +2 -3
- package/lib/esm/sdk.d.ts.map +1 -1
- package/lib/esm/session.d.ts +0 -1
- package/lib/esm/session.d.ts.map +1 -1
- package/lib/esm/tests/api_tests/custom_dashboards.test.d.ts.map +1 -1
- package/lib/esm/tests/api_tests/custom_dashboards.test.js +99 -8
- package/lib/esm/tests/api_tests/custom_dashboards.test.js.map +1 -1
- package/lib/esm/tests/api_tests/default_summary_journey.test.d.ts.map +1 -0
- package/lib/esm/tests/api_tests/default_summary_journey.test.js.map +1 -0
- package/lib/esm/tests/api_tests/file_download_unicode_names.test.d.ts +6 -0
- package/lib/esm/tests/api_tests/file_download_unicode_names.test.d.ts.map +1 -0
- package/lib/esm/tests/api_tests/file_download_unicode_names.test.js +248 -0
- package/lib/esm/tests/api_tests/file_download_unicode_names.test.js.map +1 -0
- package/lib/esm/tests/api_tests/openloop_webhooks.test.d.ts.map +1 -1
- package/lib/esm/tests/api_tests/openloop_webhooks.test.js +213 -34
- package/lib/esm/tests/api_tests/openloop_webhooks.test.js.map +1 -1
- package/lib/esm/tests/api_tests/phone_calls_cold_transfer.test.d.ts.map +1 -1
- package/lib/esm/tests/api_tests/phone_calls_cold_transfer.test.js +85 -9
- package/lib/esm/tests/api_tests/phone_calls_cold_transfer.test.js.map +1 -1
- package/lib/esm/tests/api_tests/security/F-0013-sanitize-user-html-with-iframes.test.d.ts +2 -0
- package/lib/esm/tests/api_tests/security/F-0013-sanitize-user-html-with-iframes.test.d.ts.map +1 -0
- package/lib/esm/tests/api_tests/security/F-0013-sanitize-user-html-with-iframes.test.js +238 -0
- package/lib/esm/tests/api_tests/security/F-0013-sanitize-user-html-with-iframes.test.js.map +1 -0
- package/lib/esm/tests/api_tests/security/F-0015-webhook-outbound-ssrf.test.d.ts +29 -0
- package/lib/esm/tests/api_tests/security/F-0015-webhook-outbound-ssrf.test.d.ts.map +1 -0
- package/lib/esm/tests/api_tests/security/F-0015-webhook-outbound-ssrf.test.js +436 -0
- package/lib/esm/tests/api_tests/security/F-0015-webhook-outbound-ssrf.test.js.map +1 -0
- package/lib/esm/tests/api_tests/security/F-0025-proxy-image-unauth-ssrf.test.d.ts +35 -0
- package/lib/esm/tests/api_tests/security/F-0025-proxy-image-unauth-ssrf.test.d.ts.map +1 -0
- package/lib/esm/tests/api_tests/security/F-0025-proxy-image-unauth-ssrf.test.js +224 -0
- package/lib/esm/tests/api_tests/security/F-0025-proxy-image-unauth-ssrf.test.js.map +1 -0
- package/lib/esm/tests/api_tests/security/F-0166-allowed-paths-wildcard-bypass.test.d.ts.map +1 -1
- package/lib/esm/tests/api_tests/security/F-0166-allowed-paths-wildcard-bypass.test.js +524 -294
- package/lib/esm/tests/api_tests/security/F-0166-allowed-paths-wildcard-bypass.test.js.map +1 -1
- package/lib/esm/tests/tests.d.ts.map +1 -1
- package/lib/esm/tests/tests.js +431 -230
- package/lib/esm/tests/tests.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -10
- package/src/tests/api_tests/custom_dashboards.test.ts +92 -0
- package/src/tests/api_tests/file_download_unicode_names.test.ts +223 -0
- package/src/tests/api_tests/openloop_webhooks.test.ts +138 -0
- package/src/tests/api_tests/phone_calls_cold_transfer.test.ts +54 -0
- package/src/tests/api_tests/security/F-0013-sanitize-user-html-with-iframes.test.ts +215 -0
- package/src/tests/api_tests/security/F-0166-allowed-paths-wildcard-bypass.test.ts +215 -0
- package/src/tests/tests.ts +212 -1
- package/test_generated.pdf +0 -0
package/lib/esm/tests/tests.js
CHANGED
|
@@ -77,6 +77,7 @@ import { user_portal_settings_tests } from "./api_tests/user_portal_settings.tes
|
|
|
77
77
|
import { integrations_redacted_tests } from "./api_tests/integrations_redacted.test";
|
|
78
78
|
import { healthie_multi_integration_tests } from "./api_tests/healthie_multi_integration.test";
|
|
79
79
|
import { get_some_projection_tests } from "./api_tests/get_some_projection.test";
|
|
80
|
+
import { file_download_unicode_names_tests } from "./api_tests/file_download_unicode_names.test";
|
|
80
81
|
import { mdb_sort_tests } from "./api_tests/mdb_sort.test";
|
|
81
82
|
import { create_user_notifications_trigger_tests } from "./api_tests/create_user_notifications_trigger.test";
|
|
82
83
|
import { inbox_thread_assignment_updates_tests } from "./api_tests/inbox_thread_assignment_updates.test";
|
|
@@ -129,6 +130,7 @@ import { invite_user_enumeration_tests } from "./api_tests/security/F-0007-invit
|
|
|
129
130
|
import { register_business_id_injection_tests } from "./api_tests/security/register_business_id_injection.test";
|
|
130
131
|
import { handle_incoming_communication_cross_tenant_tests } from "./api_tests/security/F-0008-handle-incoming-communication-cross-tenant.test";
|
|
131
132
|
import { sanitize_user_html_xss_tests } from "./api_tests/security/F-0013-sanitize-user-html.test";
|
|
133
|
+
import { sanitize_user_html_with_iframes_tests } from "./api_tests/security/F-0013-sanitize-user-html-with-iframes.test";
|
|
132
134
|
import { prototype_pollution_tests } from "./api_tests/security/F-0016-prototype-pollution.test";
|
|
133
135
|
import { enduser_cross_create_tests } from "./api_tests/security/F-0116-F-0119-enduser-cross-create.test";
|
|
134
136
|
import { globalunique_leak_tests } from "./api_tests/security/F-0145-globalunique-leak.test";
|
|
@@ -9254,9 +9256,9 @@ var auto_reply_tests = function () { return __awaiter(void 0, void 0, void 0, fu
|
|
|
9254
9256
|
});
|
|
9255
9257
|
}); };
|
|
9256
9258
|
var merge_enduser_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
9257
|
-
var stripeCustomerId, stripeKey, _a, source, destination, otherEnduser, _b, emailToMove, email, _c, eventToMove, event, _d, roomToMove, room, chatToMove, chat;
|
|
9258
|
-
return __generator(this, function (
|
|
9259
|
-
switch (
|
|
9259
|
+
var stripeCustomerId, stripeKey, _a, source, destination, otherEnduser, _b, emailToMove, email, _c, eventToMove, event, _d, roomToMove, room, chatToMove, chat, _f, noInsuranceSource, noInsuranceDestination;
|
|
9260
|
+
return __generator(this, function (_g) {
|
|
9261
|
+
switch (_g.label) {
|
|
9260
9262
|
case 0:
|
|
9261
9263
|
log_header("Merge Endusers");
|
|
9262
9264
|
stripeCustomerId = 'example_cu_id';
|
|
@@ -9277,39 +9279,39 @@ var merge_enduser_tests = function () { return __awaiter(void 0, void 0, void 0,
|
|
|
9277
9279
|
{ email: 'other@tellescope.com' },
|
|
9278
9280
|
])];
|
|
9279
9281
|
case 1:
|
|
9280
|
-
_a = (
|
|
9282
|
+
_a = (_g.sent()).created, source = _a[0], destination = _a[1], otherEnduser = _a[2];
|
|
9281
9283
|
return [4 /*yield*/, sdk.api.emails.createSome([
|
|
9282
9284
|
{ enduserId: source.id, subject: 'subject', logOnly: true, textContent: 'email' },
|
|
9283
9285
|
{ enduserId: otherEnduser.id, subject: 'subject', logOnly: true, textContent: 'email' },
|
|
9284
9286
|
])];
|
|
9285
9287
|
case 2:
|
|
9286
|
-
_b = (
|
|
9288
|
+
_b = (_g.sent()).created, emailToMove = _b[0], email = _b[1];
|
|
9287
9289
|
return [4 /*yield*/, sdk.api.calendar_events.createSome([
|
|
9288
9290
|
{ attendees: [{ type: 'enduser', id: source.id }], durationInMinutes: 5, startTimeInMS: Date.now(), title: 'title' },
|
|
9289
9291
|
{ attendees: [{ type: 'enduser', id: otherEnduser.id }], durationInMinutes: 5, startTimeInMS: Date.now(), title: 'title' },
|
|
9290
9292
|
])];
|
|
9291
9293
|
case 3:
|
|
9292
|
-
_c = (
|
|
9294
|
+
_c = (_g.sent()).created, eventToMove = _c[0], event = _c[1];
|
|
9293
9295
|
return [4 /*yield*/, sdk.api.chat_rooms.createSome([
|
|
9294
9296
|
{ enduserIds: [source.id], title: 'title' },
|
|
9295
9297
|
{ enduserIds: [otherEnduser.id], title: 'title' },
|
|
9296
9298
|
])];
|
|
9297
9299
|
case 4:
|
|
9298
|
-
_d = (
|
|
9300
|
+
_d = (_g.sent()).created, roomToMove = _d[0], room = _d[1];
|
|
9299
9301
|
return [4 /*yield*/, sdk.api.chats.createOne({ roomId: roomToMove.id, senderId: source.id, message: 'test' })];
|
|
9300
9302
|
case 5:
|
|
9301
|
-
chatToMove =
|
|
9303
|
+
chatToMove = _g.sent();
|
|
9302
9304
|
return [4 /*yield*/, sdk.api.chats.createOne({
|
|
9303
9305
|
roomId: room.id, senderId: otherEnduser.id, message: 'test'
|
|
9304
9306
|
})];
|
|
9305
9307
|
case 6:
|
|
9306
|
-
chat =
|
|
9308
|
+
chat = _g.sent();
|
|
9307
9309
|
return [4 /*yield*/, sdk.api.endusers.merge({ sourceEnduserId: source.id, destinationEnduserId: destination.id })];
|
|
9308
9310
|
case 7:
|
|
9309
|
-
|
|
9311
|
+
_g.sent();
|
|
9310
9312
|
return [4 /*yield*/, async_test("Source is deleted", function () { return sdk.api.endusers.getOne(source.id); }, handleAnyError)];
|
|
9311
9313
|
case 8:
|
|
9312
|
-
|
|
9314
|
+
_g.sent();
|
|
9313
9315
|
return [4 /*yield*/, async_test("Destination merged", function () { return sdk.api.endusers.getOne(destination.id); }, { onResult: function (e) {
|
|
9314
9316
|
var _a, _b, _c, _d, _f, _g, _h, _j, _k, _l, _m;
|
|
9315
9317
|
return (e.email === destination.email
|
|
@@ -9329,39 +9331,88 @@ var merge_enduser_tests = function () { return __awaiter(void 0, void 0, void 0,
|
|
|
9329
9331
|
&& ((_m = e.insuranceSecondary) === null || _m === void 0 ? void 0 : _m.memberId) === 'src-secondary');
|
|
9330
9332
|
} })];
|
|
9331
9333
|
case 9:
|
|
9332
|
-
|
|
9334
|
+
_g.sent();
|
|
9333
9335
|
return [4 /*yield*/, async_test("Other email is unchanged", function () { return sdk.api.emails.getOne(email.id); }, { onResult: function (e) { return e.enduserId === otherEnduser.id; } })];
|
|
9334
9336
|
case 10:
|
|
9335
|
-
|
|
9337
|
+
_g.sent();
|
|
9336
9338
|
return [4 /*yield*/, async_test("Other event is unchanged", function () { return sdk.api.calendar_events.getOne(event.id); }, { onResult: function (e) { var _a; return ((_a = e.attendees) === null || _a === void 0 ? void 0 : _a.length) === 1 && !!e.attendees.find(function (e) { return e.id === otherEnduser.id; }); } })];
|
|
9337
9339
|
case 11:
|
|
9338
|
-
|
|
9340
|
+
_g.sent();
|
|
9339
9341
|
return [4 /*yield*/, async_test("Other room is unchanged", function () { return sdk.api.chat_rooms.getOne(room.id); }, { onResult: function (e) { var _a, _b; return ((_a = room.enduserIds) === null || _a === void 0 ? void 0 : _a.length) === 1 && !!((_b = e.enduserIds) === null || _b === void 0 ? void 0 : _b.find(function (id) { return id === otherEnduser.id; })); } })];
|
|
9340
9342
|
case 12:
|
|
9341
|
-
|
|
9343
|
+
_g.sent();
|
|
9342
9344
|
return [4 /*yield*/, async_test("Other chat is unchanged", function () { return sdk.api.chats.getOne(chat.id); }, { onResult: function (e) { return e.senderId === otherEnduser.id; } })];
|
|
9343
9345
|
case 13:
|
|
9344
|
-
|
|
9346
|
+
_g.sent();
|
|
9345
9347
|
return [4 /*yield*/, async_test("Email moved", function () { return sdk.api.emails.getOne(emailToMove.id); }, { onResult: function (e) { return e.enduserId === destination.id; } })];
|
|
9346
9348
|
case 14:
|
|
9347
|
-
|
|
9349
|
+
_g.sent();
|
|
9348
9350
|
return [4 /*yield*/, async_test("Chat moved", function () { return sdk.api.chats.getOne(chatToMove.id); }, { onResult: function (e) { return e.senderId === destination.id; } })];
|
|
9349
9351
|
case 15:
|
|
9350
|
-
|
|
9352
|
+
_g.sent();
|
|
9351
9353
|
return [4 /*yield*/, async_test("Room moved", function () { return sdk.api.chat_rooms.getOne(roomToMove.id); }, { onResult: function (e) { var _a, _b; return ((_a = e.enduserIds) === null || _a === void 0 ? void 0 : _a.length) === 1 && !!((_b = e.enduserIds) === null || _b === void 0 ? void 0 : _b.includes(destination.id)); } })];
|
|
9352
9354
|
case 16:
|
|
9353
|
-
|
|
9354
|
-
return [4 /*yield*/, async_test("Event moved", function () { return sdk.api.calendar_events.getOne(eventToMove.id); }, { onResult: function (e) { var _a; return e.attendees.length === 1 && !!((_a = e.attendees) === null || _a === void 0 ? void 0 : _a.find(function (a) { return a.id === destination.id; })); } })
|
|
9355
|
+
_g.sent();
|
|
9356
|
+
return [4 /*yield*/, async_test("Event moved", function () { return sdk.api.calendar_events.getOne(eventToMove.id); }, { onResult: function (e) { var _a; return e.attendees.length === 1 && !!((_a = e.attendees) === null || _a === void 0 ? void 0 : _a.find(function (a) { return a.id === destination.id; })); } })
|
|
9357
|
+
// merging two endusers that both lack insurance must leave the fields absent, NOT null.
|
|
9358
|
+
// a stored null breaks every later partial update: those get flattened to dotted paths
|
|
9359
|
+
// ('insurance.memberId'), and MongoDB rejects a dotted $set under a null parent
|
|
9360
|
+
];
|
|
9355
9361
|
case 17:
|
|
9356
|
-
|
|
9362
|
+
_g.sent();
|
|
9363
|
+
return [4 /*yield*/, sdk.api.endusers.createSome([
|
|
9364
|
+
{ email: 'noins-source@tellescope.com', fname: 'no', lname: 'insurance' },
|
|
9365
|
+
{ email: 'noins-destination@tellescope.com' },
|
|
9366
|
+
])];
|
|
9367
|
+
case 18:
|
|
9368
|
+
_f = (_g.sent()).created, noInsuranceSource = _f[0], noInsuranceDestination = _f[1];
|
|
9369
|
+
return [4 /*yield*/, sdk.api.endusers.merge({
|
|
9370
|
+
sourceEnduserId: noInsuranceSource.id,
|
|
9371
|
+
destinationEnduserId: noInsuranceDestination.id,
|
|
9372
|
+
})];
|
|
9373
|
+
case 19:
|
|
9374
|
+
_g.sent();
|
|
9375
|
+
return [4 /*yield*/, async_test("Merged endusers have no null insurance", function () { return sdk.api.endusers.getOne(noInsuranceDestination.id); }, { onResult: function (e) { return e.insurance === undefined && e.insuranceSecondary === undefined; } })];
|
|
9376
|
+
case 20:
|
|
9377
|
+
_g.sent();
|
|
9378
|
+
return [4 /*yield*/, async_test("Partial insurance update applies after merge", function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
9379
|
+
return __generator(this, function (_a) {
|
|
9380
|
+
switch (_a.label) {
|
|
9381
|
+
case 0: return [4 /*yield*/, sdk.api.endusers.updateOne(noInsuranceDestination.id, {
|
|
9382
|
+
insurance: { memberId: 'M1', payerName: 'Test Payer' },
|
|
9383
|
+
})]; // no replaceObjectFields, matching the standard update from the UI
|
|
9384
|
+
case 1:
|
|
9385
|
+
_a.sent(); // no replaceObjectFields, matching the standard update from the UI
|
|
9386
|
+
return [4 /*yield*/, sdk.api.endusers.getOne(noInsuranceDestination.id)];
|
|
9387
|
+
case 2: // no replaceObjectFields, matching the standard update from the UI
|
|
9388
|
+
return [2 /*return*/, _a.sent()];
|
|
9389
|
+
}
|
|
9390
|
+
});
|
|
9391
|
+
}); }, { onResult: function (e) { var _a, _b; return ((_a = e.insurance) === null || _a === void 0 ? void 0 : _a.memberId) === 'M1' && ((_b = e.insurance) === null || _b === void 0 ? void 0 : _b.payerName) === 'Test Payer'; } })];
|
|
9392
|
+
case 21:
|
|
9393
|
+
_g.sent();
|
|
9394
|
+
return [4 /*yield*/, async_test("Second partial insurance update merges", function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
9395
|
+
return __generator(this, function (_a) {
|
|
9396
|
+
switch (_a.label) {
|
|
9397
|
+
case 0: return [4 /*yield*/, sdk.api.endusers.updateOne(noInsuranceDestination.id, { insurance: { groupNumber: 'G1' } })];
|
|
9398
|
+
case 1:
|
|
9399
|
+
_a.sent();
|
|
9400
|
+
return [4 /*yield*/, sdk.api.endusers.getOne(noInsuranceDestination.id)];
|
|
9401
|
+
case 2: return [2 /*return*/, _a.sent()];
|
|
9402
|
+
}
|
|
9403
|
+
});
|
|
9404
|
+
}); }, { onResult: function (e) { var _a, _b; return ((_a = e.insurance) === null || _a === void 0 ? void 0 : _a.groupNumber) === 'G1' && ((_b = e.insurance) === null || _b === void 0 ? void 0 : _b.memberId) === 'M1'; } })];
|
|
9405
|
+
case 22:
|
|
9406
|
+
_g.sent();
|
|
9357
9407
|
return [4 /*yield*/, Promise.all([
|
|
9358
9408
|
sdk.api.endusers.deleteOne(destination.id),
|
|
9359
9409
|
sdk.api.endusers.deleteOne(otherEnduser.id),
|
|
9410
|
+
sdk.api.endusers.deleteOne(noInsuranceDestination.id),
|
|
9360
9411
|
sdk.api.calendar_events.deleteOne(event.id),
|
|
9361
9412
|
sdk.api.calendar_events.deleteOne(eventToMove.id),
|
|
9362
9413
|
])];
|
|
9363
|
-
case
|
|
9364
|
-
|
|
9414
|
+
case 23:
|
|
9415
|
+
_g.sent();
|
|
9365
9416
|
return [2 /*return*/];
|
|
9366
9417
|
}
|
|
9367
9418
|
});
|
|
@@ -10034,31 +10085,32 @@ var pollForResults = function (f, evaluate, intervalInMS, iterations, shouldErro
|
|
|
10034
10085
|
});
|
|
10035
10086
|
};
|
|
10036
10087
|
var test_ticket_automation_assignment_and_optimization = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
10037
|
-
var users, journey, queue, foregroundTestCounter, testForegroundTicket, backgroundTestCounter, testBackgroundTicket, enduser, _a, _b, _c;
|
|
10038
|
-
|
|
10039
|
-
|
|
10088
|
+
var users, journey, queue, foregroundTestCounter, testForegroundTicket, backgroundTestCounter, testBackgroundTicket, enduser, HOST_A, HOST_B, appointmentHostInfo, createHostedEvent, e, older, newer, e, older, newer, e, deleted, hosted, e, enduserOnly, hosted, e, older, newer, _a, _b, _c;
|
|
10089
|
+
var _d;
|
|
10090
|
+
return __generator(this, function (_f) {
|
|
10091
|
+
switch (_f.label) {
|
|
10040
10092
|
case 0:
|
|
10041
10093
|
log_header("Ticket Automation / Assignment Tests");
|
|
10042
10094
|
return [4 /*yield*/, sdk.api.users.getSome()];
|
|
10043
10095
|
case 1:
|
|
10044
|
-
users =
|
|
10096
|
+
users = _f.sent();
|
|
10045
10097
|
if (users.length < 3)
|
|
10046
10098
|
throw new Error("Must have at least 3 users to detect invalid assignment");
|
|
10047
10099
|
return [4 /*yield*/, sdk.api.users.updateOne(sdk.userInfo.id, { tags: ['tag1', 'tag2'] })];
|
|
10048
10100
|
case 2:
|
|
10049
|
-
|
|
10101
|
+
_f.sent();
|
|
10050
10102
|
return [4 /*yield*/, sdk.api.users.updateOne(sdkNonAdmin.userInfo.id, { tags: ['tag1', 'tag3'] })];
|
|
10051
10103
|
case 3:
|
|
10052
|
-
|
|
10104
|
+
_f.sent();
|
|
10053
10105
|
return [4 /*yield*/, sdk.api.journeys.createOne({ title: "Testing" })];
|
|
10054
10106
|
case 4:
|
|
10055
|
-
journey =
|
|
10107
|
+
journey = _f.sent();
|
|
10056
10108
|
return [4 /*yield*/, sdk.api.ticket_queues.createOne({ title: 'test queue', userIds: [] })];
|
|
10057
10109
|
case 5:
|
|
10058
|
-
queue =
|
|
10110
|
+
queue = _f.sent();
|
|
10059
10111
|
foregroundTestCounter = 0;
|
|
10060
10112
|
testForegroundTicket = function (_a) {
|
|
10061
|
-
var assignedTo = _a.assignedTo, info = _a.info, validOwners = _a.validOwners, enduser = _a.enduser, closedForReason = _a.closedForReason, testDelayedChild = _a.testDelayedChild;
|
|
10113
|
+
var assignedTo = _a.assignedTo, info = _a.info, validOwners = _a.validOwners, enduser = _a.enduser, closedForReason = _a.closedForReason, testDelayedChild = _a.testDelayedChild, calendarEventId = _a.calendarEventId, ticketOwner = _a.ticketOwner;
|
|
10062
10114
|
return __awaiter(void 0, void 0, void 0, function () {
|
|
10063
10115
|
var e, _b, step, statusStep, child, ticket;
|
|
10064
10116
|
var _c;
|
|
@@ -10106,14 +10158,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10106
10158
|
})];
|
|
10107
10159
|
case 5:
|
|
10108
10160
|
child = _d.sent();
|
|
10109
|
-
return [4 /*yield*/, sdk.api.tickets.createOne({
|
|
10110
|
-
title: 'foreground ticket',
|
|
10111
|
-
enduserId: e.id,
|
|
10112
|
-
automationStepId: PLACEHOLDER_ID,
|
|
10113
|
-
journeyId: journey.id,
|
|
10114
|
-
owner: validOwners[0],
|
|
10115
|
-
closedForReason: closedForReason,
|
|
10116
|
-
})];
|
|
10161
|
+
return [4 /*yield*/, sdk.api.tickets.createOne(__assign({ title: 'foreground ticket', enduserId: e.id, automationStepId: PLACEHOLDER_ID, journeyId: journey.id, owner: ticketOwner !== null && ticketOwner !== void 0 ? ticketOwner : validOwners[0], closedForReason: closedForReason }, (calendarEventId ? { calendarEventId: calendarEventId } : {})))];
|
|
10117
10162
|
case 6:
|
|
10118
10163
|
ticket = _d.sent();
|
|
10119
10164
|
return [4 /*yield*/, async_test("Foreground ticket assignment ".concat(++foregroundTestCounter), function () { return sdk.api.tickets.close_ticket({ ticketId: ticket.id, closedForReason: closedForReason }); }, { onResult: function (_a) {
|
|
@@ -10162,7 +10207,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10162
10207
|
testDelayedChild: true,
|
|
10163
10208
|
})];
|
|
10164
10209
|
case 6:
|
|
10165
|
-
|
|
10210
|
+
_f.sent();
|
|
10166
10211
|
return [4 /*yield*/, testForegroundTicket({
|
|
10167
10212
|
assignedTo: [],
|
|
10168
10213
|
info: {
|
|
@@ -10173,7 +10218,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10173
10218
|
testDelayedChild: true,
|
|
10174
10219
|
})];
|
|
10175
10220
|
case 7:
|
|
10176
|
-
|
|
10221
|
+
_f.sent();
|
|
10177
10222
|
return [4 /*yield*/, testForegroundTicket({
|
|
10178
10223
|
assignedTo: [],
|
|
10179
10224
|
info: {
|
|
@@ -10185,7 +10230,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10185
10230
|
testDelayedChild: true,
|
|
10186
10231
|
})];
|
|
10187
10232
|
case 8:
|
|
10188
|
-
|
|
10233
|
+
_f.sent();
|
|
10189
10234
|
return [4 /*yield*/, testForegroundTicket({
|
|
10190
10235
|
assignedTo: [],
|
|
10191
10236
|
info: {
|
|
@@ -10195,7 +10240,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10195
10240
|
validOwners: [sdkNonAdmin.userInfo.id],
|
|
10196
10241
|
})];
|
|
10197
10242
|
case 9:
|
|
10198
|
-
|
|
10243
|
+
_f.sent();
|
|
10199
10244
|
return [4 /*yield*/, testForegroundTicket({
|
|
10200
10245
|
assignedTo: [],
|
|
10201
10246
|
info: {
|
|
@@ -10205,7 +10250,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10205
10250
|
validOwners: [sdkNonAdmin.userInfo.id],
|
|
10206
10251
|
})];
|
|
10207
10252
|
case 10:
|
|
10208
|
-
|
|
10253
|
+
_f.sent();
|
|
10209
10254
|
return [4 /*yield*/, testForegroundTicket({
|
|
10210
10255
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
10211
10256
|
info: {
|
|
@@ -10215,7 +10260,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10215
10260
|
validOwners: [sdkNonAdmin.userInfo.id],
|
|
10216
10261
|
})];
|
|
10217
10262
|
case 11:
|
|
10218
|
-
|
|
10263
|
+
_f.sent();
|
|
10219
10264
|
return [4 /*yield*/, testForegroundTicket({
|
|
10220
10265
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
10221
10266
|
info: {
|
|
@@ -10225,7 +10270,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10225
10270
|
validOwners: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
10226
10271
|
})];
|
|
10227
10272
|
case 12:
|
|
10228
|
-
|
|
10273
|
+
_f.sent();
|
|
10229
10274
|
return [4 /*yield*/, testForegroundTicket({
|
|
10230
10275
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
10231
10276
|
info: {
|
|
@@ -10235,7 +10280,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10235
10280
|
validOwners: [sdk.userInfo.id, sdkNonAdmin.userInfo.id,],
|
|
10236
10281
|
})];
|
|
10237
10282
|
case 13:
|
|
10238
|
-
|
|
10283
|
+
_f.sent();
|
|
10239
10284
|
return [4 /*yield*/, testForegroundTicket({
|
|
10240
10285
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
10241
10286
|
info: {
|
|
@@ -10245,7 +10290,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10245
10290
|
validOwners: [sdk.userInfo.id],
|
|
10246
10291
|
})];
|
|
10247
10292
|
case 14:
|
|
10248
|
-
|
|
10293
|
+
_f.sent();
|
|
10249
10294
|
return [4 /*yield*/, testForegroundTicket({
|
|
10250
10295
|
assignedTo: [],
|
|
10251
10296
|
info: {
|
|
@@ -10255,10 +10300,10 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10255
10300
|
validOwners: [sdkNonAdmin.userInfo.id],
|
|
10256
10301
|
})];
|
|
10257
10302
|
case 15:
|
|
10258
|
-
|
|
10303
|
+
_f.sent();
|
|
10259
10304
|
backgroundTestCounter = 0;
|
|
10260
10305
|
testBackgroundTicket = function (_a) {
|
|
10261
|
-
var assignedTo = _a.assignedTo, info = _a.info, validOwners = _a.validOwners, enduser = _a.enduser;
|
|
10306
|
+
var assignedTo = _a.assignedTo, info = _a.info, validOwners = _a.validOwners, enduser = _a.enduser, journeyContext = _a.journeyContext;
|
|
10262
10307
|
return __awaiter(void 0, void 0, void 0, function () {
|
|
10263
10308
|
var e, _b;
|
|
10264
10309
|
return __generator(this, function (_c) {
|
|
@@ -10272,15 +10317,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10272
10317
|
_c.label = 2;
|
|
10273
10318
|
case 2:
|
|
10274
10319
|
e = _b;
|
|
10275
|
-
return [4 /*yield*/, sdk.api.automated_actions.createOne({
|
|
10276
|
-
action: { type: 'createTicket', info: __assign(__assign({}, info), { title: 'background ticket' }) },
|
|
10277
|
-
automationStepId: PLACEHOLDER_ID,
|
|
10278
|
-
enduserId: e.id,
|
|
10279
|
-
event: { type: 'afterAction', info: { automationStepId: PLACEHOLDER_ID, delay: 0, delayInMS: 0, unit: 'Days' } },
|
|
10280
|
-
journeyId: journey.id,
|
|
10281
|
-
status: 'active',
|
|
10282
|
-
processAfter: Date.now(),
|
|
10283
|
-
})];
|
|
10320
|
+
return [4 /*yield*/, sdk.api.automated_actions.createOne(__assign({ action: { type: 'createTicket', info: __assign(__assign({}, info), { title: 'background ticket' }) }, automationStepId: PLACEHOLDER_ID, enduserId: e.id, event: { type: 'afterAction', info: { automationStepId: PLACEHOLDER_ID, delay: 0, delayInMS: 0, unit: 'Days' } }, journeyId: journey.id, status: 'active', processAfter: Date.now() }, (journeyContext ? { journeyContext: journeyContext } : {})))];
|
|
10284
10321
|
case 3:
|
|
10285
10322
|
_c.sent();
|
|
10286
10323
|
return [4 /*yield*/, async_test("Background ticket assignment ".concat(++backgroundTestCounter), function () { return pollForResults(function () { return sdk.api.tickets.getSome({ filter: { enduserId: e.id, title: 'background ticket' } }); }, function (t) { return !!t.length; }, 500, 20); }, {
|
|
@@ -10306,7 +10343,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10306
10343
|
validOwners: [],
|
|
10307
10344
|
})];
|
|
10308
10345
|
case 16:
|
|
10309
|
-
|
|
10346
|
+
_f.sent();
|
|
10310
10347
|
return [4 /*yield*/, testBackgroundTicket({
|
|
10311
10348
|
assignedTo: [],
|
|
10312
10349
|
info: {
|
|
@@ -10316,7 +10353,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10316
10353
|
validOwners: [sdk.userInfo.id],
|
|
10317
10354
|
})];
|
|
10318
10355
|
case 17:
|
|
10319
|
-
|
|
10356
|
+
_f.sent();
|
|
10320
10357
|
return [4 /*yield*/, testBackgroundTicket({
|
|
10321
10358
|
assignedTo: [],
|
|
10322
10359
|
info: {
|
|
@@ -10328,16 +10365,16 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10328
10365
|
// ticket needs existing enduser, previous owner for test to work
|
|
10329
10366
|
];
|
|
10330
10367
|
case 18:
|
|
10331
|
-
|
|
10368
|
+
_f.sent();
|
|
10332
10369
|
return [4 /*yield*/, sdk.api.endusers.createOne({ fname: 'previous-owner-test' })];
|
|
10333
10370
|
case 19:
|
|
10334
|
-
enduser =
|
|
10371
|
+
enduser = _f.sent();
|
|
10335
10372
|
return [4 /*yield*/, sdk.api.tickets.createOne({
|
|
10336
10373
|
// title should be different than 'background test' so it doesn't create false positive test
|
|
10337
10374
|
title: 'previous-owner-test', enduserId: enduser.id, journeyId: journey.id, owner: sdkNonAdmin.userInfo.id
|
|
10338
10375
|
})];
|
|
10339
10376
|
case 20:
|
|
10340
|
-
|
|
10377
|
+
_f.sent();
|
|
10341
10378
|
return [4 /*yield*/, testBackgroundTicket({
|
|
10342
10379
|
assignedTo: [],
|
|
10343
10380
|
enduser: enduser,
|
|
@@ -10348,7 +10385,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10348
10385
|
validOwners: [sdkNonAdmin.userInfo.id],
|
|
10349
10386
|
})];
|
|
10350
10387
|
case 21:
|
|
10351
|
-
|
|
10388
|
+
_f.sent();
|
|
10352
10389
|
return [4 /*yield*/, testBackgroundTicket({
|
|
10353
10390
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
10354
10391
|
info: {
|
|
@@ -10358,7 +10395,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10358
10395
|
validOwners: [sdkNonAdmin.userInfo.id],
|
|
10359
10396
|
})];
|
|
10360
10397
|
case 22:
|
|
10361
|
-
|
|
10398
|
+
_f.sent();
|
|
10362
10399
|
return [4 /*yield*/, testBackgroundTicket({
|
|
10363
10400
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
10364
10401
|
info: {
|
|
@@ -10368,7 +10405,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10368
10405
|
validOwners: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
10369
10406
|
})];
|
|
10370
10407
|
case 23:
|
|
10371
|
-
|
|
10408
|
+
_f.sent();
|
|
10372
10409
|
return [4 /*yield*/, testBackgroundTicket({
|
|
10373
10410
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
10374
10411
|
info: {
|
|
@@ -10378,7 +10415,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10378
10415
|
validOwners: [sdk.userInfo.id, sdkNonAdmin.userInfo.id,],
|
|
10379
10416
|
})];
|
|
10380
10417
|
case 24:
|
|
10381
|
-
|
|
10418
|
+
_f.sent();
|
|
10382
10419
|
return [4 /*yield*/, testBackgroundTicket({
|
|
10383
10420
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
10384
10421
|
info: {
|
|
@@ -10388,7 +10425,7 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10388
10425
|
validOwners: [sdk.userInfo.id],
|
|
10389
10426
|
})];
|
|
10390
10427
|
case 25:
|
|
10391
|
-
|
|
10428
|
+
_f.sent();
|
|
10392
10429
|
return [4 /*yield*/, testBackgroundTicket({
|
|
10393
10430
|
assignedTo: [],
|
|
10394
10431
|
info: {
|
|
@@ -10396,18 +10433,161 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
10396
10433
|
defaultAssignee: sdk.userInfo.id
|
|
10397
10434
|
},
|
|
10398
10435
|
validOwners: [sdkNonAdmin.userInfo.id],
|
|
10399
|
-
})
|
|
10436
|
+
})
|
|
10437
|
+
// 'Recently-Booked Appointment Host' assignment
|
|
10438
|
+
// journeyContext.calendarEventId, when it resolves to a host, takes priority over the legacy
|
|
10439
|
+
// "newest event for this enduser" lookup. one enduser per case, to avoid trigger throttling.
|
|
10440
|
+
];
|
|
10400
10441
|
case 26:
|
|
10401
|
-
|
|
10442
|
+
_f.sent();
|
|
10443
|
+
HOST_A = sdkNonAdmin.userInfo.id;
|
|
10444
|
+
HOST_B = sdk.userInfo.id;
|
|
10445
|
+
appointmentHostInfo = function (defaultAssignee) { return ({
|
|
10446
|
+
assignmentStrategy: { type: 'Recently-Booked Appointment Host', info: {} },
|
|
10447
|
+
defaultAssignee: defaultAssignee,
|
|
10448
|
+
}); };
|
|
10449
|
+
createHostedEvent = function (enduserId, hostId) { return sdk.api.calendar_events.createOne({
|
|
10450
|
+
title: 'appointment host test',
|
|
10451
|
+
durationInMinutes: 30,
|
|
10452
|
+
startTimeInMS: Date.now(),
|
|
10453
|
+
attendees: [{ type: 'enduser', id: enduserId }, { type: 'user', id: hostId }],
|
|
10454
|
+
}); };
|
|
10455
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({ fields: { Tag: 'tag3' } })];
|
|
10456
|
+
case 27:
|
|
10457
|
+
e = _f.sent();
|
|
10458
|
+
return [4 /*yield*/, createHostedEvent(e.id, HOST_A)];
|
|
10459
|
+
case 28:
|
|
10460
|
+
older = _f.sent();
|
|
10461
|
+
return [4 /*yield*/, createHostedEvent(e.id, HOST_B)]; // higher _id, so legacy sort picks this one
|
|
10462
|
+
case 29:
|
|
10463
|
+
newer = _f.sent() // higher _id, so legacy sort picks this one
|
|
10464
|
+
;
|
|
10465
|
+
return [4 /*yield*/, testBackgroundTicket({
|
|
10466
|
+
assignedTo: [],
|
|
10467
|
+
enduser: e,
|
|
10468
|
+
info: appointmentHostInfo(HOST_B),
|
|
10469
|
+
validOwners: [HOST_A],
|
|
10470
|
+
journeyContext: { calendarEventId: older.id },
|
|
10471
|
+
})];
|
|
10472
|
+
case 30:
|
|
10473
|
+
_f.sent();
|
|
10474
|
+
return [4 /*yield*/, Promise.all([older, newer].map(function (ev) { return sdk.api.calendar_events.deleteOne(ev.id); }))];
|
|
10475
|
+
case 31:
|
|
10476
|
+
_f.sent();
|
|
10477
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({ fields: { Tag: 'tag3' } })];
|
|
10478
|
+
case 32:
|
|
10479
|
+
e = _f.sent();
|
|
10480
|
+
return [4 /*yield*/, createHostedEvent(e.id, HOST_A)];
|
|
10481
|
+
case 33:
|
|
10482
|
+
older = _f.sent();
|
|
10483
|
+
return [4 /*yield*/, createHostedEvent(e.id, HOST_B)];
|
|
10484
|
+
case 34:
|
|
10485
|
+
newer = _f.sent();
|
|
10486
|
+
return [4 /*yield*/, testBackgroundTicket({
|
|
10487
|
+
assignedTo: [],
|
|
10488
|
+
enduser: e,
|
|
10489
|
+
info: appointmentHostInfo(HOST_A),
|
|
10490
|
+
validOwners: [HOST_B], // newest created event's host
|
|
10491
|
+
})];
|
|
10492
|
+
case 35:
|
|
10493
|
+
_f.sent();
|
|
10494
|
+
return [4 /*yield*/, Promise.all([older, newer].map(function (ev) { return sdk.api.calendar_events.deleteOne(ev.id); }))];
|
|
10495
|
+
case 36:
|
|
10496
|
+
_f.sent();
|
|
10497
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({ fields: { Tag: 'tag3' } })];
|
|
10498
|
+
case 37:
|
|
10499
|
+
e = _f.sent();
|
|
10500
|
+
return [4 /*yield*/, createHostedEvent(e.id, HOST_B)];
|
|
10501
|
+
case 38:
|
|
10502
|
+
deleted = _f.sent();
|
|
10503
|
+
return [4 /*yield*/, sdk.api.calendar_events.deleteOne(deleted.id)];
|
|
10504
|
+
case 39:
|
|
10505
|
+
_f.sent();
|
|
10506
|
+
return [4 /*yield*/, createHostedEvent(e.id, HOST_A)];
|
|
10507
|
+
case 40:
|
|
10508
|
+
hosted = _f.sent();
|
|
10509
|
+
return [4 /*yield*/, testBackgroundTicket({
|
|
10510
|
+
assignedTo: [],
|
|
10511
|
+
enduser: e,
|
|
10512
|
+
info: appointmentHostInfo(HOST_B),
|
|
10513
|
+
validOwners: [HOST_A],
|
|
10514
|
+
journeyContext: { calendarEventId: deleted.id },
|
|
10515
|
+
})];
|
|
10516
|
+
case 41:
|
|
10517
|
+
_f.sent();
|
|
10518
|
+
return [4 /*yield*/, sdk.api.calendar_events.deleteOne(hosted.id)];
|
|
10519
|
+
case 42:
|
|
10520
|
+
_f.sent();
|
|
10521
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({ fields: { Tag: 'tag3' } })];
|
|
10522
|
+
case 43:
|
|
10523
|
+
e = _f.sent();
|
|
10524
|
+
return [4 /*yield*/, sdk.api.calendar_events.createOne({
|
|
10525
|
+
title: 'appointment host test, no host',
|
|
10526
|
+
durationInMinutes: 30,
|
|
10527
|
+
startTimeInMS: Date.now(),
|
|
10528
|
+
attendees: [{ type: 'enduser', id: e.id }],
|
|
10529
|
+
})];
|
|
10530
|
+
case 44:
|
|
10531
|
+
enduserOnly = _f.sent();
|
|
10532
|
+
return [4 /*yield*/, createHostedEvent(e.id, HOST_A)];
|
|
10533
|
+
case 45:
|
|
10534
|
+
hosted = _f.sent();
|
|
10535
|
+
return [4 /*yield*/, testBackgroundTicket({
|
|
10536
|
+
assignedTo: [],
|
|
10537
|
+
enduser: e,
|
|
10538
|
+
info: appointmentHostInfo(HOST_B),
|
|
10539
|
+
validOwners: [HOST_A],
|
|
10540
|
+
journeyContext: { calendarEventId: enduserOnly.id },
|
|
10541
|
+
})];
|
|
10542
|
+
case 46:
|
|
10543
|
+
_f.sent();
|
|
10544
|
+
return [4 /*yield*/, Promise.all([enduserOnly, hosted].map(function (ev) { return sdk.api.calendar_events.deleteOne(ev.id); }))];
|
|
10545
|
+
case 47:
|
|
10546
|
+
_f.sent();
|
|
10547
|
+
// no events at all -> no resolvable host, so defaultAssignee wins
|
|
10548
|
+
return [4 /*yield*/, testBackgroundTicket({
|
|
10549
|
+
assignedTo: [],
|
|
10550
|
+
info: appointmentHostInfo(HOST_A),
|
|
10551
|
+
validOwners: [HOST_A],
|
|
10552
|
+
})
|
|
10553
|
+
// api path: close_ticket copies the original ticket's calendarEventId into journeyContext
|
|
10554
|
+
];
|
|
10555
|
+
case 48:
|
|
10556
|
+
// no events at all -> no resolvable host, so defaultAssignee wins
|
|
10557
|
+
_f.sent();
|
|
10558
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({
|
|
10559
|
+
journeys: (_d = {}, _d[journey.id] = '', _d), fields: { Tag: 'tag3' },
|
|
10560
|
+
})];
|
|
10561
|
+
case 49:
|
|
10562
|
+
e = _f.sent();
|
|
10563
|
+
return [4 /*yield*/, createHostedEvent(e.id, HOST_A)];
|
|
10564
|
+
case 50:
|
|
10565
|
+
older = _f.sent();
|
|
10566
|
+
return [4 /*yield*/, createHostedEvent(e.id, HOST_B)];
|
|
10567
|
+
case 51:
|
|
10568
|
+
newer = _f.sent();
|
|
10569
|
+
return [4 /*yield*/, testForegroundTicket({
|
|
10570
|
+
assignedTo: [],
|
|
10571
|
+
enduser: e,
|
|
10572
|
+
info: appointmentHostInfo(HOST_B),
|
|
10573
|
+
validOwners: [HOST_A],
|
|
10574
|
+
calendarEventId: older.id,
|
|
10575
|
+
ticketOwner: HOST_B, // so a previous-owner style fallback would also fail
|
|
10576
|
+
})];
|
|
10577
|
+
case 52:
|
|
10578
|
+
_f.sent();
|
|
10579
|
+
return [4 /*yield*/, Promise.all([older, newer].map(function (ev) { return sdk.api.calendar_events.deleteOne(ev.id); }))];
|
|
10580
|
+
case 53:
|
|
10581
|
+
_f.sent();
|
|
10402
10582
|
_b = (_a = Promise).all;
|
|
10403
10583
|
return [4 /*yield*/, sdk.api.journeys.deleteOne(journey.id)];
|
|
10404
|
-
case
|
|
10584
|
+
case 54:
|
|
10405
10585
|
_c = [
|
|
10406
|
-
|
|
10586
|
+
_f.sent()
|
|
10407
10587
|
];
|
|
10408
10588
|
return [4 /*yield*/, sdk.api.ticket_queues.deleteOne(queue.id)];
|
|
10409
|
-
case
|
|
10410
|
-
|
|
10589
|
+
case 55: return [2 /*return*/, _b.apply(_a, [_c.concat([
|
|
10590
|
+
_f.sent()
|
|
10411
10591
|
])])];
|
|
10412
10592
|
}
|
|
10413
10593
|
});
|
|
@@ -15573,7 +15753,7 @@ var replace_enduser_template_values_tests = function () { return __awaiter(void
|
|
|
15573
15753
|
});
|
|
15574
15754
|
}); };
|
|
15575
15755
|
var replace_form_field_template_values_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
15576
|
-
var enduserWithMultilineField, enduserWithLiteralEscapeField, enduserWithCRLFField;
|
|
15756
|
+
var enduserWithMultilineField, enduserWithLiteralEscapeField, enduserWithCRLFField, enduserWithMarkupField, escaped, enduserWithMarkupAndNewline, enduserWithAmpersand;
|
|
15577
15757
|
return __generator(this, function (_a) {
|
|
15578
15758
|
log_header("Replace Form Field Template Values Tests");
|
|
15579
15759
|
enduserWithMultilineField = {
|
|
@@ -15601,6 +15781,21 @@ var replace_form_field_template_values_tests = function () { return __awaiter(vo
|
|
|
15601
15781
|
fields: { Locations: 'NYC\r\nSF\r\nLA' },
|
|
15602
15782
|
};
|
|
15603
15783
|
assert(replace_form_field_template_values('<p>Locations: {{enduser.Locations}}</p>', { enduser: enduserWithCRLFField, escapeNewlinesAsHTMLBreaks: true }) === '<p>Locations: NYC<br />SF<br />LA</p>', 'fail CRLF in substituted value', 'CRLF in substituted value');
|
|
15784
|
+
enduserWithMarkupField = {
|
|
15785
|
+
fname: "Multi",
|
|
15786
|
+
fields: { Injected: '<iframe src="https://evil.example"></iframe>' },
|
|
15787
|
+
};
|
|
15788
|
+
escaped = replace_form_field_template_values('<p>{{enduser.Injected}}</p>', { enduser: enduserWithMarkupField, escapeNewlinesAsHTMLBreaks: true, escapeHTMLValues: true });
|
|
15789
|
+
assert(escaped.includes('<iframe') && !escaped.includes('<iframe'), 'fail escapeHTMLValues escapes markup', 'escapeHTMLValues escapes markup');
|
|
15790
|
+
enduserWithMarkupAndNewline = {
|
|
15791
|
+
fields: { Mixed: 'a<b\nc&d' },
|
|
15792
|
+
};
|
|
15793
|
+
assert(replace_form_field_template_values('{{enduser.Mixed}}', { enduser: enduserWithMarkupAndNewline, escapeNewlinesAsHTMLBreaks: true, escapeHTMLValues: true }) === 'a<b<br />c&d', 'fail escapeHTMLValues ordering vs newline breaks', 'escapeHTMLValues ordering vs newline breaks');
|
|
15794
|
+
enduserWithAmpersand = {
|
|
15795
|
+
fields: { Practice: 'Smith & Jones <Cardiology>' },
|
|
15796
|
+
};
|
|
15797
|
+
assert(replace_form_field_template_values('Practice: {{enduser.Practice}}', { enduser: enduserWithAmpersand }) === 'Practice: Smith & Jones <Cardiology>', 'fail no escaping without the flag', 'no escaping without the flag');
|
|
15798
|
+
assert(replace_form_field_template_values('Practice: {{enduser.Practice}}', { enduser: enduserWithAmpersand, escapeHTMLValues: true }) === 'Practice: Smith & Jones <Cardiology>', 'fail escaping with the flag', 'escaping with the flag');
|
|
15604
15799
|
return [2 /*return*/];
|
|
15605
15800
|
});
|
|
15606
15801
|
}); };
|
|
@@ -16975,7 +17170,7 @@ var ip_address_form_tests = function () { return __awaiter(void 0, void 0, void
|
|
|
16975
17170
|
assert(truncate_string(null, { length: 4, showEllipsis: false }) === '', 'truncate doesnt work for non string', 'trucate works for non-string');
|
|
16976
17171
|
_l.label = 2;
|
|
16977
17172
|
case 2:
|
|
16978
|
-
_l.trys.push([2,
|
|
17173
|
+
_l.trys.push([2, 176, , 177]);
|
|
16979
17174
|
get_next_reminder_timestamp_tests();
|
|
16980
17175
|
form_conditional_logic_tests();
|
|
16981
17176
|
return [4 /*yield*/, test_weighted_round_robin()];
|
|
@@ -17212,387 +17407,393 @@ var ip_address_form_tests = function () { return __awaiter(void 0, void 0, void
|
|
|
17212
17407
|
return [4 /*yield*/, sanitize_user_html_xss_tests()];
|
|
17213
17408
|
case 48:
|
|
17214
17409
|
_l.sent();
|
|
17215
|
-
return [4 /*yield*/,
|
|
17410
|
+
return [4 /*yield*/, sanitize_user_html_with_iframes_tests()];
|
|
17216
17411
|
case 49:
|
|
17217
17412
|
_l.sent();
|
|
17218
|
-
return [4 /*yield*/,
|
|
17413
|
+
return [4 /*yield*/, prototype_pollution_tests()];
|
|
17219
17414
|
case 50:
|
|
17220
17415
|
_l.sent();
|
|
17221
|
-
return [4 /*yield*/,
|
|
17416
|
+
return [4 /*yield*/, account_switcher_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17222
17417
|
case 51:
|
|
17223
17418
|
_l.sent();
|
|
17224
|
-
return [4 /*yield*/,
|
|
17419
|
+
return [4 /*yield*/, totp_mfa_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17225
17420
|
case 52:
|
|
17226
17421
|
_l.sent();
|
|
17227
|
-
return [4 /*yield*/,
|
|
17422
|
+
return [4 /*yield*/, enduser_login_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17228
17423
|
case 53:
|
|
17229
17424
|
_l.sent();
|
|
17230
|
-
return [4 /*yield*/,
|
|
17425
|
+
return [4 /*yield*/, outbound_chat_sent_trigger_tests({ sdk: sdk })];
|
|
17231
17426
|
case 54:
|
|
17232
17427
|
_l.sent();
|
|
17233
|
-
return [4 /*yield*/,
|
|
17428
|
+
return [4 /*yield*/, enduser_cross_access_isolation_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17234
17429
|
case 55:
|
|
17235
17430
|
_l.sent();
|
|
17236
|
-
return [4 /*yield*/,
|
|
17431
|
+
return [4 /*yield*/, eom_procedure_codes_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17237
17432
|
case 56:
|
|
17238
17433
|
_l.sent();
|
|
17239
|
-
return [4 /*yield*/,
|
|
17434
|
+
return [4 /*yield*/, cross_org_api_key_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17240
17435
|
case 57:
|
|
17241
17436
|
_l.sent();
|
|
17242
|
-
return [4 /*yield*/,
|
|
17437
|
+
return [4 /*yield*/, organization_api_keys_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17243
17438
|
case 58:
|
|
17244
17439
|
_l.sent();
|
|
17245
|
-
return [4 /*yield*/,
|
|
17440
|
+
return [4 /*yield*/, scoped_api_keys_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17246
17441
|
case 59:
|
|
17247
17442
|
_l.sent();
|
|
17248
|
-
return [4 /*yield*/,
|
|
17443
|
+
return [4 /*yield*/, organization_settings_duplicates_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17249
17444
|
case 60:
|
|
17250
17445
|
_l.sent();
|
|
17251
|
-
return [4 /*yield*/,
|
|
17446
|
+
return [4 /*yield*/, enduser_session_invalidation_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17252
17447
|
case 61:
|
|
17253
17448
|
_l.sent();
|
|
17254
|
-
return [4 /*yield*/,
|
|
17449
|
+
return [4 /*yield*/, chats_analytics_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17255
17450
|
case 62:
|
|
17256
17451
|
_l.sent();
|
|
17257
|
-
return [4 /*yield*/,
|
|
17452
|
+
return [4 /*yield*/, field_redaction_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17258
17453
|
case 63:
|
|
17259
17454
|
_l.sent();
|
|
17260
|
-
return [4 /*yield*/,
|
|
17455
|
+
return [4 /*yield*/, form_submitted_trigger_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17261
17456
|
case 64:
|
|
17262
17457
|
_l.sent();
|
|
17263
|
-
return [4 /*yield*/,
|
|
17458
|
+
return [4 /*yield*/, dont_sync_to_elation_form_submission_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17264
17459
|
case 65:
|
|
17265
17460
|
_l.sent();
|
|
17266
|
-
return [4 /*yield*/,
|
|
17461
|
+
return [4 /*yield*/, date_string_validation_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17267
17462
|
case 66:
|
|
17268
17463
|
_l.sent();
|
|
17269
|
-
return [4 /*yield*/,
|
|
17464
|
+
return [4 /*yield*/, phone_tree_enduser_condition_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17270
17465
|
case 67:
|
|
17271
17466
|
_l.sent();
|
|
17272
|
-
return [4 /*yield*/,
|
|
17467
|
+
return [4 /*yield*/, openloop_webhooks_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17273
17468
|
case 68:
|
|
17274
17469
|
_l.sent();
|
|
17275
|
-
return [4 /*yield*/,
|
|
17470
|
+
return [4 /*yield*/, mdi_webhooks_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17276
17471
|
case 69:
|
|
17277
17472
|
_l.sent();
|
|
17278
|
-
return [4 /*yield*/,
|
|
17473
|
+
return [4 /*yield*/, integrations_redacted_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17279
17474
|
case 70:
|
|
17280
17475
|
_l.sent();
|
|
17281
|
-
return [4 /*yield*/,
|
|
17476
|
+
return [4 /*yield*/, healthie_multi_integration_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17282
17477
|
case 71:
|
|
17283
17478
|
_l.sent();
|
|
17284
|
-
return [4 /*yield*/,
|
|
17479
|
+
return [4 /*yield*/, mdb_sort_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17285
17480
|
case 72:
|
|
17286
17481
|
_l.sent();
|
|
17287
|
-
return [4 /*yield*/,
|
|
17482
|
+
return [4 /*yield*/, search_tests()];
|
|
17288
17483
|
case 73:
|
|
17289
17484
|
_l.sent();
|
|
17290
|
-
return [4 /*yield*/,
|
|
17485
|
+
return [4 /*yield*/, time_tracks_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17291
17486
|
case 74:
|
|
17292
17487
|
_l.sent();
|
|
17293
|
-
return [4 /*yield*/,
|
|
17488
|
+
return [4 /*yield*/, time_tracks_historical_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17294
17489
|
case 75:
|
|
17295
17490
|
_l.sent();
|
|
17296
|
-
return [4 /*yield*/,
|
|
17491
|
+
return [4 /*yield*/, time_tracks_correction_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17297
17492
|
case 76:
|
|
17298
17493
|
_l.sent();
|
|
17299
|
-
return [4 /*yield*/,
|
|
17494
|
+
return [4 /*yield*/, time_tracks_review_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17300
17495
|
case 77:
|
|
17301
17496
|
_l.sent();
|
|
17302
|
-
return [4 /*yield*/,
|
|
17497
|
+
return [4 /*yield*/, time_tracks_lock_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17303
17498
|
case 78:
|
|
17304
17499
|
_l.sent();
|
|
17305
|
-
return [4 /*yield*/,
|
|
17500
|
+
return [4 /*yield*/, time_tracks_edge_case_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17306
17501
|
case 79:
|
|
17307
17502
|
_l.sent();
|
|
17308
|
-
return [4 /*yield*/,
|
|
17503
|
+
return [4 /*yield*/, time_tracks_resubmit_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17309
17504
|
case 80:
|
|
17310
17505
|
_l.sent();
|
|
17311
|
-
return [4 /*yield*/,
|
|
17506
|
+
return [4 /*yield*/, time_tracks_appointment_duration_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17312
17507
|
case 81:
|
|
17313
17508
|
_l.sent();
|
|
17314
|
-
return [4 /*yield*/,
|
|
17509
|
+
return [4 /*yield*/, calendar_event_limits_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17315
17510
|
case 82:
|
|
17316
17511
|
_l.sent();
|
|
17317
|
-
return [4 /*yield*/,
|
|
17512
|
+
return [4 /*yield*/, get_some_projection_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17318
17513
|
case 83:
|
|
17319
17514
|
_l.sent();
|
|
17320
|
-
return [4 /*yield*/,
|
|
17515
|
+
return [4 /*yield*/, file_download_unicode_names_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17321
17516
|
case 84:
|
|
17322
17517
|
_l.sent();
|
|
17323
|
-
return [4 /*yield*/,
|
|
17518
|
+
return [4 /*yield*/, elation_user_id_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17324
17519
|
case 85:
|
|
17325
17520
|
_l.sent();
|
|
17326
|
-
return [4 /*yield*/,
|
|
17521
|
+
return [4 /*yield*/, concurrent_build_threads_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17327
17522
|
case 86:
|
|
17328
17523
|
_l.sent();
|
|
17329
|
-
return [4 /*yield*/,
|
|
17524
|
+
return [4 /*yield*/, custom_aggregation_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17330
17525
|
case 87:
|
|
17331
17526
|
_l.sent();
|
|
17332
|
-
return [4 /*yield*/,
|
|
17527
|
+
return [4 /*yield*/, no_access_permission_checks_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17333
17528
|
case 88:
|
|
17334
17529
|
_l.sent();
|
|
17335
|
-
return [4 /*yield*/,
|
|
17530
|
+
return [4 /*yield*/, enduser_tests()];
|
|
17336
17531
|
case 89:
|
|
17337
17532
|
_l.sent();
|
|
17338
|
-
return [4 /*yield*/,
|
|
17533
|
+
return [4 /*yield*/, form_started_trigger_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17339
17534
|
case 90:
|
|
17340
17535
|
_l.sent();
|
|
17341
|
-
return [4 /*yield*/,
|
|
17536
|
+
return [4 /*yield*/, load_team_chat_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17342
17537
|
case 91:
|
|
17343
17538
|
_l.sent();
|
|
17344
|
-
return [4 /*yield*/,
|
|
17539
|
+
return [4 /*yield*/, ai_conversations_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17345
17540
|
case 92:
|
|
17346
17541
|
_l.sent();
|
|
17347
|
-
return [4 /*yield*/,
|
|
17542
|
+
return [4 /*yield*/, inbox_thread_assignment_updates_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17348
17543
|
case 93:
|
|
17349
17544
|
_l.sent();
|
|
17350
|
-
return [4 /*yield*/,
|
|
17545
|
+
return [4 /*yield*/, inbox_thread_draft_scheduled_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17351
17546
|
case 94:
|
|
17352
17547
|
_l.sent();
|
|
17353
|
-
return [4 /*yield*/,
|
|
17548
|
+
return [4 /*yield*/, load_threads_autobuild_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17354
17549
|
case 95:
|
|
17355
17550
|
_l.sent();
|
|
17356
|
-
return [4 /*yield*/,
|
|
17551
|
+
return [4 /*yield*/, inbox_threads_new_fields_tests()];
|
|
17357
17552
|
case 96:
|
|
17358
17553
|
_l.sent();
|
|
17359
|
-
return [4 /*yield*/,
|
|
17554
|
+
return [4 /*yield*/, auto_merge_form_submission_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17360
17555
|
case 97:
|
|
17361
17556
|
_l.sent();
|
|
17362
|
-
return [4 /*yield*/,
|
|
17557
|
+
return [4 /*yield*/, threadKeyTests()];
|
|
17363
17558
|
case 98:
|
|
17364
17559
|
_l.sent();
|
|
17365
|
-
return [4 /*yield*/,
|
|
17560
|
+
return [4 /*yield*/, managed_content_enduser_access_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17366
17561
|
case 99:
|
|
17367
17562
|
_l.sent();
|
|
17368
|
-
return [4 /*yield*/,
|
|
17563
|
+
return [4 /*yield*/, managed_content_file_access_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17369
17564
|
case 100:
|
|
17370
17565
|
_l.sent();
|
|
17371
|
-
return [4 /*yield*/,
|
|
17566
|
+
return [4 /*yield*/, afteraction_day_of_month_delay_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17372
17567
|
case 101:
|
|
17373
17568
|
_l.sent();
|
|
17374
|
-
return [4 /*yield*/,
|
|
17569
|
+
return [4 /*yield*/, bulk_assignment_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17375
17570
|
case 102:
|
|
17376
17571
|
_l.sent();
|
|
17377
|
-
return [4 /*yield*/,
|
|
17572
|
+
return [4 /*yield*/, formsort_tests()];
|
|
17378
17573
|
case 103:
|
|
17379
17574
|
_l.sent();
|
|
17380
|
-
return [4 /*yield*/,
|
|
17575
|
+
return [4 /*yield*/, formsort_header_auth_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17381
17576
|
case 104:
|
|
17382
17577
|
_l.sent();
|
|
17383
|
-
return [4 /*yield*/,
|
|
17578
|
+
return [4 /*yield*/, self_serve_appointment_booking_tests()];
|
|
17384
17579
|
case 105:
|
|
17385
17580
|
_l.sent();
|
|
17386
|
-
return [4 /*yield*/,
|
|
17581
|
+
return [4 /*yield*/, test_ticket_automation_assignment_and_optimization()];
|
|
17387
17582
|
case 106:
|
|
17388
17583
|
_l.sent();
|
|
17389
|
-
return [4 /*yield*/,
|
|
17584
|
+
return [4 /*yield*/, monthly_availability_restrictions_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17390
17585
|
case 107:
|
|
17391
17586
|
_l.sent();
|
|
17392
|
-
return [4 /*yield*/,
|
|
17587
|
+
return [4 /*yield*/, journey_error_branching_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17393
17588
|
case 108:
|
|
17394
17589
|
_l.sent();
|
|
17395
|
-
return [4 /*yield*/,
|
|
17590
|
+
return [4 /*yield*/, journey_delete_cancels_actions_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17396
17591
|
case 109:
|
|
17397
17592
|
_l.sent();
|
|
17398
|
-
return [4 /*yield*/,
|
|
17593
|
+
return [4 /*yield*/, message_assignment_trigger_tests({ sdk: sdk })];
|
|
17399
17594
|
case 110:
|
|
17400
17595
|
_l.sent();
|
|
17401
|
-
return [4 /*yield*/,
|
|
17596
|
+
return [4 /*yield*/, inbox_threads_building_tests()];
|
|
17402
17597
|
case 111:
|
|
17403
17598
|
_l.sent();
|
|
17404
|
-
return [4 /*yield*/,
|
|
17599
|
+
return [4 /*yield*/, inbox_threads_loading_tests()];
|
|
17405
17600
|
case 112:
|
|
17406
17601
|
_l.sent();
|
|
17407
|
-
return [4 /*yield*/,
|
|
17602
|
+
return [4 /*yield*/, load_inbox_data_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17408
17603
|
case 113:
|
|
17409
17604
|
_l.sent();
|
|
17410
|
-
return [4 /*yield*/,
|
|
17605
|
+
return [4 /*yield*/, phone_calls_cold_transfer_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17411
17606
|
case 114:
|
|
17412
17607
|
_l.sent();
|
|
17413
|
-
return [4 /*yield*/,
|
|
17608
|
+
return [4 /*yield*/, enduser_observations_acknowledge_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17414
17609
|
case 115:
|
|
17415
17610
|
_l.sent();
|
|
17416
|
-
return [4 /*yield*/,
|
|
17611
|
+
return [4 /*yield*/, nutrition_tracking_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17417
17612
|
case 116:
|
|
17418
17613
|
_l.sent();
|
|
17419
|
-
return [4 /*yield*/,
|
|
17614
|
+
return [4 /*yield*/, translations_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17420
17615
|
case 117:
|
|
17421
17616
|
_l.sent();
|
|
17422
|
-
return [4 /*yield*/,
|
|
17617
|
+
return [4 /*yield*/, create_user_notifications_trigger_tests({ sdk: sdk })];
|
|
17423
17618
|
case 118:
|
|
17424
17619
|
_l.sent();
|
|
17425
|
-
return [4 /*yield*/,
|
|
17620
|
+
return [4 /*yield*/, group_mms_active_tests()];
|
|
17426
17621
|
case 119:
|
|
17427
17622
|
_l.sent();
|
|
17428
|
-
return [4 /*yield*/,
|
|
17623
|
+
return [4 /*yield*/, auto_reply_tests()];
|
|
17429
17624
|
case 120:
|
|
17430
17625
|
_l.sent();
|
|
17431
|
-
return [4 /*yield*/,
|
|
17626
|
+
return [4 /*yield*/, relationships_tests()];
|
|
17432
17627
|
case 121:
|
|
17433
17628
|
_l.sent();
|
|
17434
|
-
return [4 /*yield*/,
|
|
17629
|
+
return [4 /*yield*/, rate_limit_tests()];
|
|
17435
17630
|
case 122:
|
|
17436
17631
|
_l.sent();
|
|
17437
|
-
return [4 /*yield*/,
|
|
17632
|
+
return [4 /*yield*/, ip_address_form_tests()];
|
|
17438
17633
|
case 123:
|
|
17439
17634
|
_l.sent();
|
|
17440
|
-
return [4 /*yield*/,
|
|
17635
|
+
return [4 /*yield*/, bulk_update_tests()];
|
|
17441
17636
|
case 124:
|
|
17442
17637
|
_l.sent();
|
|
17443
|
-
return [4 /*yield*/,
|
|
17638
|
+
return [4 /*yield*/, calendar_events_bulk_update_tests({ sdk: sdk })];
|
|
17444
17639
|
case 125:
|
|
17445
17640
|
_l.sent();
|
|
17446
|
-
return [4 /*yield*/,
|
|
17641
|
+
return [4 /*yield*/, calendar_event_references_update_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17447
17642
|
case 126:
|
|
17643
|
+
_l.sent();
|
|
17644
|
+
return [4 /*yield*/, cancel_upcoming_appointments_journey_action_test()];
|
|
17645
|
+
case 127:
|
|
17646
|
+
_l.sent();
|
|
17647
|
+
return [4 /*yield*/, multi_tenant_tests()]; // should come right after setup tests
|
|
17648
|
+
case 128:
|
|
17448
17649
|
_l.sent(); // should come right after setup tests
|
|
17449
17650
|
return [4 /*yield*/, sync_tests_with_access_tags()]; // should come directly after setup to avoid extra sync values
|
|
17450
|
-
case
|
|
17651
|
+
case 129:
|
|
17451
17652
|
_l.sent(); // should come directly after setup to avoid extra sync values
|
|
17452
17653
|
return [4 /*yield*/, sync_tests()]; // should come directly after setup to avoid extra sync values
|
|
17453
|
-
case
|
|
17654
|
+
case 130:
|
|
17454
17655
|
_l.sent(); // should come directly after setup to avoid extra sync values
|
|
17455
17656
|
return [4 /*yield*/, get_templated_message_tests()];
|
|
17456
|
-
case
|
|
17657
|
+
case 131:
|
|
17457
17658
|
_l.sent();
|
|
17458
17659
|
return [4 /*yield*/, updatedAt_tests()];
|
|
17459
|
-
case
|
|
17660
|
+
case 132:
|
|
17460
17661
|
_l.sent();
|
|
17461
17662
|
return [4 /*yield*/, file_source_tests()];
|
|
17462
|
-
case
|
|
17663
|
+
case 133:
|
|
17463
17664
|
_l.sent();
|
|
17464
17665
|
return [4 /*yield*/, enduser_access_tags_tests()];
|
|
17465
|
-
case
|
|
17666
|
+
case 134:
|
|
17466
17667
|
_l.sent();
|
|
17467
17668
|
return [4 /*yield*/, enduserAccessTests()];
|
|
17468
|
-
case
|
|
17669
|
+
case 135:
|
|
17469
17670
|
_l.sent();
|
|
17470
17671
|
return [4 /*yield*/, test_form_response_search()];
|
|
17471
|
-
case
|
|
17672
|
+
case 136:
|
|
17472
17673
|
_l.sent();
|
|
17473
17674
|
return [4 /*yield*/, date_parsing_tests()];
|
|
17474
|
-
case
|
|
17675
|
+
case 137:
|
|
17475
17676
|
_l.sent();
|
|
17476
17677
|
return [4 /*yield*/, fromEmailOverride_tests()];
|
|
17477
|
-
case
|
|
17678
|
+
case 138:
|
|
17478
17679
|
_l.sent();
|
|
17479
17680
|
return [4 /*yield*/, ticket_tests()];
|
|
17480
|
-
case
|
|
17681
|
+
case 139:
|
|
17481
17682
|
_l.sent();
|
|
17482
17683
|
return [4 /*yield*/, uniqueness_tests()];
|
|
17483
|
-
case
|
|
17684
|
+
case 140:
|
|
17484
17685
|
_l.sent();
|
|
17485
17686
|
return [4 /*yield*/, enduser_orders_tests()];
|
|
17486
|
-
case
|
|
17687
|
+
case 141:
|
|
17487
17688
|
_l.sent();
|
|
17488
17689
|
return [4 /*yield*/, calendar_event_care_team_tests()];
|
|
17489
|
-
case
|
|
17690
|
+
case 142:
|
|
17490
17691
|
_l.sent();
|
|
17491
17692
|
return [4 /*yield*/, merge_enduser_tests()];
|
|
17492
|
-
case
|
|
17693
|
+
case 143:
|
|
17493
17694
|
_l.sent();
|
|
17494
17695
|
return [4 /*yield*/, input_modifier_tests()];
|
|
17495
|
-
case
|
|
17696
|
+
case 144:
|
|
17496
17697
|
_l.sent();
|
|
17497
17698
|
return [4 /*yield*/, switch_to_related_contacts_tests()];
|
|
17498
|
-
case
|
|
17699
|
+
case 145:
|
|
17499
17700
|
_l.sent();
|
|
17500
17701
|
return [4 /*yield*/, redaction_tests()];
|
|
17501
|
-
case
|
|
17702
|
+
case 146:
|
|
17502
17703
|
_l.sent();
|
|
17503
17704
|
return [4 /*yield*/, no_chained_triggers_tests()];
|
|
17504
|
-
case
|
|
17705
|
+
case 147:
|
|
17505
17706
|
_l.sent();
|
|
17506
17707
|
return [4 /*yield*/, mdb_filter_tests()];
|
|
17507
|
-
case
|
|
17708
|
+
case 148:
|
|
17508
17709
|
_l.sent();
|
|
17509
17710
|
return [4 /*yield*/, superadmin_tests()];
|
|
17510
|
-
case
|
|
17711
|
+
case 149:
|
|
17511
17712
|
_l.sent();
|
|
17512
17713
|
return [4 /*yield*/, ticket_queue_tests()];
|
|
17513
|
-
case
|
|
17714
|
+
case 150:
|
|
17514
17715
|
_l.sent();
|
|
17515
17716
|
return [4 /*yield*/, vital_trigger_tests()];
|
|
17516
|
-
case
|
|
17717
|
+
case 151:
|
|
17517
17718
|
_l.sent();
|
|
17518
17719
|
return [4 /*yield*/, close_reasons_no_duplicates_tests()];
|
|
17519
|
-
case
|
|
17720
|
+
case 152:
|
|
17520
17721
|
_l.sent();
|
|
17521
17722
|
return [4 /*yield*/, register_as_enduser_tests()];
|
|
17522
|
-
case
|
|
17723
|
+
case 153:
|
|
17523
17724
|
_l.sent();
|
|
17524
17725
|
return [4 /*yield*/, lockout_tests()];
|
|
17525
|
-
case
|
|
17726
|
+
case 154:
|
|
17526
17727
|
_l.sent();
|
|
17527
17728
|
return [4 /*yield*/, delete_user_tests()
|
|
17528
17729
|
// await test_send_with_template()
|
|
17529
17730
|
];
|
|
17530
|
-
case
|
|
17731
|
+
case 155:
|
|
17531
17732
|
_l.sent();
|
|
17532
17733
|
// await test_send_with_template()
|
|
17533
17734
|
return [4 /*yield*/, bulk_read_tests()];
|
|
17534
|
-
case
|
|
17735
|
+
case 156:
|
|
17535
17736
|
// await test_send_with_template()
|
|
17536
17737
|
_l.sent();
|
|
17537
17738
|
return [4 /*yield*/, ticket_reminder_tests()];
|
|
17538
|
-
case
|
|
17739
|
+
case 157:
|
|
17539
17740
|
_l.sent();
|
|
17540
17741
|
return [4 /*yield*/, marketing_email_unsubscribe_tests()];
|
|
17541
|
-
case
|
|
17742
|
+
case 158:
|
|
17542
17743
|
_l.sent();
|
|
17543
17744
|
return [4 /*yield*/, unique_strings_tests()];
|
|
17544
|
-
case
|
|
17745
|
+
case 159:
|
|
17545
17746
|
_l.sent();
|
|
17546
17747
|
return [4 /*yield*/, alternate_phones_tests()];
|
|
17547
|
-
case
|
|
17748
|
+
case 160:
|
|
17548
17749
|
_l.sent();
|
|
17549
17750
|
return [4 /*yield*/, role_based_access_tests()];
|
|
17550
|
-
case
|
|
17751
|
+
case 161:
|
|
17551
17752
|
_l.sent();
|
|
17552
17753
|
return [4 /*yield*/, enduser_session_tests()];
|
|
17553
|
-
case
|
|
17754
|
+
case 162:
|
|
17554
17755
|
_l.sent();
|
|
17555
17756
|
return [4 /*yield*/, nextReminderInMS_tests()];
|
|
17556
|
-
case
|
|
17757
|
+
case 163:
|
|
17557
17758
|
_l.sent();
|
|
17558
17759
|
return [4 /*yield*/, wait_for_trigger_tests()];
|
|
17559
|
-
case
|
|
17760
|
+
case 164:
|
|
17560
17761
|
_l.sent();
|
|
17561
17762
|
return [4 /*yield*/, pdf_generation()];
|
|
17562
|
-
case
|
|
17763
|
+
case 165:
|
|
17563
17764
|
_l.sent();
|
|
17564
17765
|
return [4 /*yield*/, remove_from_journey_on_incoming_comms_tests().catch(console.error)]; // timing is unreliable, uncomment if changing logic
|
|
17565
|
-
case
|
|
17766
|
+
case 166:
|
|
17566
17767
|
_l.sent(); // timing is unreliable, uncomment if changing logic
|
|
17567
17768
|
return [4 /*yield*/, sub_organization_enduser_tests()];
|
|
17568
|
-
case
|
|
17769
|
+
case 167:
|
|
17569
17770
|
_l.sent();
|
|
17570
17771
|
return [4 /*yield*/, sub_organization_tests()];
|
|
17571
|
-
case
|
|
17772
|
+
case 168:
|
|
17572
17773
|
_l.sent();
|
|
17573
17774
|
return [4 /*yield*/, filter_by_date_tests()];
|
|
17574
|
-
case
|
|
17775
|
+
case 169:
|
|
17575
17776
|
_l.sent();
|
|
17576
17777
|
return [4 /*yield*/, generate_user_auth_tests()];
|
|
17577
|
-
case
|
|
17778
|
+
case 170:
|
|
17578
17779
|
_l.sent();
|
|
17579
17780
|
return [4 /*yield*/, generateEnduserAuthTests()];
|
|
17580
|
-
case
|
|
17781
|
+
case 171:
|
|
17581
17782
|
_l.sent();
|
|
17582
17783
|
return [4 /*yield*/, public_form_tests()];
|
|
17583
|
-
case
|
|
17784
|
+
case 172:
|
|
17584
17785
|
_l.sent();
|
|
17585
17786
|
return [4 /*yield*/, badInputTests()];
|
|
17586
|
-
case
|
|
17787
|
+
case 173:
|
|
17587
17788
|
_l.sent();
|
|
17588
17789
|
return [4 /*yield*/, filterTests()];
|
|
17589
|
-
case
|
|
17790
|
+
case 174:
|
|
17590
17791
|
_l.sent();
|
|
17591
17792
|
return [4 /*yield*/, updatesTests()];
|
|
17592
|
-
case
|
|
17793
|
+
case 175:
|
|
17593
17794
|
_l.sent();
|
|
17594
|
-
return [3 /*break*/,
|
|
17595
|
-
case
|
|
17795
|
+
return [3 /*break*/, 177];
|
|
17796
|
+
case 176:
|
|
17596
17797
|
err_1 = _l.sent();
|
|
17597
17798
|
console.error("Failed during custom test");
|
|
17598
17799
|
if (err_1.message && err_1.info) {
|
|
@@ -17602,18 +17803,18 @@ var ip_address_form_tests = function () { return __awaiter(void 0, void 0, void
|
|
|
17602
17803
|
console.error(err_1);
|
|
17603
17804
|
}
|
|
17604
17805
|
process.exit(1);
|
|
17605
|
-
return [3 /*break*/,
|
|
17606
|
-
case
|
|
17806
|
+
return [3 /*break*/, 177];
|
|
17807
|
+
case 177:
|
|
17607
17808
|
_a = schema;
|
|
17608
17809
|
_b = [];
|
|
17609
17810
|
for (_c in _a)
|
|
17610
17811
|
_b.push(_c);
|
|
17611
17812
|
_i = 0;
|
|
17612
|
-
_l.label =
|
|
17613
|
-
case
|
|
17614
|
-
if (!(_i < _b.length)) return [3 /*break*/,
|
|
17813
|
+
_l.label = 178;
|
|
17814
|
+
case 178:
|
|
17815
|
+
if (!(_i < _b.length)) return [3 /*break*/, 181];
|
|
17615
17816
|
_c = _b[_i];
|
|
17616
|
-
if (!(_c in _a)) return [3 /*break*/,
|
|
17817
|
+
if (!(_c in _a)) return [3 /*break*/, 180];
|
|
17617
17818
|
n = _c;
|
|
17618
17819
|
returnValidation = (_k = (_j = schema[n].customActions) === null || _j === void 0 ? void 0 : _j.create) === null || _k === void 0 ? void 0 : _k.returns;
|
|
17619
17820
|
return [4 /*yield*/, run_generated_tests({
|
|
@@ -17624,41 +17825,41 @@ var ip_address_form_tests = function () { return __awaiter(void 0, void 0, void
|
|
|
17624
17825
|
create: returnValidation // ModelFields<ClientModel>,
|
|
17625
17826
|
}
|
|
17626
17827
|
})];
|
|
17627
|
-
case
|
|
17828
|
+
case 179:
|
|
17628
17829
|
_l.sent();
|
|
17629
|
-
_l.label =
|
|
17630
|
-
case
|
|
17830
|
+
_l.label = 180;
|
|
17831
|
+
case 180:
|
|
17631
17832
|
_i++;
|
|
17632
|
-
return [3 /*break*/,
|
|
17633
|
-
case
|
|
17833
|
+
return [3 /*break*/, 178];
|
|
17834
|
+
case 181:
|
|
17634
17835
|
_d = tests;
|
|
17635
17836
|
_f = [];
|
|
17636
17837
|
for (_g in _d)
|
|
17637
17838
|
_f.push(_g);
|
|
17638
17839
|
_h = 0;
|
|
17639
|
-
_l.label =
|
|
17640
|
-
case
|
|
17641
|
-
if (!(_h < _f.length)) return [3 /*break*/,
|
|
17840
|
+
_l.label = 182;
|
|
17841
|
+
case 182:
|
|
17842
|
+
if (!(_h < _f.length)) return [3 /*break*/, 187];
|
|
17642
17843
|
_g = _f[_h];
|
|
17643
|
-
if (!(_g in _d)) return [3 /*break*/,
|
|
17844
|
+
if (!(_g in _d)) return [3 /*break*/, 186];
|
|
17644
17845
|
t = _g;
|
|
17645
|
-
_l.label =
|
|
17646
|
-
case
|
|
17647
|
-
_l.trys.push([
|
|
17846
|
+
_l.label = 183;
|
|
17847
|
+
case 183:
|
|
17848
|
+
_l.trys.push([183, 185, , 186]);
|
|
17648
17849
|
return [4 /*yield*/, tests[t]()];
|
|
17649
|
-
case
|
|
17850
|
+
case 184:
|
|
17650
17851
|
_l.sent();
|
|
17651
|
-
return [3 /*break*/,
|
|
17652
|
-
case
|
|
17852
|
+
return [3 /*break*/, 186];
|
|
17853
|
+
case 185:
|
|
17653
17854
|
err_2 = _l.sent();
|
|
17654
17855
|
console.error("Error running test:");
|
|
17655
17856
|
console.error(err_2);
|
|
17656
17857
|
process.exit(1);
|
|
17657
|
-
return [3 /*break*/,
|
|
17658
|
-
case
|
|
17858
|
+
return [3 /*break*/, 186];
|
|
17859
|
+
case 186:
|
|
17659
17860
|
_h++;
|
|
17660
|
-
return [3 /*break*/,
|
|
17661
|
-
case
|
|
17861
|
+
return [3 /*break*/, 182];
|
|
17862
|
+
case 187:
|
|
17662
17863
|
process.exit();
|
|
17663
17864
|
return [2 /*return*/];
|
|
17664
17865
|
}
|