@tellescope/sdk 1.67.12 → 1.68.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/enduser.d.ts +20 -0
- package/lib/cjs/enduser.d.ts.map +1 -1
- package/lib/cjs/sdk.d.ts +46 -0
- package/lib/cjs/sdk.d.ts.map +1 -1
- package/lib/cjs/sdk.js +2 -0
- package/lib/cjs/sdk.js.map +1 -1
- package/lib/cjs/tests/tests.d.ts +2 -0
- package/lib/cjs/tests/tests.d.ts.map +1 -1
- package/lib/cjs/tests/tests.js +255 -106
- package/lib/cjs/tests/tests.js.map +1 -1
- package/lib/esm/enduser.d.ts +20 -0
- package/lib/esm/enduser.d.ts.map +1 -1
- package/lib/esm/sdk.d.ts +46 -0
- package/lib/esm/sdk.d.ts.map +1 -1
- package/lib/esm/sdk.js +2 -0
- package/lib/esm/sdk.js.map +1 -1
- package/lib/esm/tests/tests.d.ts +2 -0
- package/lib/esm/tests/tests.d.ts.map +1 -1
- package/lib/esm/tests/tests.js +252 -105
- package/lib/esm/tests/tests.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +8 -8
- package/src/sdk.ts +6 -0
- package/src/tests/tests.ts +164 -4
- package/test_generated.pdf +0 -0
package/lib/cjs/tests/tests.js
CHANGED
|
@@ -82,7 +82,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
82
82
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
83
83
|
};
|
|
84
84
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
85
|
-
exports.no_chained_triggers_tests = exports.role_based_access_permissions_tests = exports.self_serve_appointment_booking_tests = exports.filter_by_date_tests = exports.databases_tests = exports.calendar_event_RSVPs_tests = exports.managed_content_records_tests = exports.meetings_tests = exports.automationSameJourneyTests = exports.formsSubmittedNoUnsubmittedTest = exports.formsUnsubmittedTest = exports.formsUnsubmittedCancelConditionTest = exports.formUnsubmittedCancelConditionTest = void 0;
|
|
85
|
+
exports.alternate_phones_tests = exports.ticket_queue_tests = exports.no_chained_triggers_tests = exports.role_based_access_permissions_tests = exports.self_serve_appointment_booking_tests = exports.filter_by_date_tests = exports.databases_tests = exports.calendar_event_RSVPs_tests = exports.managed_content_records_tests = exports.meetings_tests = exports.automationSameJourneyTests = exports.formsSubmittedNoUnsubmittedTest = exports.formsUnsubmittedTest = exports.formsUnsubmittedCancelConditionTest = exports.formUnsubmittedCancelConditionTest = void 0;
|
|
86
86
|
require('source-map-support').install();
|
|
87
87
|
var axios_1 = __importDefault(require("axios"));
|
|
88
88
|
var crypto_1 = __importDefault(require("crypto"));
|
|
@@ -6064,25 +6064,28 @@ var pollForResults = function (f, evaluate, intervalInMS, iterations) {
|
|
|
6064
6064
|
});
|
|
6065
6065
|
};
|
|
6066
6066
|
var test_ticket_automation_assignment_and_optimization = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
6067
|
-
var users, journey, foregroundTestCounter, testForegroundTicket, backgroundTestCounter, testBackgroundTicket, enduser, _a, _b;
|
|
6068
|
-
return __generator(this, function (
|
|
6069
|
-
switch (
|
|
6067
|
+
var users, journey, queue, foregroundTestCounter, testForegroundTicket, backgroundTestCounter, testBackgroundTicket, enduser, _a, _b, _c;
|
|
6068
|
+
return __generator(this, function (_d) {
|
|
6069
|
+
switch (_d.label) {
|
|
6070
6070
|
case 0:
|
|
6071
6071
|
(0, testing_1.log_header)("Ticket Automation / Assignment Tests");
|
|
6072
6072
|
return [4 /*yield*/, sdk.api.users.getSome()];
|
|
6073
6073
|
case 1:
|
|
6074
|
-
users =
|
|
6074
|
+
users = _d.sent();
|
|
6075
6075
|
if (users.length < 3)
|
|
6076
6076
|
throw new Error("Must have at least 3 users to detect invalid assignment");
|
|
6077
6077
|
return [4 /*yield*/, sdk.api.users.updateOne(sdk.userInfo.id, { tags: ['tag1', 'tag2'] })];
|
|
6078
6078
|
case 2:
|
|
6079
|
-
|
|
6079
|
+
_d.sent();
|
|
6080
6080
|
return [4 /*yield*/, sdk.api.users.updateOne(sdkNonAdmin.userInfo.id, { tags: ['tag1', 'tag3'] })];
|
|
6081
6081
|
case 3:
|
|
6082
|
-
|
|
6082
|
+
_d.sent();
|
|
6083
6083
|
return [4 /*yield*/, sdk.api.journeys.createOne({ title: "Testing" })];
|
|
6084
6084
|
case 4:
|
|
6085
|
-
journey =
|
|
6085
|
+
journey = _d.sent();
|
|
6086
|
+
return [4 /*yield*/, sdk.api.ticket_queues.createOne({ title: 'test queue', userIds: [] })];
|
|
6087
|
+
case 5:
|
|
6088
|
+
queue = _d.sent();
|
|
6086
6089
|
foregroundTestCounter = 0;
|
|
6087
6090
|
testForegroundTicket = function (_a) {
|
|
6088
6091
|
var assignedTo = _a.assignedTo, info = _a.info, validOwners = _a.validOwners, enduser = _a.enduser, closedForReason = _a.closedForReason, testDelayedChild = _a.testDelayedChild;
|
|
@@ -6145,8 +6148,10 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6145
6148
|
ticket = _d.sent();
|
|
6146
6149
|
return [4 /*yield*/, (0, testing_1.async_test)("Foreground ticket assignment ".concat(++foregroundTestCounter), function () { return sdk.api.tickets.close_ticket({ ticketId: ticket.id, closedForReason: closedForReason }); }, { onResult: function (_a) {
|
|
6147
6150
|
var generated = _a.generated;
|
|
6148
|
-
return
|
|
6149
|
-
|
|
6151
|
+
return (validOwners.length === 0 && (generated === null || generated === void 0 ? void 0 : generated.queueId) === queue.id && !generated.owner)
|
|
6152
|
+
|| (!!(generated === null || generated === void 0 ? void 0 : generated.owner) && validOwners.includes(generated.owner));
|
|
6153
|
+
}
|
|
6154
|
+
})];
|
|
6150
6155
|
case 7:
|
|
6151
6156
|
_d.sent();
|
|
6152
6157
|
return [4 /*yield*/, (0, testing_1.async_test)("Foreground ticket nop, no duplicates", function () { return sdk.api.automated_actions.getSome({ filter: { automationStepId: step.id } }); }, { onResult: function (steps) { return steps.length === 1 && !!steps[0].isNOP; } })];
|
|
@@ -6177,6 +6182,17 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6177
6182
|
});
|
|
6178
6183
|
});
|
|
6179
6184
|
};
|
|
6185
|
+
return [4 /*yield*/, testForegroundTicket({
|
|
6186
|
+
assignedTo: [],
|
|
6187
|
+
info: {
|
|
6188
|
+
assignmentStrategy: { type: 'queue', info: { queueId: queue.id } },
|
|
6189
|
+
defaultAssignee: sdk.userInfo.id
|
|
6190
|
+
},
|
|
6191
|
+
validOwners: [],
|
|
6192
|
+
testDelayedChild: true,
|
|
6193
|
+
})];
|
|
6194
|
+
case 6:
|
|
6195
|
+
_d.sent();
|
|
6180
6196
|
return [4 /*yield*/, testForegroundTicket({
|
|
6181
6197
|
assignedTo: [],
|
|
6182
6198
|
info: {
|
|
@@ -6186,8 +6202,8 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6186
6202
|
validOwners: [sdk.userInfo.id],
|
|
6187
6203
|
testDelayedChild: true,
|
|
6188
6204
|
})];
|
|
6189
|
-
case
|
|
6190
|
-
|
|
6205
|
+
case 7:
|
|
6206
|
+
_d.sent();
|
|
6191
6207
|
return [4 /*yield*/, testForegroundTicket({
|
|
6192
6208
|
assignedTo: [],
|
|
6193
6209
|
info: {
|
|
@@ -6198,8 +6214,8 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6198
6214
|
closedForReason: "closedForReason test",
|
|
6199
6215
|
testDelayedChild: true,
|
|
6200
6216
|
})];
|
|
6201
|
-
case
|
|
6202
|
-
|
|
6217
|
+
case 8:
|
|
6218
|
+
_d.sent();
|
|
6203
6219
|
return [4 /*yield*/, testForegroundTicket({
|
|
6204
6220
|
assignedTo: [],
|
|
6205
6221
|
info: {
|
|
@@ -6208,8 +6224,8 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6208
6224
|
},
|
|
6209
6225
|
validOwners: [sdkNonAdmin.userInfo.id],
|
|
6210
6226
|
})];
|
|
6211
|
-
case
|
|
6212
|
-
|
|
6227
|
+
case 9:
|
|
6228
|
+
_d.sent();
|
|
6213
6229
|
return [4 /*yield*/, testForegroundTicket({
|
|
6214
6230
|
assignedTo: [],
|
|
6215
6231
|
info: {
|
|
@@ -6218,8 +6234,8 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6218
6234
|
},
|
|
6219
6235
|
validOwners: [sdkNonAdmin.userInfo.id],
|
|
6220
6236
|
})];
|
|
6221
|
-
case
|
|
6222
|
-
|
|
6237
|
+
case 10:
|
|
6238
|
+
_d.sent();
|
|
6223
6239
|
return [4 /*yield*/, testForegroundTicket({
|
|
6224
6240
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
6225
6241
|
info: {
|
|
@@ -6228,8 +6244,8 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6228
6244
|
},
|
|
6229
6245
|
validOwners: [sdkNonAdmin.userInfo.id],
|
|
6230
6246
|
})];
|
|
6231
|
-
case
|
|
6232
|
-
|
|
6247
|
+
case 11:
|
|
6248
|
+
_d.sent();
|
|
6233
6249
|
return [4 /*yield*/, testForegroundTicket({
|
|
6234
6250
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
6235
6251
|
info: {
|
|
@@ -6238,8 +6254,8 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6238
6254
|
},
|
|
6239
6255
|
validOwners: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
6240
6256
|
})];
|
|
6241
|
-
case
|
|
6242
|
-
|
|
6257
|
+
case 12:
|
|
6258
|
+
_d.sent();
|
|
6243
6259
|
return [4 /*yield*/, testForegroundTicket({
|
|
6244
6260
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
6245
6261
|
info: {
|
|
@@ -6248,8 +6264,8 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6248
6264
|
},
|
|
6249
6265
|
validOwners: [sdk.userInfo.id, sdkNonAdmin.userInfo.id,],
|
|
6250
6266
|
})];
|
|
6251
|
-
case
|
|
6252
|
-
|
|
6267
|
+
case 13:
|
|
6268
|
+
_d.sent();
|
|
6253
6269
|
return [4 /*yield*/, testForegroundTicket({
|
|
6254
6270
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
6255
6271
|
info: {
|
|
@@ -6258,8 +6274,8 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6258
6274
|
},
|
|
6259
6275
|
validOwners: [sdk.userInfo.id],
|
|
6260
6276
|
})];
|
|
6261
|
-
case
|
|
6262
|
-
|
|
6277
|
+
case 14:
|
|
6278
|
+
_d.sent();
|
|
6263
6279
|
return [4 /*yield*/, testForegroundTicket({
|
|
6264
6280
|
assignedTo: [],
|
|
6265
6281
|
info: {
|
|
@@ -6268,8 +6284,8 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6268
6284
|
},
|
|
6269
6285
|
validOwners: [sdkNonAdmin.userInfo.id],
|
|
6270
6286
|
})];
|
|
6271
|
-
case
|
|
6272
|
-
|
|
6287
|
+
case 15:
|
|
6288
|
+
_d.sent();
|
|
6273
6289
|
backgroundTestCounter = 0;
|
|
6274
6290
|
testBackgroundTicket = function (_a) {
|
|
6275
6291
|
var assignedTo = _a.assignedTo, info = _a.info, validOwners = _a.validOwners, enduser = _a.enduser;
|
|
@@ -6297,7 +6313,10 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6297
6313
|
})];
|
|
6298
6314
|
case 3:
|
|
6299
6315
|
_c.sent();
|
|
6300
|
-
return [4 /*yield*/, (0, testing_1.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; }
|
|
6316
|
+
return [4 /*yield*/, (0, testing_1.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); }, {
|
|
6317
|
+
onResult: function (ts) { return (ts.length === 1 && ((validOwners.length === 0 && ts[0].queueId === queue.id && !ts[0].owner)
|
|
6318
|
+
|| (!!ts[0].owner && validOwners.includes(ts[0].owner)))); }
|
|
6319
|
+
})];
|
|
6301
6320
|
case 4:
|
|
6302
6321
|
_c.sent();
|
|
6303
6322
|
return [4 /*yield*/, sdk.api.endusers.deleteOne(e.id)];
|
|
@@ -6308,6 +6327,16 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6308
6327
|
});
|
|
6309
6328
|
});
|
|
6310
6329
|
};
|
|
6330
|
+
return [4 /*yield*/, testBackgroundTicket({
|
|
6331
|
+
assignedTo: [],
|
|
6332
|
+
info: {
|
|
6333
|
+
assignmentStrategy: { type: 'queue', info: { queueId: queue.id } },
|
|
6334
|
+
defaultAssignee: sdk.userInfo.id
|
|
6335
|
+
},
|
|
6336
|
+
validOwners: [],
|
|
6337
|
+
})];
|
|
6338
|
+
case 16:
|
|
6339
|
+
_d.sent();
|
|
6311
6340
|
return [4 /*yield*/, testBackgroundTicket({
|
|
6312
6341
|
assignedTo: [],
|
|
6313
6342
|
info: {
|
|
@@ -6316,8 +6345,8 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6316
6345
|
},
|
|
6317
6346
|
validOwners: [sdk.userInfo.id],
|
|
6318
6347
|
})];
|
|
6319
|
-
case
|
|
6320
|
-
|
|
6348
|
+
case 17:
|
|
6349
|
+
_d.sent();
|
|
6321
6350
|
return [4 /*yield*/, testBackgroundTicket({
|
|
6322
6351
|
assignedTo: [],
|
|
6323
6352
|
info: {
|
|
@@ -6328,17 +6357,17 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6328
6357
|
})
|
|
6329
6358
|
// ticket needs existing enduser, previous owner for test to work
|
|
6330
6359
|
];
|
|
6331
|
-
case
|
|
6332
|
-
|
|
6360
|
+
case 18:
|
|
6361
|
+
_d.sent();
|
|
6333
6362
|
return [4 /*yield*/, sdk.api.endusers.createOne({ fname: 'previous-owner-test' })];
|
|
6334
|
-
case
|
|
6335
|
-
enduser =
|
|
6363
|
+
case 19:
|
|
6364
|
+
enduser = _d.sent();
|
|
6336
6365
|
return [4 /*yield*/, sdk.api.tickets.createOne({
|
|
6337
6366
|
// title should be different than 'background test' so it doesn't create false positive test
|
|
6338
6367
|
title: 'previous-owner-test', enduserId: enduser.id, journeyId: journey.id, owner: sdkNonAdmin.userInfo.id
|
|
6339
6368
|
})];
|
|
6340
|
-
case
|
|
6341
|
-
|
|
6369
|
+
case 20:
|
|
6370
|
+
_d.sent();
|
|
6342
6371
|
return [4 /*yield*/, testBackgroundTicket({
|
|
6343
6372
|
assignedTo: [],
|
|
6344
6373
|
enduser: enduser,
|
|
@@ -6348,8 +6377,8 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6348
6377
|
},
|
|
6349
6378
|
validOwners: [sdkNonAdmin.userInfo.id],
|
|
6350
6379
|
})];
|
|
6351
|
-
case
|
|
6352
|
-
|
|
6380
|
+
case 21:
|
|
6381
|
+
_d.sent();
|
|
6353
6382
|
return [4 /*yield*/, testBackgroundTicket({
|
|
6354
6383
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
6355
6384
|
info: {
|
|
@@ -6358,8 +6387,8 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6358
6387
|
},
|
|
6359
6388
|
validOwners: [sdkNonAdmin.userInfo.id],
|
|
6360
6389
|
})];
|
|
6361
|
-
case
|
|
6362
|
-
|
|
6390
|
+
case 22:
|
|
6391
|
+
_d.sent();
|
|
6363
6392
|
return [4 /*yield*/, testBackgroundTicket({
|
|
6364
6393
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
6365
6394
|
info: {
|
|
@@ -6368,8 +6397,8 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6368
6397
|
},
|
|
6369
6398
|
validOwners: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
6370
6399
|
})];
|
|
6371
|
-
case
|
|
6372
|
-
|
|
6400
|
+
case 23:
|
|
6401
|
+
_d.sent();
|
|
6373
6402
|
return [4 /*yield*/, testBackgroundTicket({
|
|
6374
6403
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
6375
6404
|
info: {
|
|
@@ -6378,8 +6407,8 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6378
6407
|
},
|
|
6379
6408
|
validOwners: [sdk.userInfo.id, sdkNonAdmin.userInfo.id,],
|
|
6380
6409
|
})];
|
|
6381
|
-
case
|
|
6382
|
-
|
|
6410
|
+
case 24:
|
|
6411
|
+
_d.sent();
|
|
6383
6412
|
return [4 /*yield*/, testBackgroundTicket({
|
|
6384
6413
|
assignedTo: [sdkNonAdmin.userInfo.id, sdk.userInfo.id],
|
|
6385
6414
|
info: {
|
|
@@ -6388,8 +6417,8 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6388
6417
|
},
|
|
6389
6418
|
validOwners: [sdk.userInfo.id],
|
|
6390
6419
|
})];
|
|
6391
|
-
case
|
|
6392
|
-
|
|
6420
|
+
case 25:
|
|
6421
|
+
_d.sent();
|
|
6393
6422
|
return [4 /*yield*/, testBackgroundTicket({
|
|
6394
6423
|
assignedTo: [],
|
|
6395
6424
|
info: {
|
|
@@ -6398,13 +6427,18 @@ var test_ticket_automation_assignment_and_optimization = function () { return __
|
|
|
6398
6427
|
},
|
|
6399
6428
|
validOwners: [sdkNonAdmin.userInfo.id],
|
|
6400
6429
|
})];
|
|
6401
|
-
case
|
|
6402
|
-
|
|
6430
|
+
case 26:
|
|
6431
|
+
_d.sent();
|
|
6403
6432
|
_b = (_a = Promise).all;
|
|
6404
6433
|
return [4 /*yield*/, sdk.api.journeys.deleteOne(journey.id)];
|
|
6405
|
-
case
|
|
6406
|
-
|
|
6407
|
-
|
|
6434
|
+
case 27:
|
|
6435
|
+
_c = [
|
|
6436
|
+
_d.sent()
|
|
6437
|
+
];
|
|
6438
|
+
return [4 /*yield*/, sdk.api.ticket_queues.deleteOne(queue.id)];
|
|
6439
|
+
case 28: return [2 /*return*/, _b.apply(_a, [_c.concat([
|
|
6440
|
+
_d.sent()
|
|
6441
|
+
])])];
|
|
6408
6442
|
}
|
|
6409
6443
|
});
|
|
6410
6444
|
}); };
|
|
@@ -6592,8 +6626,117 @@ var no_chained_triggers_tests = function () { return __awaiter(void 0, void 0, v
|
|
|
6592
6626
|
});
|
|
6593
6627
|
}); };
|
|
6594
6628
|
exports.no_chained_triggers_tests = no_chained_triggers_tests;
|
|
6629
|
+
var ticket_queue_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
6630
|
+
var queue, queueUnshared, enduser, ticket, ticketUnshared;
|
|
6631
|
+
return __generator(this, function (_a) {
|
|
6632
|
+
switch (_a.label) {
|
|
6633
|
+
case 0:
|
|
6634
|
+
(0, testing_1.log_header)("Ticket Queue Tests");
|
|
6635
|
+
return [4 /*yield*/, sdk.api.ticket_queues.createOne({ title: 'queue', userIds: [sdkNonAdmin.userInfo.id] })];
|
|
6636
|
+
case 1:
|
|
6637
|
+
queue = _a.sent();
|
|
6638
|
+
return [4 /*yield*/, sdk.api.ticket_queues.createOne({ title: 'queue unshared', userIds: [] })];
|
|
6639
|
+
case 2:
|
|
6640
|
+
queueUnshared = _a.sent();
|
|
6641
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({ fname: 'ticket' })];
|
|
6642
|
+
case 3:
|
|
6643
|
+
enduser = _a.sent();
|
|
6644
|
+
return [4 /*yield*/, sdk.api.tickets.createOne({ title: 'ticket in queue', queueId: queue.id, enduserId: enduser.id })];
|
|
6645
|
+
case 4:
|
|
6646
|
+
ticket = _a.sent();
|
|
6647
|
+
return [4 /*yield*/, sdk.api.tickets.createOne({ title: 'ticket no access', queueId: queueUnshared.id })];
|
|
6648
|
+
case 5:
|
|
6649
|
+
ticketUnshared = _a.sent();
|
|
6650
|
+
return [4 /*yield*/, (0, testing_1.async_test)("Admin ticket access", sdk.api.tickets.getSome, { onResult: function (ts) { return ts.length === 2; } })];
|
|
6651
|
+
case 6:
|
|
6652
|
+
_a.sent();
|
|
6653
|
+
return [4 /*yield*/, (0, testing_1.async_test)("Admin ticket access (specified queue)", function () { return sdk.api.tickets.getSome({ filter: { queueId: queue.id } }); }, { onResult: function (ts) { return ts.length === 1; } })];
|
|
6654
|
+
case 7:
|
|
6655
|
+
_a.sent();
|
|
6656
|
+
return [4 /*yield*/, (0, testing_1.async_test)("Admin ticket access (specified queue, other)", function () { return sdk.api.tickets.getSome({ filter: { queueId: queueUnshared.id } }); }, { onResult: function (ts) { return ts.length === 1; } })];
|
|
6657
|
+
case 8:
|
|
6658
|
+
_a.sent();
|
|
6659
|
+
return [4 /*yield*/, (0, testing_1.async_test)("Non-Admin ticket access (unspecified queue)", sdkNonAdmin.api.tickets.getSome, { onResult: function (ts) { return ts.length === 0; } })];
|
|
6660
|
+
case 9:
|
|
6661
|
+
_a.sent();
|
|
6662
|
+
return [4 /*yield*/, (0, testing_1.async_test)("Non-Admin ticket access (specified queue)", function () { return sdkNonAdmin.api.tickets.getSome({ filter: { queueId: queue.id } }); }, { onResult: function (ts) { return ts.length === 1; } })];
|
|
6663
|
+
case 10:
|
|
6664
|
+
_a.sent();
|
|
6665
|
+
return [4 /*yield*/, (0, testing_1.async_test)("Non-Admin ticket access (specified queue, no access)", function () { return sdkNonAdmin.api.tickets.getSome({ filter: { queueId: queueUnshared.id } }); }, handleAnyError)];
|
|
6666
|
+
case 11:
|
|
6667
|
+
_a.sent();
|
|
6668
|
+
return [4 /*yield*/, (0, testing_1.async_test)("Queue caches number of tickets on add", function () { return sdk.api.ticket_queues.getOne(queue.id); }, { onResult: function (q) { return q.count === 1; } })];
|
|
6669
|
+
case 12:
|
|
6670
|
+
_a.sent();
|
|
6671
|
+
return [4 /*yield*/, (0, testing_1.async_test)("Non-Admin can assign ticket to self", function () { return sdkNonAdmin.api.tickets.assign_from_queue({ ticketId: ticket.id }); }, { onResult: function (_a) {
|
|
6672
|
+
var ticket = _a.ticket;
|
|
6673
|
+
return ticket.owner === sdkNonAdmin.userInfo.id && !ticket.queueId && !!ticket.dequeuedAt;
|
|
6674
|
+
} })];
|
|
6675
|
+
case 13:
|
|
6676
|
+
_a.sent();
|
|
6677
|
+
return [4 /*yield*/, (0, testing_1.async_test)("Ticket can't be double-assigned ticket to self", function () { return sdk.api.tickets.assign_from_queue({ ticketId: ticket.id }); }, handleAnyError)];
|
|
6678
|
+
case 14:
|
|
6679
|
+
_a.sent();
|
|
6680
|
+
return [4 /*yield*/, (0, testing_1.async_test)("Non-Admin ticket cannot assign ticket to self when can't access queue", function () { return sdkNonAdmin.api.tickets.assign_from_queue({ ticketId: ticketUnshared.id }); }, handleAnyError)];
|
|
6681
|
+
case 15:
|
|
6682
|
+
_a.sent();
|
|
6683
|
+
return [4 /*yield*/, (0, testing_1.async_test)("Non-Admin can access ticket after assignment", function () { return sdkNonAdmin.api.tickets.getOne(ticket.id); }, { onResult: function (ticket) { return ticket.owner === sdkNonAdmin.userInfo.id && !ticket.queueId && !!ticket; } })];
|
|
6684
|
+
case 16:
|
|
6685
|
+
_a.sent();
|
|
6686
|
+
return [4 /*yield*/, (0, testing_1.async_test)("Queue caches number of tickets on assignment", function () { return pollForResults(function () { return sdk.api.ticket_queues.getOne(queue.id); }, function (q) { return q.count === 0; }, 50, 10); }, passOnAnyResult)];
|
|
6687
|
+
case 17:
|
|
6688
|
+
_a.sent();
|
|
6689
|
+
return [4 /*yield*/, (0, testing_1.async_test)("Queue caches number of tickets on assignment", function () { return pollForResults(function () { return sdkNonAdmin.api.endusers.getOne(enduser.id); }, function (e) { var _a; return !!((_a = e.assignedTo) === null || _a === void 0 ? void 0 : _a.includes(sdkNonAdmin.userInfo.id)); }, 50, 10); }, passOnAnyResult)];
|
|
6690
|
+
case 18:
|
|
6691
|
+
_a.sent();
|
|
6692
|
+
return [4 /*yield*/, Promise.all([
|
|
6693
|
+
sdk.api.ticket_queues.deleteOne(queue.id),
|
|
6694
|
+
sdk.api.ticket_queues.deleteOne(queueUnshared.id),
|
|
6695
|
+
sdk.api.endusers.deleteOne(enduser.id),
|
|
6696
|
+
sdk.api.tickets.deleteOne(ticketUnshared.id),
|
|
6697
|
+
])];
|
|
6698
|
+
case 19:
|
|
6699
|
+
_a.sent();
|
|
6700
|
+
return [2 /*return*/];
|
|
6701
|
+
}
|
|
6702
|
+
});
|
|
6703
|
+
}); };
|
|
6704
|
+
exports.ticket_queue_tests = ticket_queue_tests;
|
|
6705
|
+
var alternate_phones_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
6706
|
+
var createPhone, updatePhone, e;
|
|
6707
|
+
return __generator(this, function (_a) {
|
|
6708
|
+
switch (_a.label) {
|
|
6709
|
+
case 0:
|
|
6710
|
+
(0, testing_1.log_header)("Alternate Phones Tests");
|
|
6711
|
+
createPhone = "+15555555554";
|
|
6712
|
+
updatePhone = "+15555555555";
|
|
6713
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({ fname: 'test', fields: { createPhone: createPhone, notAPhone: 'hi' } })];
|
|
6714
|
+
case 1:
|
|
6715
|
+
e = _a.sent();
|
|
6716
|
+
return [4 /*yield*/, sdk.api.endusers.updateOne(e.id, { fields: { updatePhone: updatePhone, stillNotAPhone: 'hi' } })];
|
|
6717
|
+
case 2:
|
|
6718
|
+
_a.sent();
|
|
6719
|
+
return [4 /*yield*/, (0, testing_1.async_test)("alternatePhones automatically populated with custom fields on create and update", function () { return pollForResults(function () { return sdk.api.endusers.getOne(e.id); }, function (e) {
|
|
6720
|
+
var _a, _b, _c;
|
|
6721
|
+
return (((_a = e.fields) === null || _a === void 0 ? void 0 : _a.createPhone) === createPhone
|
|
6722
|
+
&& ((_b = e.fields) === null || _b === void 0 ? void 0 : _b.updatePhone) === updatePhone
|
|
6723
|
+
&& ((_c = e.alternatePhones) === null || _c === void 0 ? void 0 : _c.length) === 2
|
|
6724
|
+
&& e.alternatePhones.includes(createPhone)
|
|
6725
|
+
&& e.alternatePhones.includes(updatePhone));
|
|
6726
|
+
}, 50, 20); }, passOnAnyResult)];
|
|
6727
|
+
case 3:
|
|
6728
|
+
_a.sent();
|
|
6729
|
+
return [4 /*yield*/, sdk.api.endusers.deleteOne(e.id)];
|
|
6730
|
+
case 4:
|
|
6731
|
+
_a.sent();
|
|
6732
|
+
return [2 /*return*/];
|
|
6733
|
+
}
|
|
6734
|
+
});
|
|
6735
|
+
}); };
|
|
6736
|
+
exports.alternate_phones_tests = alternate_phones_tests;
|
|
6595
6737
|
var NO_TEST = function () { };
|
|
6596
6738
|
var tests = {
|
|
6739
|
+
ticket_queues: NO_TEST,
|
|
6597
6740
|
phone_trees: NO_TEST,
|
|
6598
6741
|
enduser_medications: NO_TEST,
|
|
6599
6742
|
automation_triggers: NO_TEST,
|
|
@@ -6696,7 +6839,7 @@ var validate_schema = function () {
|
|
|
6696
6839
|
_k.sent();
|
|
6697
6840
|
_k.label = 2;
|
|
6698
6841
|
case 2:
|
|
6699
|
-
_k.trys.push([2,
|
|
6842
|
+
_k.trys.push([2, 39, , 40]);
|
|
6700
6843
|
return [4 /*yield*/, validate_schema()];
|
|
6701
6844
|
case 3:
|
|
6702
6845
|
_k.sent();
|
|
@@ -6730,89 +6873,95 @@ var validate_schema = function () {
|
|
|
6730
6873
|
return [4 /*yield*/, multi_tenant_tests()]; // should come right after setup tests
|
|
6731
6874
|
case 9:
|
|
6732
6875
|
_k.sent(); // should come right after setup tests
|
|
6733
|
-
return [4 /*yield*/, (0, exports.
|
|
6876
|
+
return [4 /*yield*/, (0, exports.alternate_phones_tests)()];
|
|
6734
6877
|
case 10:
|
|
6735
6878
|
_k.sent();
|
|
6736
|
-
return [4 /*yield*/,
|
|
6879
|
+
return [4 /*yield*/, (0, exports.ticket_queue_tests)()];
|
|
6737
6880
|
case 11:
|
|
6738
6881
|
_k.sent();
|
|
6739
|
-
return [4 /*yield*/,
|
|
6882
|
+
return [4 /*yield*/, (0, exports.no_chained_triggers_tests)()];
|
|
6740
6883
|
case 12:
|
|
6741
6884
|
_k.sent();
|
|
6742
|
-
return [4 /*yield*/,
|
|
6885
|
+
return [4 /*yield*/, field_equals_trigger_tests()];
|
|
6743
6886
|
case 13:
|
|
6744
6887
|
_k.sent();
|
|
6745
|
-
return [4 /*yield*/,
|
|
6888
|
+
return [4 /*yield*/, test_ticket_automation_assignment_and_optimization()];
|
|
6746
6889
|
case 14:
|
|
6747
6890
|
_k.sent();
|
|
6748
|
-
return [4 /*yield*/,
|
|
6891
|
+
return [4 /*yield*/, role_based_access_tests()];
|
|
6749
6892
|
case 15:
|
|
6750
6893
|
_k.sent();
|
|
6751
|
-
return [4 /*yield*/,
|
|
6894
|
+
return [4 /*yield*/, automation_trigger_tests()];
|
|
6752
6895
|
case 16:
|
|
6753
6896
|
_k.sent();
|
|
6754
|
-
return [4 /*yield*/,
|
|
6897
|
+
return [4 /*yield*/, enduser_session_tests()];
|
|
6755
6898
|
case 17:
|
|
6756
6899
|
_k.sent();
|
|
6757
|
-
return [4 /*yield*/,
|
|
6900
|
+
return [4 /*yield*/, nextReminderInMS_tests()];
|
|
6758
6901
|
case 18:
|
|
6759
6902
|
_k.sent();
|
|
6760
|
-
return [4 /*yield*/,
|
|
6903
|
+
return [4 /*yield*/, search_tests()];
|
|
6761
6904
|
case 19:
|
|
6762
6905
|
_k.sent();
|
|
6763
|
-
return [4 /*yield*/,
|
|
6906
|
+
return [4 /*yield*/, wait_for_trigger_tests()];
|
|
6764
6907
|
case 20:
|
|
6765
6908
|
_k.sent();
|
|
6766
|
-
return [4 /*yield*/,
|
|
6909
|
+
return [4 /*yield*/, pdf_generation()];
|
|
6767
6910
|
case 21:
|
|
6768
6911
|
_k.sent();
|
|
6769
|
-
return [4 /*yield*/,
|
|
6912
|
+
return [4 /*yield*/, remove_from_journey_on_incoming_comms_tests()];
|
|
6770
6913
|
case 22:
|
|
6771
6914
|
_k.sent();
|
|
6772
|
-
return [4 /*yield*/, (
|
|
6915
|
+
return [4 /*yield*/, rate_limit_tests()];
|
|
6773
6916
|
case 23:
|
|
6774
6917
|
_k.sent();
|
|
6775
|
-
return [4 /*yield*/,
|
|
6918
|
+
return [4 /*yield*/, merge_enduser_tests()];
|
|
6776
6919
|
case 24:
|
|
6777
6920
|
_k.sent();
|
|
6778
|
-
return [4 /*yield*/,
|
|
6921
|
+
return [4 /*yield*/, (0, exports.self_serve_appointment_booking_tests)()];
|
|
6779
6922
|
case 25:
|
|
6780
6923
|
_k.sent();
|
|
6781
|
-
return [4 /*yield*/,
|
|
6924
|
+
return [4 /*yield*/, auto_reply_tests()];
|
|
6782
6925
|
case 26:
|
|
6783
6926
|
_k.sent();
|
|
6784
|
-
return [4 /*yield*/, (
|
|
6927
|
+
return [4 /*yield*/, sub_organization_enduser_tests()];
|
|
6785
6928
|
case 27:
|
|
6786
6929
|
_k.sent();
|
|
6787
|
-
return [4 /*yield*/,
|
|
6930
|
+
return [4 /*yield*/, sub_organization_tests()];
|
|
6788
6931
|
case 28:
|
|
6789
6932
|
_k.sent();
|
|
6790
|
-
return [4 /*yield*/,
|
|
6933
|
+
return [4 /*yield*/, (0, exports.filter_by_date_tests)()];
|
|
6791
6934
|
case 29:
|
|
6792
6935
|
_k.sent();
|
|
6793
|
-
return [4 /*yield*/,
|
|
6936
|
+
return [4 /*yield*/, generate_user_auth_tests()];
|
|
6794
6937
|
case 30:
|
|
6795
6938
|
_k.sent();
|
|
6796
|
-
return [4 /*yield*/,
|
|
6939
|
+
return [4 /*yield*/, generateEnduserAuthTests()];
|
|
6797
6940
|
case 31:
|
|
6798
6941
|
_k.sent();
|
|
6799
|
-
return [4 /*yield*/,
|
|
6942
|
+
return [4 /*yield*/, public_form_tests()];
|
|
6800
6943
|
case 32:
|
|
6801
6944
|
_k.sent();
|
|
6802
|
-
return [4 /*yield*/,
|
|
6945
|
+
return [4 /*yield*/, badInputTests()];
|
|
6803
6946
|
case 33:
|
|
6804
6947
|
_k.sent();
|
|
6805
|
-
return [4 /*yield*/,
|
|
6948
|
+
return [4 /*yield*/, filterTests()];
|
|
6806
6949
|
case 34:
|
|
6807
6950
|
_k.sent();
|
|
6808
|
-
return [4 /*yield*/,
|
|
6951
|
+
return [4 /*yield*/, updatesTests()];
|
|
6809
6952
|
case 35:
|
|
6810
6953
|
_k.sent();
|
|
6811
|
-
return [4 /*yield*/,
|
|
6954
|
+
return [4 /*yield*/, threadKeyTests()];
|
|
6812
6955
|
case 36:
|
|
6813
6956
|
_k.sent();
|
|
6814
|
-
return [
|
|
6957
|
+
return [4 /*yield*/, enduserAccessTests()];
|
|
6815
6958
|
case 37:
|
|
6959
|
+
_k.sent();
|
|
6960
|
+
return [4 /*yield*/, enduser_redaction_tests()];
|
|
6961
|
+
case 38:
|
|
6962
|
+
_k.sent();
|
|
6963
|
+
return [3 /*break*/, 40];
|
|
6964
|
+
case 39:
|
|
6816
6965
|
err_1 = _k.sent();
|
|
6817
6966
|
console.error("Failed during custom test");
|
|
6818
6967
|
if (err_1.message && err_1.info) {
|
|
@@ -6822,18 +6971,18 @@ var validate_schema = function () {
|
|
|
6822
6971
|
console.error(err_1);
|
|
6823
6972
|
}
|
|
6824
6973
|
process.exit(1);
|
|
6825
|
-
return [3 /*break*/,
|
|
6826
|
-
case
|
|
6974
|
+
return [3 /*break*/, 40];
|
|
6975
|
+
case 40:
|
|
6827
6976
|
_a = schema_1.schema;
|
|
6828
6977
|
_b = [];
|
|
6829
6978
|
for (_c in _a)
|
|
6830
6979
|
_b.push(_c);
|
|
6831
6980
|
_i = 0;
|
|
6832
|
-
_k.label =
|
|
6833
|
-
case
|
|
6834
|
-
if (!(_i < _b.length)) return [3 /*break*/,
|
|
6981
|
+
_k.label = 41;
|
|
6982
|
+
case 41:
|
|
6983
|
+
if (!(_i < _b.length)) return [3 /*break*/, 44];
|
|
6835
6984
|
_c = _b[_i];
|
|
6836
|
-
if (!(_c in _a)) return [3 /*break*/,
|
|
6985
|
+
if (!(_c in _a)) return [3 /*break*/, 43];
|
|
6837
6986
|
n = _c;
|
|
6838
6987
|
returnValidation = (_j = (_h = schema_1.schema[n].customActions) === null || _h === void 0 ? void 0 : _h.create) === null || _j === void 0 ? void 0 : _j.returns;
|
|
6839
6988
|
return [4 /*yield*/, run_generated_tests({
|
|
@@ -6844,41 +6993,41 @@ var validate_schema = function () {
|
|
|
6844
6993
|
create: returnValidation // ModelFields<ClientModel>,
|
|
6845
6994
|
}
|
|
6846
6995
|
})];
|
|
6847
|
-
case
|
|
6996
|
+
case 42:
|
|
6848
6997
|
_k.sent();
|
|
6849
|
-
_k.label =
|
|
6850
|
-
case
|
|
6998
|
+
_k.label = 43;
|
|
6999
|
+
case 43:
|
|
6851
7000
|
_i++;
|
|
6852
|
-
return [3 /*break*/,
|
|
6853
|
-
case
|
|
7001
|
+
return [3 /*break*/, 41];
|
|
7002
|
+
case 44:
|
|
6854
7003
|
_d = tests;
|
|
6855
7004
|
_e = [];
|
|
6856
7005
|
for (_f in _d)
|
|
6857
7006
|
_e.push(_f);
|
|
6858
7007
|
_g = 0;
|
|
6859
|
-
_k.label =
|
|
6860
|
-
case
|
|
6861
|
-
if (!(_g < _e.length)) return [3 /*break*/,
|
|
7008
|
+
_k.label = 45;
|
|
7009
|
+
case 45:
|
|
7010
|
+
if (!(_g < _e.length)) return [3 /*break*/, 50];
|
|
6862
7011
|
_f = _e[_g];
|
|
6863
|
-
if (!(_f in _d)) return [3 /*break*/,
|
|
7012
|
+
if (!(_f in _d)) return [3 /*break*/, 49];
|
|
6864
7013
|
t = _f;
|
|
6865
|
-
_k.label =
|
|
6866
|
-
case
|
|
6867
|
-
_k.trys.push([
|
|
7014
|
+
_k.label = 46;
|
|
7015
|
+
case 46:
|
|
7016
|
+
_k.trys.push([46, 48, , 49]);
|
|
6868
7017
|
return [4 /*yield*/, tests[t]()];
|
|
6869
|
-
case
|
|
7018
|
+
case 47:
|
|
6870
7019
|
_k.sent();
|
|
6871
|
-
return [3 /*break*/,
|
|
6872
|
-
case
|
|
7020
|
+
return [3 /*break*/, 49];
|
|
7021
|
+
case 48:
|
|
6873
7022
|
err_2 = _k.sent();
|
|
6874
7023
|
console.error("Error running test:");
|
|
6875
7024
|
console.error(err_2);
|
|
6876
7025
|
process.exit(1);
|
|
6877
|
-
return [3 /*break*/,
|
|
6878
|
-
case
|
|
7026
|
+
return [3 /*break*/, 49];
|
|
7027
|
+
case 49:
|
|
6879
7028
|
_g++;
|
|
6880
|
-
return [3 /*break*/,
|
|
6881
|
-
case
|
|
7029
|
+
return [3 /*break*/, 45];
|
|
7030
|
+
case 50:
|
|
6882
7031
|
process.exit();
|
|
6883
7032
|
return [2 /*return*/];
|
|
6884
7033
|
}
|