@tellescope/sdk 1.66.3 → 1.66.5
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 +4 -2
- package/lib/cjs/sdk.d.ts.map +1 -1
- package/lib/cjs/sdk.js +1 -0
- package/lib/cjs/sdk.js.map +1 -1
- package/lib/cjs/session.d.ts.map +1 -1
- package/lib/cjs/session.js +1 -0
- package/lib/cjs/session.js.map +1 -1
- package/lib/cjs/tests/tests.d.ts.map +1 -1
- package/lib/cjs/tests/tests.js +127 -65
- package/lib/cjs/tests/tests.js.map +1 -1
- package/lib/esm/sdk.d.ts +4 -2
- package/lib/esm/sdk.d.ts.map +1 -1
- package/lib/esm/sdk.js +1 -0
- package/lib/esm/sdk.js.map +1 -1
- package/lib/esm/session.d.ts +0 -1
- package/lib/esm/session.d.ts.map +1 -1
- package/lib/esm/session.js +1 -0
- package/lib/esm/session.js.map +1 -1
- package/lib/esm/tests/tests.d.ts.map +1 -1
- package/lib/esm/tests/tests.js +127 -65
- package/lib/esm/tests/tests.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +8 -8
- package/src/sdk.ts +7 -3
- package/src/session.ts +4 -1
- package/src/tests/tests.ts +46 -1
- package/test_generated.pdf +0 -0
package/lib/esm/tests/tests.js
CHANGED
|
@@ -156,19 +156,53 @@ var setup_tests = function () { return __awaiter(void 0, void 0, void 0, functio
|
|
|
156
156
|
_a.sent();
|
|
157
157
|
assert(uInfo.id === sdk.userInfo.id, 'userInfo mismatch', 'userInfo id preserved after refresh');
|
|
158
158
|
assert(!!originalAuthToken && !!sdk.authToken && sdk.authToken !== originalAuthToken, 'same authToken after refresh', 'authToken refresh');
|
|
159
|
+
// ensure that going to "Non-Admin" triggers a role change
|
|
160
|
+
return [4 /*yield*/, sdk.api.users.updateOne(sdkNonAdmin.userInfo.id, { roles: ['Test'] }, { replaceObjectFields: true })];
|
|
161
|
+
case 9:
|
|
162
|
+
// ensure that going to "Non-Admin" triggers a role change
|
|
163
|
+
_a.sent();
|
|
164
|
+
return [4 /*yield*/, sdkNonAdmin.authenticate(nonAdminEmail, nonAdminPassword)];
|
|
165
|
+
case 10:
|
|
166
|
+
// ensure that going to "Non-Admin" triggers a role change
|
|
167
|
+
_a.sent();
|
|
168
|
+
return [4 /*yield*/, async_test('non admin authenticated', sdkNonAdmin.test_authenticated, { expectedResult: 'Authenticated!' })
|
|
169
|
+
// reset nonAdmin role to a default non-admin
|
|
170
|
+
];
|
|
171
|
+
case 11:
|
|
172
|
+
_a.sent();
|
|
159
173
|
// reset nonAdmin role to a default non-admin
|
|
160
174
|
return [4 /*yield*/, sdk.api.users.updateOne(sdkNonAdmin.userInfo.id, { roles: ['Non-Admin'] }, { replaceObjectFields: true })];
|
|
161
|
-
case
|
|
175
|
+
case 12:
|
|
162
176
|
// reset nonAdmin role to a default non-admin
|
|
177
|
+
_a.sent();
|
|
178
|
+
// should be unauthenticated due to role change
|
|
179
|
+
return [4 /*yield*/, wait(undefined, 100)];
|
|
180
|
+
case 13:
|
|
181
|
+
// reset nonAdmin role to a default non-admin
|
|
182
|
+
// should be unauthenticated due to role change
|
|
183
|
+
_a.sent();
|
|
184
|
+
return [4 /*yield*/, async_test('role change causes deauthentication', sdkNonAdmin.test_authenticated, handleAnyError)
|
|
185
|
+
// reauthenticate
|
|
186
|
+
];
|
|
187
|
+
case 14:
|
|
188
|
+
_a.sent();
|
|
189
|
+
// reauthenticate
|
|
190
|
+
return [4 /*yield*/, wait(undefined, 1000)];
|
|
191
|
+
case 15:
|
|
192
|
+
// reauthenticate
|
|
193
|
+
_a.sent();
|
|
194
|
+
return [4 /*yield*/, sdkNonAdmin.authenticate(nonAdminEmail, nonAdminPassword)
|
|
195
|
+
// may do some stuff in background after returning
|
|
196
|
+
];
|
|
197
|
+
case 16:
|
|
163
198
|
_a.sent();
|
|
164
199
|
// may do some stuff in background after returning
|
|
165
200
|
return [4 /*yield*/, async_test('reset_db', function () { return sdk.reset_db(); }, passOnVoid)];
|
|
166
|
-
case
|
|
167
|
-
// reset nonAdmin role to a default non-admin
|
|
201
|
+
case 17:
|
|
168
202
|
// may do some stuff in background after returning
|
|
169
203
|
_a.sent();
|
|
170
204
|
return [4 /*yield*/, wait(undefined, 250)];
|
|
171
|
-
case
|
|
205
|
+
case 18:
|
|
172
206
|
_a.sent();
|
|
173
207
|
return [2 /*return*/];
|
|
174
208
|
}
|
|
@@ -4114,7 +4148,9 @@ var role_based_access_tests = function () { return __awaiter(void 0, void 0, voi
|
|
|
4114
4148
|
return [4 /*yield*/, async_test("non-admin for chat message bad", function () { return sdkNonAdmin.api.chats.getOne(chatMessage.id); }, handleAnyError)];
|
|
4115
4149
|
case 27:
|
|
4116
4150
|
_a.sent();
|
|
4117
|
-
return [4 /*yield*/, async_test("[bulk] non-admin for chat message bad", function () { return sdkNonAdmin.bulk_load({ load: [{ model: 'chats' }] }); },
|
|
4151
|
+
return [4 /*yield*/, async_test("[bulk] non-admin for chat message bad", function () { return sdkNonAdmin.bulk_load({ load: [{ model: 'chats' }] }); },
|
|
4152
|
+
// { onResult: result => result.results.flatMap(r => r?.records || []).length === 0 }
|
|
4153
|
+
handleAnyError // throws error in this case in enforceForeignAccessConstraints because there are no accessible chats
|
|
4118
4154
|
)];
|
|
4119
4155
|
case 28:
|
|
4120
4156
|
_a.sent();
|
|
@@ -6035,6 +6071,29 @@ var tests = {
|
|
|
6035
6071
|
ticket_thread_comments: NO_TEST,
|
|
6036
6072
|
};
|
|
6037
6073
|
var TRACK_OPEN_IMAGE = Buffer.from("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=", 'base64');
|
|
6074
|
+
var validate_schema = function () {
|
|
6075
|
+
var _a;
|
|
6076
|
+
var endpoints = new Set([]);
|
|
6077
|
+
var modelName = undefined;
|
|
6078
|
+
for (modelName in schema) {
|
|
6079
|
+
for (var endpointName in schema[modelName].customActions) {
|
|
6080
|
+
var path = schema[modelName].customActions[endpointName].path || '';
|
|
6081
|
+
if (path === '' && endpointName === 'create')
|
|
6082
|
+
continue; // uses default
|
|
6083
|
+
if (endpoints.has(path)) {
|
|
6084
|
+
throw new Error("Duplicate path: ".concat(path, ", ").concat(endpointName));
|
|
6085
|
+
}
|
|
6086
|
+
endpoints.add(path);
|
|
6087
|
+
}
|
|
6088
|
+
for (var endpointName in (_a = schema[modelName].publicActions) !== null && _a !== void 0 ? _a : {}) {
|
|
6089
|
+
var path = schema[modelName].publicActions[endpointName].path || '';
|
|
6090
|
+
if (endpoints.has(path)) {
|
|
6091
|
+
throw new Error("Duplicate path: ".concat(path, ", ").concat(endpointName));
|
|
6092
|
+
}
|
|
6093
|
+
endpoints.add(path);
|
|
6094
|
+
}
|
|
6095
|
+
}
|
|
6096
|
+
};
|
|
6038
6097
|
(function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
6039
6098
|
var err_1, n, _a, _b, _c, _i, returnValidation, t, _d, _e, _f, _g, err_2;
|
|
6040
6099
|
var _h, _j;
|
|
@@ -6047,7 +6106,10 @@ var TRACK_OPEN_IMAGE = Buffer.from("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwC
|
|
|
6047
6106
|
_k.sent();
|
|
6048
6107
|
_k.label = 2;
|
|
6049
6108
|
case 2:
|
|
6050
|
-
_k.trys.push([2,
|
|
6109
|
+
_k.trys.push([2, 34, , 35]);
|
|
6110
|
+
return [4 /*yield*/, validate_schema()];
|
|
6111
|
+
case 3:
|
|
6112
|
+
_k.sent();
|
|
6051
6113
|
return [4 /*yield*/, Promise.all([
|
|
6052
6114
|
sdk.authenticate(email, password),
|
|
6053
6115
|
sdkSub.authenticate(subUserEmail, password),
|
|
@@ -6057,101 +6119,101 @@ var TRACK_OPEN_IMAGE = Buffer.from("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwC
|
|
|
6057
6119
|
])
|
|
6058
6120
|
// console.log(JSON.stringify(await sdk.bulk_load({ load: [{ model: 'users' }]}), null, 2))
|
|
6059
6121
|
];
|
|
6060
|
-
case
|
|
6122
|
+
case 4:
|
|
6061
6123
|
_k.sent();
|
|
6062
6124
|
// console.log(JSON.stringify(await sdk.bulk_load({ load: [{ model: 'users' }]}), null, 2))
|
|
6063
6125
|
return [4 /*yield*/, async_test("count exists",
|
|
6064
6126
|
// @ts-ignore
|
|
6065
6127
|
function () { return sdk.api.endusers.getSome({ returnCount: true }); }, { onResult: function (result) { return typeof result.count === 'number'; } })];
|
|
6066
|
-
case
|
|
6128
|
+
case 5:
|
|
6067
6129
|
// console.log(JSON.stringify(await sdk.bulk_load({ load: [{ model: 'users' }]}), null, 2))
|
|
6068
6130
|
_k.sent();
|
|
6069
6131
|
return [4 /*yield*/, async_test("push_to_EHR allows missing addedResponses", function () { return sdk.api.form_responses.push_to_EHR({ id: PLACEHOLDER_ID }); }, { shouldError: true, onError: function (e) { return (e === null || e === void 0 ? void 0 : e.message) === 'Could not find a record for the given id'; } })];
|
|
6070
|
-
case 5:
|
|
6071
|
-
_k.sent();
|
|
6072
|
-
return [4 /*yield*/, mfa_tests()];
|
|
6073
6132
|
case 6:
|
|
6074
6133
|
_k.sent();
|
|
6075
|
-
return [4 /*yield*/,
|
|
6134
|
+
return [4 /*yield*/, mfa_tests()];
|
|
6076
6135
|
case 7:
|
|
6077
6136
|
_k.sent();
|
|
6078
|
-
return [4 /*yield*/,
|
|
6137
|
+
return [4 /*yield*/, setup_tests()];
|
|
6079
6138
|
case 8:
|
|
6080
6139
|
_k.sent();
|
|
6081
|
-
return [4 /*yield*/,
|
|
6140
|
+
return [4 /*yield*/, multi_tenant_tests()]; // should come right after setup tests
|
|
6082
6141
|
case 9:
|
|
6083
|
-
_k.sent();
|
|
6084
|
-
return [4 /*yield*/,
|
|
6142
|
+
_k.sent(); // should come right after setup tests
|
|
6143
|
+
return [4 /*yield*/, automation_trigger_tests()];
|
|
6085
6144
|
case 10:
|
|
6086
6145
|
_k.sent();
|
|
6087
|
-
return [4 /*yield*/,
|
|
6146
|
+
return [4 /*yield*/, enduser_session_tests()];
|
|
6088
6147
|
case 11:
|
|
6089
6148
|
_k.sent();
|
|
6090
|
-
return [4 /*yield*/,
|
|
6149
|
+
return [4 /*yield*/, nextReminderInMS_tests()];
|
|
6091
6150
|
case 12:
|
|
6092
6151
|
_k.sent();
|
|
6093
|
-
return [4 /*yield*/,
|
|
6152
|
+
return [4 /*yield*/, search_tests()];
|
|
6094
6153
|
case 13:
|
|
6095
6154
|
_k.sent();
|
|
6096
|
-
return [4 /*yield*/,
|
|
6155
|
+
return [4 /*yield*/, wait_for_trigger_tests()];
|
|
6097
6156
|
case 14:
|
|
6098
|
-
_k.sent();
|
|
6099
|
-
return [4 /*yield*/,
|
|
6157
|
+
_k.sent();
|
|
6158
|
+
return [4 /*yield*/, role_based_access_tests()];
|
|
6100
6159
|
case 15:
|
|
6101
6160
|
_k.sent();
|
|
6102
|
-
return [4 /*yield*/,
|
|
6161
|
+
return [4 /*yield*/, pdf_generation()];
|
|
6103
6162
|
case 16:
|
|
6104
6163
|
_k.sent();
|
|
6105
|
-
return [4 /*yield*/,
|
|
6164
|
+
return [4 /*yield*/, remove_from_journey_on_incoming_comms_tests()];
|
|
6106
6165
|
case 17:
|
|
6107
6166
|
_k.sent();
|
|
6108
|
-
return [4 /*yield*/,
|
|
6167
|
+
return [4 /*yield*/, rate_limit_tests()];
|
|
6109
6168
|
case 18:
|
|
6110
6169
|
_k.sent();
|
|
6111
|
-
return [4 /*yield*/,
|
|
6170
|
+
return [4 /*yield*/, merge_enduser_tests()];
|
|
6112
6171
|
case 19:
|
|
6113
6172
|
_k.sent();
|
|
6114
|
-
return [4 /*yield*/,
|
|
6173
|
+
return [4 /*yield*/, self_serve_appointment_booking_tests()];
|
|
6115
6174
|
case 20:
|
|
6116
6175
|
_k.sent();
|
|
6117
|
-
return [4 /*yield*/,
|
|
6176
|
+
return [4 /*yield*/, auto_reply_tests()];
|
|
6118
6177
|
case 21:
|
|
6119
6178
|
_k.sent();
|
|
6120
|
-
return [4 /*yield*/,
|
|
6179
|
+
return [4 /*yield*/, sub_organization_enduser_tests()];
|
|
6121
6180
|
case 22:
|
|
6122
6181
|
_k.sent();
|
|
6123
|
-
return [4 /*yield*/,
|
|
6182
|
+
return [4 /*yield*/, sub_organization_tests()];
|
|
6124
6183
|
case 23:
|
|
6125
6184
|
_k.sent();
|
|
6126
|
-
return [4 /*yield*/,
|
|
6185
|
+
return [4 /*yield*/, filter_by_date_tests()];
|
|
6127
6186
|
case 24:
|
|
6128
6187
|
_k.sent();
|
|
6129
|
-
return [4 /*yield*/,
|
|
6188
|
+
return [4 /*yield*/, generate_user_auth_tests()];
|
|
6130
6189
|
case 25:
|
|
6131
6190
|
_k.sent();
|
|
6132
|
-
return [4 /*yield*/,
|
|
6191
|
+
return [4 /*yield*/, generateEnduserAuthTests()];
|
|
6133
6192
|
case 26:
|
|
6134
6193
|
_k.sent();
|
|
6135
|
-
return [4 /*yield*/,
|
|
6194
|
+
return [4 /*yield*/, public_form_tests()];
|
|
6136
6195
|
case 27:
|
|
6137
6196
|
_k.sent();
|
|
6138
|
-
return [4 /*yield*/,
|
|
6197
|
+
return [4 /*yield*/, badInputTests()];
|
|
6139
6198
|
case 28:
|
|
6140
6199
|
_k.sent();
|
|
6141
|
-
return [4 /*yield*/,
|
|
6200
|
+
return [4 /*yield*/, filterTests()];
|
|
6142
6201
|
case 29:
|
|
6143
6202
|
_k.sent();
|
|
6144
|
-
return [4 /*yield*/,
|
|
6203
|
+
return [4 /*yield*/, updatesTests()];
|
|
6145
6204
|
case 30:
|
|
6146
6205
|
_k.sent();
|
|
6147
|
-
return [4 /*yield*/,
|
|
6206
|
+
return [4 /*yield*/, threadKeyTests()];
|
|
6148
6207
|
case 31:
|
|
6149
6208
|
_k.sent();
|
|
6150
|
-
return [4 /*yield*/,
|
|
6209
|
+
return [4 /*yield*/, enduserAccessTests()];
|
|
6151
6210
|
case 32:
|
|
6152
6211
|
_k.sent();
|
|
6153
|
-
return [
|
|
6212
|
+
return [4 /*yield*/, enduser_redaction_tests()];
|
|
6154
6213
|
case 33:
|
|
6214
|
+
_k.sent();
|
|
6215
|
+
return [3 /*break*/, 35];
|
|
6216
|
+
case 34:
|
|
6155
6217
|
err_1 = _k.sent();
|
|
6156
6218
|
console.error("Failed during custom test");
|
|
6157
6219
|
if (err_1.message && err_1.info) {
|
|
@@ -6161,18 +6223,18 @@ var TRACK_OPEN_IMAGE = Buffer.from("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwC
|
|
|
6161
6223
|
console.error(err_1);
|
|
6162
6224
|
}
|
|
6163
6225
|
process.exit(1);
|
|
6164
|
-
return [3 /*break*/,
|
|
6165
|
-
case
|
|
6226
|
+
return [3 /*break*/, 35];
|
|
6227
|
+
case 35:
|
|
6166
6228
|
_a = schema;
|
|
6167
6229
|
_b = [];
|
|
6168
6230
|
for (_c in _a)
|
|
6169
6231
|
_b.push(_c);
|
|
6170
6232
|
_i = 0;
|
|
6171
|
-
_k.label =
|
|
6172
|
-
case
|
|
6173
|
-
if (!(_i < _b.length)) return [3 /*break*/,
|
|
6233
|
+
_k.label = 36;
|
|
6234
|
+
case 36:
|
|
6235
|
+
if (!(_i < _b.length)) return [3 /*break*/, 39];
|
|
6174
6236
|
_c = _b[_i];
|
|
6175
|
-
if (!(_c in _a)) return [3 /*break*/,
|
|
6237
|
+
if (!(_c in _a)) return [3 /*break*/, 38];
|
|
6176
6238
|
n = _c;
|
|
6177
6239
|
returnValidation = (_j = (_h = schema[n].customActions) === null || _h === void 0 ? void 0 : _h.create) === null || _j === void 0 ? void 0 : _j.returns;
|
|
6178
6240
|
return [4 /*yield*/, run_generated_tests({
|
|
@@ -6183,41 +6245,41 @@ var TRACK_OPEN_IMAGE = Buffer.from("iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwC
|
|
|
6183
6245
|
create: returnValidation // ModelFields<ClientModel>,
|
|
6184
6246
|
}
|
|
6185
6247
|
})];
|
|
6186
|
-
case 36:
|
|
6187
|
-
_k.sent();
|
|
6188
|
-
_k.label = 37;
|
|
6189
6248
|
case 37:
|
|
6190
|
-
|
|
6191
|
-
|
|
6249
|
+
_k.sent();
|
|
6250
|
+
_k.label = 38;
|
|
6192
6251
|
case 38:
|
|
6252
|
+
_i++;
|
|
6253
|
+
return [3 /*break*/, 36];
|
|
6254
|
+
case 39:
|
|
6193
6255
|
_d = tests;
|
|
6194
6256
|
_e = [];
|
|
6195
6257
|
for (_f in _d)
|
|
6196
6258
|
_e.push(_f);
|
|
6197
6259
|
_g = 0;
|
|
6198
|
-
_k.label = 39;
|
|
6199
|
-
case 39:
|
|
6200
|
-
if (!(_g < _e.length)) return [3 /*break*/, 44];
|
|
6201
|
-
_f = _e[_g];
|
|
6202
|
-
if (!(_f in _d)) return [3 /*break*/, 43];
|
|
6203
|
-
t = _f;
|
|
6204
6260
|
_k.label = 40;
|
|
6205
6261
|
case 40:
|
|
6206
|
-
|
|
6207
|
-
|
|
6262
|
+
if (!(_g < _e.length)) return [3 /*break*/, 45];
|
|
6263
|
+
_f = _e[_g];
|
|
6264
|
+
if (!(_f in _d)) return [3 /*break*/, 44];
|
|
6265
|
+
t = _f;
|
|
6266
|
+
_k.label = 41;
|
|
6208
6267
|
case 41:
|
|
6209
|
-
_k.
|
|
6210
|
-
return [
|
|
6268
|
+
_k.trys.push([41, 43, , 44]);
|
|
6269
|
+
return [4 /*yield*/, tests[t]()];
|
|
6211
6270
|
case 42:
|
|
6271
|
+
_k.sent();
|
|
6272
|
+
return [3 /*break*/, 44];
|
|
6273
|
+
case 43:
|
|
6212
6274
|
err_2 = _k.sent();
|
|
6213
6275
|
console.error("Error running test:");
|
|
6214
6276
|
console.error(err_2);
|
|
6215
6277
|
process.exit(1);
|
|
6216
|
-
return [3 /*break*/,
|
|
6217
|
-
case 43:
|
|
6218
|
-
_g++;
|
|
6219
|
-
return [3 /*break*/, 39];
|
|
6278
|
+
return [3 /*break*/, 44];
|
|
6220
6279
|
case 44:
|
|
6280
|
+
_g++;
|
|
6281
|
+
return [3 /*break*/, 40];
|
|
6282
|
+
case 45:
|
|
6221
6283
|
process.exit();
|
|
6222
6284
|
return [2 /*return*/];
|
|
6223
6285
|
}
|