@tellescope/sdk 1.69.4 → 1.70.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/sdk.d.ts +2 -0
- package/lib/cjs/sdk.d.ts.map +1 -1
- package/lib/cjs/tests/tests.js +373 -59
- package/lib/cjs/tests/tests.js.map +1 -1
- package/lib/esm/sdk.d.ts +2 -0
- package/lib/esm/sdk.d.ts.map +1 -1
- package/lib/esm/tests/tests.js +373 -59
- package/lib/esm/tests/tests.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +8 -8
- package/src/tests/tests.ts +213 -3
- package/test_generated.pdf +0 -0
package/lib/esm/tests/tests.js
CHANGED
|
@@ -5035,7 +5035,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
5035
5035
|
return [4 /*yield*/, sdk.api.users.updateOne(sdk.userInfo.id, {
|
|
5036
5036
|
weeklyAvailabilities: [
|
|
5037
5037
|
{
|
|
5038
|
-
dayOfWeekStartingSundayIndexedByZero:
|
|
5038
|
+
dayOfWeekStartingSundayIndexedByZero: 0,
|
|
5039
5039
|
startTimeInMinutes: 60 * 12,
|
|
5040
5040
|
endTimeInMinutes: 60 * 13, // 1pm,
|
|
5041
5041
|
},
|
|
@@ -5050,7 +5050,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
5050
5050
|
return [4 /*yield*/, sdkNonAdmin.api.users.updateOne(sdkNonAdmin.userInfo.id, {
|
|
5051
5051
|
weeklyAvailabilities: [
|
|
5052
5052
|
{
|
|
5053
|
-
dayOfWeekStartingSundayIndexedByZero:
|
|
5053
|
+
dayOfWeekStartingSundayIndexedByZero: 0,
|
|
5054
5054
|
startTimeInMinutes: 60 * 12,
|
|
5055
5055
|
endTimeInMinutes: 60 * 14, // 2pm,
|
|
5056
5056
|
},
|
|
@@ -5064,7 +5064,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
5064
5064
|
return [4 /*yield*/, enduserSDK.api.calendar_events.get_appointment_availability({
|
|
5065
5065
|
calendarEventTemplateId: event30min.id,
|
|
5066
5066
|
from: new Date(Date.now()),
|
|
5067
|
-
to: new Date(Date.now() +
|
|
5067
|
+
to: new Date(Date.now() + 7 * 24 * 60 * 60 * 1000),
|
|
5068
5068
|
multi: true,
|
|
5069
5069
|
userIds: [sdk.userInfo.id, sdkNonAdmin.userInfo.id]
|
|
5070
5070
|
})];
|
|
@@ -7013,6 +7013,311 @@ var test_weighted_round_robin = function () { return __awaiter(void 0, void 0, v
|
|
|
7013
7013
|
}
|
|
7014
7014
|
});
|
|
7015
7015
|
}); };
|
|
7016
|
+
var enduser_access_tags_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
7017
|
+
var matchTag, dontMatchTag, matchEnduser, matchMultiTagEnduser, dontMatchEnduser, matchTicket, dontMatchTicket;
|
|
7018
|
+
return __generator(this, function (_a) {
|
|
7019
|
+
switch (_a.label) {
|
|
7020
|
+
case 0:
|
|
7021
|
+
log_header("enduser_access_tags_tests");
|
|
7022
|
+
matchTag = 'Access';
|
|
7023
|
+
dontMatchTag = 'No Access';
|
|
7024
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({ accessTags: [matchTag] })];
|
|
7025
|
+
case 1:
|
|
7026
|
+
matchEnduser = _a.sent();
|
|
7027
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({ accessTags: [matchTag, dontMatchTag] })];
|
|
7028
|
+
case 2:
|
|
7029
|
+
matchMultiTagEnduser = _a.sent();
|
|
7030
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({ accessTags: [dontMatchTag] })];
|
|
7031
|
+
case 3:
|
|
7032
|
+
dontMatchEnduser = _a.sent();
|
|
7033
|
+
return [4 /*yield*/, sdk.api.tickets.createOne({ enduserId: matchEnduser.id, title: 'ticket' })];
|
|
7034
|
+
case 4:
|
|
7035
|
+
matchTicket = _a.sent();
|
|
7036
|
+
return [4 /*yield*/, sdk.api.tickets.createOne({ enduserId: dontMatchEnduser.id, title: 'ticket' })
|
|
7037
|
+
// start with disabled setting an no tags on non-admin
|
|
7038
|
+
];
|
|
7039
|
+
case 5:
|
|
7040
|
+
dontMatchTicket = _a.sent();
|
|
7041
|
+
// start with disabled setting an no tags on non-admin
|
|
7042
|
+
return [4 /*yield*/, sdk.api.users.updateOne(sdkNonAdmin.userInfo.id, { tags: [] }, { replaceObjectFields: true })];
|
|
7043
|
+
case 6:
|
|
7044
|
+
// start with disabled setting an no tags on non-admin
|
|
7045
|
+
_a.sent();
|
|
7046
|
+
return [4 /*yield*/, sdk.api.organizations.updateOne(sdkNonAdmin.userInfo.businessId, {
|
|
7047
|
+
settings: { endusers: { enableAccessTags: false } }
|
|
7048
|
+
})];
|
|
7049
|
+
case 7:
|
|
7050
|
+
_a.sent();
|
|
7051
|
+
return [4 /*yield*/, sdkNonAdmin.authenticate(nonAdminEmail, nonAdminPassword)]; // ensure enableAccessTags setting stored correctly on jwt
|
|
7052
|
+
case 8:
|
|
7053
|
+
_a.sent(); // ensure enableAccessTags setting stored correctly on jwt
|
|
7054
|
+
return [4 /*yield*/, async_test("Setting disabled, no tags, list", sdkNonAdmin.api.endusers.getSome, { onResult: function (r) { return r.length === 0; } })];
|
|
7055
|
+
case 9:
|
|
7056
|
+
_a.sent();
|
|
7057
|
+
return [4 /*yield*/, async_test("Setting disabled, matchEnduser", function () { return sdkNonAdmin.api.endusers.getOne(matchEnduser.id); }, handleAnyError)];
|
|
7058
|
+
case 10:
|
|
7059
|
+
_a.sent();
|
|
7060
|
+
return [4 /*yield*/, async_test("Setting disabled, dontMatchEnduser", function () { return sdkNonAdmin.api.endusers.getOne(dontMatchEnduser.id); }, handleAnyError)];
|
|
7061
|
+
case 11:
|
|
7062
|
+
_a.sent();
|
|
7063
|
+
return [4 /*yield*/, async_test("Setting disabled, no tags, tickets", sdkNonAdmin.api.tickets.getSome, { onResult: function (r) { return r.length === 0; } })];
|
|
7064
|
+
case 12:
|
|
7065
|
+
_a.sent();
|
|
7066
|
+
return [4 /*yield*/, async_test("Setting disabled, matchEnduser ticket", function () { return sdkNonAdmin.api.tickets.getOne(matchTicket.id); }, handleAnyError)];
|
|
7067
|
+
case 13:
|
|
7068
|
+
_a.sent();
|
|
7069
|
+
return [4 /*yield*/, async_test("Setting disabled, dontMatchEnduser ticket", function () { return sdkNonAdmin.api.tickets.getOne(dontMatchTicket.id); }, handleAnyError)];
|
|
7070
|
+
case 14:
|
|
7071
|
+
_a.sent();
|
|
7072
|
+
return [4 /*yield*/, async_test("tickets filter enduser valid", function () { return sdkNonAdmin.api.tickets.getSome({ filter: { enduserId: matchEnduser.id } }); }, {
|
|
7073
|
+
onResult: function (r) { return r.length === 0; }
|
|
7074
|
+
})];
|
|
7075
|
+
case 15:
|
|
7076
|
+
_a.sent();
|
|
7077
|
+
return [4 /*yield*/, async_test("tickets filter enduser invalid", function () { return sdkNonAdmin.api.tickets.getSome({ filter: { enduserId: dontMatchEnduser.id } }); }, {
|
|
7078
|
+
onResult: function (r) { return r.length === 0; }
|
|
7079
|
+
})
|
|
7080
|
+
// enable setting, disable tags
|
|
7081
|
+
];
|
|
7082
|
+
case 16:
|
|
7083
|
+
_a.sent();
|
|
7084
|
+
// enable setting, disable tags
|
|
7085
|
+
return [4 /*yield*/, sdk.api.organizations.updateOne(sdkNonAdmin.userInfo.businessId, {
|
|
7086
|
+
settings: { endusers: { enableAccessTags: true } }
|
|
7087
|
+
})];
|
|
7088
|
+
case 17:
|
|
7089
|
+
// enable setting, disable tags
|
|
7090
|
+
_a.sent();
|
|
7091
|
+
return [4 /*yield*/, sdkNonAdmin.authenticate(nonAdminEmail, nonAdminPassword)]; // ensure enableAccessTags setting stored correctly on jwt
|
|
7092
|
+
case 18:
|
|
7093
|
+
_a.sent(); // ensure enableAccessTags setting stored correctly on jwt
|
|
7094
|
+
return [4 /*yield*/, async_test("enable setting, disable tags", sdkNonAdmin.api.endusers.getSome, { onResult: function (r) { return r.length === 0; } })];
|
|
7095
|
+
case 19:
|
|
7096
|
+
_a.sent();
|
|
7097
|
+
return [4 /*yield*/, async_test("enable setting, matchEnduser", function () { return sdkNonAdmin.api.endusers.getOne(matchEnduser.id); }, handleAnyError)];
|
|
7098
|
+
case 20:
|
|
7099
|
+
_a.sent();
|
|
7100
|
+
return [4 /*yield*/, async_test("enable setting, dontMatchEnduser", function () { return sdkNonAdmin.api.endusers.getOne(dontMatchEnduser.id); }, handleAnyError)];
|
|
7101
|
+
case 21:
|
|
7102
|
+
_a.sent();
|
|
7103
|
+
return [4 /*yield*/, async_test("enable setting, no tags, tickets", sdkNonAdmin.api.tickets.getSome, { onResult: function (r) { return r.length === 0; } })];
|
|
7104
|
+
case 22:
|
|
7105
|
+
_a.sent();
|
|
7106
|
+
return [4 /*yield*/, async_test("enable setting, matchEnduser ticket", function () { return sdkNonAdmin.api.tickets.getOne(matchTicket.id); }, handleAnyError)];
|
|
7107
|
+
case 23:
|
|
7108
|
+
_a.sent();
|
|
7109
|
+
return [4 /*yield*/, async_test("enable setting, dontMatchEnduser ticket", function () { return sdkNonAdmin.api.tickets.getOne(dontMatchTicket.id); }, handleAnyError)];
|
|
7110
|
+
case 24:
|
|
7111
|
+
_a.sent();
|
|
7112
|
+
return [4 /*yield*/, async_test("tickets filter enduser valid", function () { return sdkNonAdmin.api.tickets.getSome({ filter: { enduserId: matchEnduser.id } }); }, {
|
|
7113
|
+
onResult: function (r) { return r.length === 0; }
|
|
7114
|
+
})];
|
|
7115
|
+
case 25:
|
|
7116
|
+
_a.sent();
|
|
7117
|
+
return [4 /*yield*/, async_test("tickets filter enduser invalid", function () { return sdkNonAdmin.api.tickets.getSome({ filter: { enduserId: dontMatchEnduser.id } }); }, {
|
|
7118
|
+
onResult: function (r) { return r.length === 0; }
|
|
7119
|
+
})
|
|
7120
|
+
// disable setting, enable tags
|
|
7121
|
+
];
|
|
7122
|
+
case 26:
|
|
7123
|
+
_a.sent();
|
|
7124
|
+
// disable setting, enable tags
|
|
7125
|
+
return [4 /*yield*/, sdk.api.users.updateOne(sdkNonAdmin.userInfo.id, { tags: [matchTag] }, { replaceObjectFields: true })];
|
|
7126
|
+
case 27:
|
|
7127
|
+
// disable setting, enable tags
|
|
7128
|
+
_a.sent();
|
|
7129
|
+
return [4 /*yield*/, sdk.api.organizations.updateOne(sdkNonAdmin.userInfo.businessId, {
|
|
7130
|
+
settings: { endusers: { enableAccessTags: false } }
|
|
7131
|
+
})];
|
|
7132
|
+
case 28:
|
|
7133
|
+
_a.sent();
|
|
7134
|
+
return [4 /*yield*/, sdkNonAdmin.authenticate(nonAdminEmail, nonAdminPassword)]; // ensure enableAccessTags setting stored correctly on jwt
|
|
7135
|
+
case 29:
|
|
7136
|
+
_a.sent(); // ensure enableAccessTags setting stored correctly on jwt
|
|
7137
|
+
return [4 /*yield*/, async_test("disable setting, enable tags", sdkNonAdmin.api.endusers.getSome, { onResult: function (r) { return r.length === 0; } })];
|
|
7138
|
+
case 30:
|
|
7139
|
+
_a.sent();
|
|
7140
|
+
return [4 /*yield*/, async_test("disable setting, matchEnduser", function () { return sdkNonAdmin.api.endusers.getOne(matchEnduser.id); }, handleAnyError)];
|
|
7141
|
+
case 31:
|
|
7142
|
+
_a.sent();
|
|
7143
|
+
return [4 /*yield*/, async_test("disable setting, dontMatchEnduser", function () { return sdkNonAdmin.api.endusers.getOne(dontMatchEnduser.id); }, handleAnyError)];
|
|
7144
|
+
case 32:
|
|
7145
|
+
_a.sent();
|
|
7146
|
+
return [4 /*yield*/, async_test("disable setting, enable tags, tickets", sdkNonAdmin.api.tickets.getSome, { onResult: function (r) { return r.length === 0; } })];
|
|
7147
|
+
case 33:
|
|
7148
|
+
_a.sent();
|
|
7149
|
+
return [4 /*yield*/, async_test("disable setting, matchEnduser ticket", function () { return sdkNonAdmin.api.tickets.getOne(matchTicket.id); }, handleAnyError)];
|
|
7150
|
+
case 34:
|
|
7151
|
+
_a.sent();
|
|
7152
|
+
return [4 /*yield*/, async_test("disable setting, dontMatchEnduser ticket", function () { return sdkNonAdmin.api.tickets.getOne(dontMatchTicket.id); }, handleAnyError)];
|
|
7153
|
+
case 35:
|
|
7154
|
+
_a.sent();
|
|
7155
|
+
return [4 /*yield*/, async_test("tickets filter enduser valid", function () { return sdkNonAdmin.api.tickets.getSome({ filter: { enduserId: matchEnduser.id } }); }, {
|
|
7156
|
+
onResult: function (r) { return r.length === 0; }
|
|
7157
|
+
})];
|
|
7158
|
+
case 36:
|
|
7159
|
+
_a.sent();
|
|
7160
|
+
return [4 /*yield*/, async_test("tickets filter enduser invalid", function () { return sdkNonAdmin.api.tickets.getSome({ filter: { enduserId: dontMatchEnduser.id } }); }, {
|
|
7161
|
+
onResult: function (r) { return r.length === 0; }
|
|
7162
|
+
})
|
|
7163
|
+
// enabled setting AND tags (keeps tags enabled)
|
|
7164
|
+
];
|
|
7165
|
+
case 37:
|
|
7166
|
+
_a.sent();
|
|
7167
|
+
// enabled setting AND tags (keeps tags enabled)
|
|
7168
|
+
return [4 /*yield*/, sdk.api.organizations.updateOne(sdkNonAdmin.userInfo.businessId, {
|
|
7169
|
+
settings: { endusers: { enableAccessTags: true } }
|
|
7170
|
+
})];
|
|
7171
|
+
case 38:
|
|
7172
|
+
// enabled setting AND tags (keeps tags enabled)
|
|
7173
|
+
_a.sent();
|
|
7174
|
+
return [4 /*yield*/, sdkNonAdmin.authenticate(nonAdminEmail, nonAdminPassword)]; // ensure enableAccessTags setting stored correctly on jwt
|
|
7175
|
+
case 39:
|
|
7176
|
+
_a.sent(); // ensure enableAccessTags setting stored correctly on jwt
|
|
7177
|
+
return [4 /*yield*/, async_test("Access by tag with setting works", sdkNonAdmin.api.endusers.getSome, {
|
|
7178
|
+
onResult: function (r) { return r.length === 2 && !r.find(function (e) { return e.id === dontMatchEnduser.id; }); }
|
|
7179
|
+
})];
|
|
7180
|
+
case 40:
|
|
7181
|
+
_a.sent();
|
|
7182
|
+
return [4 /*yield*/, async_test("access matchEnduser", function () { return sdkNonAdmin.api.endusers.getOne(matchEnduser.id); }, passOnAnyResult)];
|
|
7183
|
+
case 41:
|
|
7184
|
+
_a.sent();
|
|
7185
|
+
return [4 /*yield*/, async_test("access dontMatchEnduser bad", function () { return sdkNonAdmin.api.endusers.getOne(dontMatchEnduser.id); }, handleAnyError)];
|
|
7186
|
+
case 42:
|
|
7187
|
+
_a.sent();
|
|
7188
|
+
return [4 /*yield*/, async_test("access setting, no tags, tickets", sdkNonAdmin.api.tickets.getSome, {
|
|
7189
|
+
onResult: function (r) { return r.length === 1 && !r.find(function (t) { return t.id === dontMatchTicket.id; }); }
|
|
7190
|
+
})];
|
|
7191
|
+
case 43:
|
|
7192
|
+
_a.sent();
|
|
7193
|
+
return [4 /*yield*/, async_test("access, matchEnduser ticket", function () { return sdkNonAdmin.api.tickets.getOne(matchTicket.id); }, passOnAnyResult)];
|
|
7194
|
+
case 44:
|
|
7195
|
+
_a.sent();
|
|
7196
|
+
return [4 /*yield*/, async_test("access, dontMatchEnduser ticket", function () { return sdkNonAdmin.api.tickets.getOne(dontMatchTicket.id); }, handleAnyError)];
|
|
7197
|
+
case 45:
|
|
7198
|
+
_a.sent();
|
|
7199
|
+
return [4 /*yield*/, async_test("tickets filter enduser valid", function () { return sdkNonAdmin.api.tickets.getSome({ filter: { enduserId: matchEnduser.id } }); }, {
|
|
7200
|
+
onResult: function (r) { return r.length === 1; }
|
|
7201
|
+
})];
|
|
7202
|
+
case 46:
|
|
7203
|
+
_a.sent();
|
|
7204
|
+
return [4 /*yield*/, async_test("tickets filter enduser invalid", function () { return sdkNonAdmin.api.tickets.getSome({ filter: { enduserId: dontMatchEnduser.id } }); }, {
|
|
7205
|
+
onResult: function (r) { return r.length === 0; }
|
|
7206
|
+
})];
|
|
7207
|
+
case 47:
|
|
7208
|
+
_a.sent();
|
|
7209
|
+
return [4 /*yield*/, async_test("Non-admin can't update tags", function () { return sdkNonAdmin.api.users.updateOne(sdkNonAdmin.userInfo.id, { tags: ['new tag'] }); }, handleAnyError)];
|
|
7210
|
+
case 48:
|
|
7211
|
+
_a.sent();
|
|
7212
|
+
return [4 /*yield*/, async_test("Non-admin can't update tags (with other updates)", function () { return sdkNonAdmin.api.users.updateOne(sdkNonAdmin.userInfo.id, { tags: ['new tag'], bio: '' }); }, handleAnyError)];
|
|
7213
|
+
case 49:
|
|
7214
|
+
_a.sent();
|
|
7215
|
+
return [4 /*yield*/, async_test("Non-admin can update other fields", function () { return sdkNonAdmin.api.users.updateOne(sdkNonAdmin.userInfo.id, { bio: '' }); }, passOnAnyResult)
|
|
7216
|
+
// cleanup
|
|
7217
|
+
];
|
|
7218
|
+
case 50:
|
|
7219
|
+
_a.sent();
|
|
7220
|
+
// cleanup
|
|
7221
|
+
return [4 /*yield*/, sdk.api.organizations.updateOne(sdkNonAdmin.userInfo.businessId, {
|
|
7222
|
+
settings: { endusers: { enableAccessTags: false } }
|
|
7223
|
+
})];
|
|
7224
|
+
case 51:
|
|
7225
|
+
// cleanup
|
|
7226
|
+
_a.sent();
|
|
7227
|
+
return [4 /*yield*/, sdk.api.users.updateOne(sdkNonAdmin.userInfo.id, { tags: [] }, { replaceObjectFields: true })];
|
|
7228
|
+
case 52:
|
|
7229
|
+
_a.sent();
|
|
7230
|
+
return [4 /*yield*/, sdkNonAdmin.refresh_session()];
|
|
7231
|
+
case 53:
|
|
7232
|
+
_a.sent();
|
|
7233
|
+
return [4 /*yield*/, Promise.all([
|
|
7234
|
+
sdk.api.endusers.deleteOne(matchEnduser.id),
|
|
7235
|
+
sdk.api.endusers.deleteOne(matchMultiTagEnduser.id),
|
|
7236
|
+
sdk.api.endusers.deleteOne(dontMatchEnduser.id),
|
|
7237
|
+
])];
|
|
7238
|
+
case 54:
|
|
7239
|
+
_a.sent();
|
|
7240
|
+
return [2 /*return*/];
|
|
7241
|
+
}
|
|
7242
|
+
});
|
|
7243
|
+
}); };
|
|
7244
|
+
var unique_strings_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
7245
|
+
var e;
|
|
7246
|
+
return __generator(this, function (_a) {
|
|
7247
|
+
switch (_a.label) {
|
|
7248
|
+
case 0:
|
|
7249
|
+
log_header("unique_strings test");
|
|
7250
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({ assignedTo: ['1', '2', '2', '1', '3'] })];
|
|
7251
|
+
case 1:
|
|
7252
|
+
e = _a.sent();
|
|
7253
|
+
return [4 /*yield*/, async_test("Duplicate care team assignments are prevented", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) { var _a; return ((_a = e.assignedTo) === null || _a === void 0 ? void 0 : _a.length) === 3 && e.assignedTo.includes('1') && e.assignedTo.includes('2') && e.assignedTo.includes('3'); } })
|
|
7254
|
+
// attempt to push duplicates of each
|
|
7255
|
+
];
|
|
7256
|
+
case 2:
|
|
7257
|
+
_a.sent();
|
|
7258
|
+
// attempt to push duplicates of each
|
|
7259
|
+
return [4 /*yield*/, sdk.api.endusers.updateOne(e.id, { assignedTo: ['1', '2', '3'] }, { replaceObjectFields: false })];
|
|
7260
|
+
case 3:
|
|
7261
|
+
// attempt to push duplicates of each
|
|
7262
|
+
_a.sent();
|
|
7263
|
+
return [4 /*yield*/, async_test("Duplicate care team assignments are prevented (update)", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) { var _a; return ((_a = e.assignedTo) === null || _a === void 0 ? void 0 : _a.length) === 3 && e.assignedTo.includes('1') && e.assignedTo.includes('2') && e.assignedTo.includes('3'); } })
|
|
7264
|
+
// validate setting empty is allowed
|
|
7265
|
+
];
|
|
7266
|
+
case 4:
|
|
7267
|
+
_a.sent();
|
|
7268
|
+
// validate setting empty is allowed
|
|
7269
|
+
return [4 /*yield*/, async_test("Setting empty is still allowed", function () { return sdk.api.endusers.updateOne(e.id, { assignedTo: [] }, { replaceObjectFields: true }); }, passOnAnyResult)];
|
|
7270
|
+
case 5:
|
|
7271
|
+
// validate setting empty is allowed
|
|
7272
|
+
_a.sent();
|
|
7273
|
+
return [4 /*yield*/, Promise.all([
|
|
7274
|
+
sdk.api.endusers.deleteOne(e.id),
|
|
7275
|
+
])];
|
|
7276
|
+
case 6: return [2 /*return*/, _a.sent()];
|
|
7277
|
+
}
|
|
7278
|
+
});
|
|
7279
|
+
}); };
|
|
7280
|
+
var marketing_email_unsubscribe_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
7281
|
+
var e;
|
|
7282
|
+
return __generator(this, function (_a) {
|
|
7283
|
+
switch (_a.label) {
|
|
7284
|
+
case 0:
|
|
7285
|
+
log_header("marketing_email_unsubscribe_tests");
|
|
7286
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({ email: 'test@tellescope.com' })];
|
|
7287
|
+
case 1:
|
|
7288
|
+
e = _a.sent();
|
|
7289
|
+
return [4 /*yield*/, async_test("Non-marketing email good", function () { return sdk.api.emails.createOne({ logOnly: true, subject: '', enduserId: e.id, textContent: '', HTMLContent: '' }); }, passOnAnyResult)];
|
|
7290
|
+
case 2:
|
|
7291
|
+
_a.sent();
|
|
7292
|
+
return [4 /*yield*/, async_test("Marketing email good when subscribed", function () { return sdk.api.emails.createOne({ logOnly: true, isMarketing: true, subject: '', enduserId: e.id, textContent: '', HTMLContent: '' }); }, passOnAnyResult)
|
|
7293
|
+
// attempt to push duplicates of each
|
|
7294
|
+
];
|
|
7295
|
+
case 3:
|
|
7296
|
+
_a.sent();
|
|
7297
|
+
// attempt to push duplicates of each
|
|
7298
|
+
return [4 /*yield*/, sdk.GET('/v1/unsubscribe', { enduserId: e.id })];
|
|
7299
|
+
case 4:
|
|
7300
|
+
// attempt to push duplicates of each
|
|
7301
|
+
_a.sent();
|
|
7302
|
+
return [4 /*yield*/, async_test("GET /v1/unsubscribe works", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) { return e.unsubscribedFromMarketing === true; } })];
|
|
7303
|
+
case 5:
|
|
7304
|
+
_a.sent();
|
|
7305
|
+
return [4 /*yield*/, async_test("Non-marketing email good", function () { return sdk.api.emails.createOne({ logOnly: true, subject: '', enduserId: e.id, textContent: '', HTMLContent: '' }); }, passOnAnyResult)];
|
|
7306
|
+
case 6:
|
|
7307
|
+
_a.sent();
|
|
7308
|
+
return [4 /*yield*/, async_test("Marketing email bad when unsubscribed", function () { return sdk.api.emails.createOne({ logOnly: true, isMarketing: true, subject: '', enduserId: e.id, textContent: '', HTMLContent: '' }); }, handleAnyError)];
|
|
7309
|
+
case 7:
|
|
7310
|
+
_a.sent();
|
|
7311
|
+
return [4 /*yield*/, async_test("Marketing email bad when unsubscribed (bulk)", function () { return sdk.api.emails.createSome([{ logOnly: true, isMarketing: true, subject: '', enduserId: e.id, textContent: '', HTMLContent: '' }]); }, handleAnyError)];
|
|
7312
|
+
case 8:
|
|
7313
|
+
_a.sent();
|
|
7314
|
+
return [4 /*yield*/, Promise.all([
|
|
7315
|
+
sdk.api.endusers.deleteOne(e.id),
|
|
7316
|
+
])];
|
|
7317
|
+
case 9: return [2 /*return*/, _a.sent()];
|
|
7318
|
+
}
|
|
7319
|
+
});
|
|
7320
|
+
}); };
|
|
7016
7321
|
(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
7017
7322
|
var err_1, n, _a, _b, _c, _i, returnValidation, t, _d, _e, _f, _g, err_2;
|
|
7018
7323
|
var _h, _j;
|
|
@@ -7025,7 +7330,7 @@ var test_weighted_round_robin = function () { return __awaiter(void 0, void 0, v
|
|
|
7025
7330
|
_k.sent();
|
|
7026
7331
|
_k.label = 2;
|
|
7027
7332
|
case 2:
|
|
7028
|
-
_k.trys.push([2,
|
|
7333
|
+
_k.trys.push([2, 43, , 44]);
|
|
7029
7334
|
return [4 /*yield*/, test_weighted_round_robin()];
|
|
7030
7335
|
case 3:
|
|
7031
7336
|
_k.sent();
|
|
@@ -7062,95 +7367,104 @@ var test_weighted_round_robin = function () { return __awaiter(void 0, void 0, v
|
|
|
7062
7367
|
return [4 /*yield*/, multi_tenant_tests()]; // should come right after setup tests
|
|
7063
7368
|
case 10:
|
|
7064
7369
|
_k.sent(); // should come right after setup tests
|
|
7065
|
-
return [4 /*yield*/,
|
|
7370
|
+
return [4 /*yield*/, marketing_email_unsubscribe_tests()];
|
|
7066
7371
|
case 11:
|
|
7067
7372
|
_k.sent();
|
|
7068
|
-
return [4 /*yield*/,
|
|
7373
|
+
return [4 /*yield*/, unique_strings_tests()];
|
|
7069
7374
|
case 12:
|
|
7070
7375
|
_k.sent();
|
|
7071
|
-
return [4 /*yield*/,
|
|
7376
|
+
return [4 /*yield*/, enduser_access_tags_tests()];
|
|
7072
7377
|
case 13:
|
|
7073
7378
|
_k.sent();
|
|
7074
|
-
return [4 /*yield*/,
|
|
7379
|
+
return [4 /*yield*/, self_serve_appointment_booking_tests()];
|
|
7075
7380
|
case 14:
|
|
7076
7381
|
_k.sent();
|
|
7077
|
-
return [4 /*yield*/,
|
|
7382
|
+
return [4 /*yield*/, alternate_phones_tests()];
|
|
7078
7383
|
case 15:
|
|
7079
7384
|
_k.sent();
|
|
7080
|
-
return [4 /*yield*/,
|
|
7385
|
+
return [4 /*yield*/, ticket_queue_tests()];
|
|
7081
7386
|
case 16:
|
|
7082
7387
|
_k.sent();
|
|
7083
|
-
return [4 /*yield*/,
|
|
7388
|
+
return [4 /*yield*/, no_chained_triggers_tests()];
|
|
7084
7389
|
case 17:
|
|
7085
7390
|
_k.sent();
|
|
7086
|
-
return [4 /*yield*/,
|
|
7391
|
+
return [4 /*yield*/, field_equals_trigger_tests()];
|
|
7087
7392
|
case 18:
|
|
7088
7393
|
_k.sent();
|
|
7089
|
-
return [4 /*yield*/,
|
|
7394
|
+
return [4 /*yield*/, test_ticket_automation_assignment_and_optimization()];
|
|
7090
7395
|
case 19:
|
|
7091
7396
|
_k.sent();
|
|
7092
|
-
return [4 /*yield*/,
|
|
7397
|
+
return [4 /*yield*/, role_based_access_tests()];
|
|
7093
7398
|
case 20:
|
|
7094
7399
|
_k.sent();
|
|
7095
|
-
return [4 /*yield*/,
|
|
7400
|
+
return [4 /*yield*/, automation_trigger_tests()];
|
|
7096
7401
|
case 21:
|
|
7097
7402
|
_k.sent();
|
|
7098
|
-
return [4 /*yield*/,
|
|
7403
|
+
return [4 /*yield*/, enduser_session_tests()];
|
|
7099
7404
|
case 22:
|
|
7100
7405
|
_k.sent();
|
|
7101
|
-
return [4 /*yield*/,
|
|
7406
|
+
return [4 /*yield*/, nextReminderInMS_tests()];
|
|
7102
7407
|
case 23:
|
|
7103
7408
|
_k.sent();
|
|
7104
|
-
return [4 /*yield*/,
|
|
7409
|
+
return [4 /*yield*/, search_tests()];
|
|
7105
7410
|
case 24:
|
|
7106
7411
|
_k.sent();
|
|
7107
|
-
return [4 /*yield*/,
|
|
7412
|
+
return [4 /*yield*/, wait_for_trigger_tests()];
|
|
7108
7413
|
case 25:
|
|
7109
7414
|
_k.sent();
|
|
7110
|
-
return [4 /*yield*/,
|
|
7415
|
+
return [4 /*yield*/, pdf_generation()];
|
|
7111
7416
|
case 26:
|
|
7112
7417
|
_k.sent();
|
|
7113
|
-
return [4 /*yield*/,
|
|
7418
|
+
return [4 /*yield*/, remove_from_journey_on_incoming_comms_tests()];
|
|
7114
7419
|
case 27:
|
|
7115
7420
|
_k.sent();
|
|
7116
|
-
return [4 /*yield*/,
|
|
7421
|
+
return [4 /*yield*/, rate_limit_tests()];
|
|
7117
7422
|
case 28:
|
|
7118
7423
|
_k.sent();
|
|
7119
|
-
return [4 /*yield*/,
|
|
7424
|
+
return [4 /*yield*/, merge_enduser_tests()];
|
|
7120
7425
|
case 29:
|
|
7121
7426
|
_k.sent();
|
|
7122
|
-
return [4 /*yield*/,
|
|
7427
|
+
return [4 /*yield*/, auto_reply_tests()];
|
|
7123
7428
|
case 30:
|
|
7124
7429
|
_k.sent();
|
|
7125
|
-
return [4 /*yield*/,
|
|
7430
|
+
return [4 /*yield*/, sub_organization_enduser_tests()];
|
|
7126
7431
|
case 31:
|
|
7127
7432
|
_k.sent();
|
|
7128
|
-
return [4 /*yield*/,
|
|
7433
|
+
return [4 /*yield*/, sub_organization_tests()];
|
|
7129
7434
|
case 32:
|
|
7130
7435
|
_k.sent();
|
|
7131
|
-
return [4 /*yield*/,
|
|
7436
|
+
return [4 /*yield*/, filter_by_date_tests()];
|
|
7132
7437
|
case 33:
|
|
7133
7438
|
_k.sent();
|
|
7134
|
-
return [4 /*yield*/,
|
|
7439
|
+
return [4 /*yield*/, generate_user_auth_tests()];
|
|
7135
7440
|
case 34:
|
|
7136
7441
|
_k.sent();
|
|
7137
|
-
return [4 /*yield*/,
|
|
7442
|
+
return [4 /*yield*/, generateEnduserAuthTests()];
|
|
7138
7443
|
case 35:
|
|
7139
7444
|
_k.sent();
|
|
7140
|
-
return [4 /*yield*/,
|
|
7445
|
+
return [4 /*yield*/, public_form_tests()];
|
|
7141
7446
|
case 36:
|
|
7142
7447
|
_k.sent();
|
|
7143
|
-
return [4 /*yield*/,
|
|
7448
|
+
return [4 /*yield*/, badInputTests()];
|
|
7144
7449
|
case 37:
|
|
7145
7450
|
_k.sent();
|
|
7146
|
-
return [4 /*yield*/,
|
|
7451
|
+
return [4 /*yield*/, filterTests()];
|
|
7147
7452
|
case 38:
|
|
7148
7453
|
_k.sent();
|
|
7149
|
-
return [4 /*yield*/,
|
|
7454
|
+
return [4 /*yield*/, updatesTests()];
|
|
7150
7455
|
case 39:
|
|
7151
7456
|
_k.sent();
|
|
7152
|
-
return [
|
|
7457
|
+
return [4 /*yield*/, threadKeyTests()];
|
|
7153
7458
|
case 40:
|
|
7459
|
+
_k.sent();
|
|
7460
|
+
return [4 /*yield*/, enduserAccessTests()];
|
|
7461
|
+
case 41:
|
|
7462
|
+
_k.sent();
|
|
7463
|
+
return [4 /*yield*/, enduser_redaction_tests()];
|
|
7464
|
+
case 42:
|
|
7465
|
+
_k.sent();
|
|
7466
|
+
return [3 /*break*/, 44];
|
|
7467
|
+
case 43:
|
|
7154
7468
|
err_1 = _k.sent();
|
|
7155
7469
|
console.error("Failed during custom test");
|
|
7156
7470
|
if (err_1.message && err_1.info) {
|
|
@@ -7160,18 +7474,18 @@ var test_weighted_round_robin = function () { return __awaiter(void 0, void 0, v
|
|
|
7160
7474
|
console.error(err_1);
|
|
7161
7475
|
}
|
|
7162
7476
|
process.exit(1);
|
|
7163
|
-
return [3 /*break*/,
|
|
7164
|
-
case
|
|
7477
|
+
return [3 /*break*/, 44];
|
|
7478
|
+
case 44:
|
|
7165
7479
|
_a = schema;
|
|
7166
7480
|
_b = [];
|
|
7167
7481
|
for (_c in _a)
|
|
7168
7482
|
_b.push(_c);
|
|
7169
7483
|
_i = 0;
|
|
7170
|
-
_k.label =
|
|
7171
|
-
case
|
|
7172
|
-
if (!(_i < _b.length)) return [3 /*break*/,
|
|
7484
|
+
_k.label = 45;
|
|
7485
|
+
case 45:
|
|
7486
|
+
if (!(_i < _b.length)) return [3 /*break*/, 48];
|
|
7173
7487
|
_c = _b[_i];
|
|
7174
|
-
if (!(_c in _a)) return [3 /*break*/,
|
|
7488
|
+
if (!(_c in _a)) return [3 /*break*/, 47];
|
|
7175
7489
|
n = _c;
|
|
7176
7490
|
returnValidation = (_j = (_h = schema[n].customActions) === null || _h === void 0 ? void 0 : _h.create) === null || _j === void 0 ? void 0 : _j.returns;
|
|
7177
7491
|
return [4 /*yield*/, run_generated_tests({
|
|
@@ -7182,41 +7496,41 @@ var test_weighted_round_robin = function () { return __awaiter(void 0, void 0, v
|
|
|
7182
7496
|
create: returnValidation // ModelFields<ClientModel>,
|
|
7183
7497
|
}
|
|
7184
7498
|
})];
|
|
7185
|
-
case
|
|
7499
|
+
case 46:
|
|
7186
7500
|
_k.sent();
|
|
7187
|
-
_k.label =
|
|
7188
|
-
case
|
|
7501
|
+
_k.label = 47;
|
|
7502
|
+
case 47:
|
|
7189
7503
|
_i++;
|
|
7190
|
-
return [3 /*break*/,
|
|
7191
|
-
case
|
|
7504
|
+
return [3 /*break*/, 45];
|
|
7505
|
+
case 48:
|
|
7192
7506
|
_d = tests;
|
|
7193
7507
|
_e = [];
|
|
7194
7508
|
for (_f in _d)
|
|
7195
7509
|
_e.push(_f);
|
|
7196
7510
|
_g = 0;
|
|
7197
|
-
_k.label =
|
|
7198
|
-
case
|
|
7199
|
-
if (!(_g < _e.length)) return [3 /*break*/,
|
|
7511
|
+
_k.label = 49;
|
|
7512
|
+
case 49:
|
|
7513
|
+
if (!(_g < _e.length)) return [3 /*break*/, 54];
|
|
7200
7514
|
_f = _e[_g];
|
|
7201
|
-
if (!(_f in _d)) return [3 /*break*/,
|
|
7515
|
+
if (!(_f in _d)) return [3 /*break*/, 53];
|
|
7202
7516
|
t = _f;
|
|
7203
|
-
_k.label =
|
|
7204
|
-
case
|
|
7205
|
-
_k.trys.push([
|
|
7517
|
+
_k.label = 50;
|
|
7518
|
+
case 50:
|
|
7519
|
+
_k.trys.push([50, 52, , 53]);
|
|
7206
7520
|
return [4 /*yield*/, tests[t]()];
|
|
7207
|
-
case
|
|
7521
|
+
case 51:
|
|
7208
7522
|
_k.sent();
|
|
7209
|
-
return [3 /*break*/,
|
|
7210
|
-
case
|
|
7523
|
+
return [3 /*break*/, 53];
|
|
7524
|
+
case 52:
|
|
7211
7525
|
err_2 = _k.sent();
|
|
7212
7526
|
console.error("Error running test:");
|
|
7213
7527
|
console.error(err_2);
|
|
7214
7528
|
process.exit(1);
|
|
7215
|
-
return [3 /*break*/,
|
|
7216
|
-
case
|
|
7529
|
+
return [3 /*break*/, 53];
|
|
7530
|
+
case 53:
|
|
7217
7531
|
_g++;
|
|
7218
|
-
return [3 /*break*/,
|
|
7219
|
-
case
|
|
7532
|
+
return [3 /*break*/, 49];
|
|
7533
|
+
case 54:
|
|
7220
7534
|
process.exit();
|
|
7221
7535
|
return [2 /*return*/];
|
|
7222
7536
|
}
|