@tellescope/sdk 1.254.1 → 1.255.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 +4 -0
- package/lib/cjs/sdk.d.ts.map +1 -1
- package/lib/cjs/sdk.js +5 -0
- package/lib/cjs/sdk.js.map +1 -1
- package/lib/cjs/tests/api_tests/order_status_equals_frequency.test.d.ts +6 -0
- package/lib/cjs/tests/api_tests/order_status_equals_frequency.test.d.ts.map +1 -0
- package/lib/cjs/tests/api_tests/order_status_equals_frequency.test.js +254 -0
- package/lib/cjs/tests/api_tests/order_status_equals_frequency.test.js.map +1 -0
- package/lib/cjs/tests/api_tests/organization_api_keys.test.d.ts +6 -0
- package/lib/cjs/tests/api_tests/organization_api_keys.test.d.ts.map +1 -0
- package/lib/cjs/tests/api_tests/organization_api_keys.test.js +226 -0
- package/lib/cjs/tests/api_tests/organization_api_keys.test.js.map +1 -0
- package/lib/cjs/tests/tests.d.ts.map +1 -1
- package/lib/cjs/tests/tests.js +503 -262
- package/lib/cjs/tests/tests.js.map +1 -1
- package/lib/esm/sdk.d.ts +4 -0
- package/lib/esm/sdk.d.ts.map +1 -1
- package/lib/esm/sdk.js +5 -0
- package/lib/esm/sdk.js.map +1 -1
- package/lib/esm/session.d.ts +1 -0
- package/lib/esm/session.d.ts.map +1 -1
- package/lib/esm/tests/api_tests/order_status_equals_frequency.test.d.ts +6 -0
- package/lib/esm/tests/api_tests/order_status_equals_frequency.test.d.ts.map +1 -0
- package/lib/esm/tests/api_tests/order_status_equals_frequency.test.js +250 -0
- package/lib/esm/tests/api_tests/order_status_equals_frequency.test.js.map +1 -0
- package/lib/esm/tests/api_tests/organization_api_keys.test.d.ts +6 -0
- package/lib/esm/tests/api_tests/organization_api_keys.test.d.ts.map +1 -0
- package/lib/esm/tests/api_tests/organization_api_keys.test.js +222 -0
- package/lib/esm/tests/api_tests/organization_api_keys.test.js.map +1 -0
- package/lib/esm/tests/tests.d.ts.map +1 -1
- package/lib/esm/tests/tests.js +503 -262
- package/lib/esm/tests/tests.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -10
- package/src/sdk.ts +11 -0
- package/src/tests/api_tests/organization_api_keys.test.ts +207 -0
- package/src/tests/tests.ts +189 -2
- package/test_generated.pdf +0 -0
package/lib/esm/tests/tests.js
CHANGED
|
@@ -99,6 +99,7 @@ import { enduser_login_tests } from "./api_tests/enduser_login.test";
|
|
|
99
99
|
import { enduser_login_rate_limits_tests } from "./api_tests/enduser_login_rate_limits.test";
|
|
100
100
|
import { eom_procedure_codes_tests } from "./api_tests/eom_procedure_codes.test";
|
|
101
101
|
import { cross_org_api_key_tests } from "./api_tests/cross_org_api_key.test";
|
|
102
|
+
import { organization_api_keys_tests } from "./api_tests/organization_api_keys.test";
|
|
102
103
|
import { custom_dashboards_tests } from "./api_tests/custom_dashboards.test";
|
|
103
104
|
import { message_assignment_trigger_tests } from "./api_tests/message_assignment_trigger.test";
|
|
104
105
|
import { outbound_chat_sent_trigger_tests } from "./api_tests/outbound_chat_sent_trigger.test";
|
|
@@ -4135,7 +4136,7 @@ var order_created_tests = function () { return __awaiter(void 0, void 0, void 0,
|
|
|
4135
4136
|
});
|
|
4136
4137
|
}); };
|
|
4137
4138
|
var order_status_equals_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
4138
|
-
var t1, t2, t3, t4, t5, t6, t7, t8, t9, e, u;
|
|
4139
|
+
var t1, t2, t3, t4, t5, t6, t7, t8, t9, tf1, tf2, tf3, tf4, tf5, e, u, ef;
|
|
4139
4140
|
return __generator(this, function (_a) {
|
|
4140
4141
|
switch (_a.label) {
|
|
4141
4142
|
case 0:
|
|
@@ -4209,48 +4210,91 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
|
|
|
4209
4210
|
action: { type: 'Add Tags', info: { tags: ['Protocol Match'] } },
|
|
4210
4211
|
status: 'Active',
|
|
4211
4212
|
title: "Protocol Condition"
|
|
4212
|
-
})
|
|
4213
|
+
})
|
|
4214
|
+
// Frequency filter triggers (exact-match array filter, mirrors fills/skus). All use a dedicated
|
|
4215
|
+
// source/status so their assertions stay isolated from the t1-t9 incremental tag-count checks above.
|
|
4216
|
+
];
|
|
4213
4217
|
case 9:
|
|
4214
4218
|
t9 = _a.sent();
|
|
4215
|
-
return [4 /*yield*/, sdk.api.
|
|
4219
|
+
return [4 /*yield*/, sdk.api.automation_triggers.createOne({
|
|
4220
|
+
event: { type: 'Order Status Equals', info: { source: 'FreqSource', status: "FreqStatus" } },
|
|
4221
|
+
action: { type: 'Add Tags', info: { tags: ['Freq No Filter'] } },
|
|
4222
|
+
status: 'Active',
|
|
4223
|
+
title: "Frequency - no filter (backward compat)"
|
|
4224
|
+
})];
|
|
4216
4225
|
case 10:
|
|
4226
|
+
tf1 = _a.sent();
|
|
4227
|
+
return [4 /*yield*/, sdk.api.automation_triggers.createOne({
|
|
4228
|
+
event: { type: 'Order Status Equals', info: { source: 'FreqSource', status: "FreqStatus", frequencies: ['4', '12'] } },
|
|
4229
|
+
action: { type: 'Add Tags', info: { tags: ['Freq Match'] } },
|
|
4230
|
+
status: 'Active',
|
|
4231
|
+
title: "Frequency - multi-value match"
|
|
4232
|
+
})];
|
|
4233
|
+
case 11:
|
|
4234
|
+
tf2 = _a.sent();
|
|
4235
|
+
return [4 /*yield*/, sdk.api.automation_triggers.createOne({
|
|
4236
|
+
event: { type: 'Order Status Equals', info: { source: 'FreqSource', status: "FreqStatus", frequencies: [] } },
|
|
4237
|
+
action: { type: 'Add Tags', info: { tags: ['Freq Empty All'] } },
|
|
4238
|
+
status: 'Active',
|
|
4239
|
+
title: "Frequency - empty array means all"
|
|
4240
|
+
})];
|
|
4241
|
+
case 12:
|
|
4242
|
+
tf3 = _a.sent();
|
|
4243
|
+
return [4 /*yield*/, sdk.api.automation_triggers.createOne({
|
|
4244
|
+
event: { type: 'Order Status Equals', info: { source: 'FreqSource', status: "FreqShipped", frequencies: ['4'] } },
|
|
4245
|
+
action: { type: 'Add Tags', info: { tags: ['Freq Status Combo'] } },
|
|
4246
|
+
status: 'Active',
|
|
4247
|
+
title: "Frequency + status combination (AND semantics)"
|
|
4248
|
+
})];
|
|
4249
|
+
case 13:
|
|
4250
|
+
tf4 = _a.sent();
|
|
4251
|
+
return [4 /*yield*/, sdk.api.automation_triggers.createOne({
|
|
4252
|
+
event: { type: 'Order Status Equals', info: { source: 'FreqSource', status: "FreqStatus", frequencies: ['12'] } },
|
|
4253
|
+
action: { type: 'Add Tags', info: { tags: ['Freq Match 12'] } },
|
|
4254
|
+
status: 'Active',
|
|
4255
|
+
title: "Frequency - second listed value"
|
|
4256
|
+
})];
|
|
4257
|
+
case 14:
|
|
4258
|
+
tf5 = _a.sent();
|
|
4259
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({})];
|
|
4260
|
+
case 15:
|
|
4217
4261
|
e = _a.sent();
|
|
4218
4262
|
return [4 /*yield*/, sdk.api.enduser_orders.createOne({ status: 'Nooo', source: 'Source', title: 'nomatch', externalId: '1', enduserId: e.id })];
|
|
4219
|
-
case
|
|
4263
|
+
case 16:
|
|
4220
4264
|
_a.sent();
|
|
4221
4265
|
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4222
|
-
case
|
|
4266
|
+
case 17:
|
|
4223
4267
|
_a.sent(); // allow triggers to happen
|
|
4224
4268
|
return [4 /*yield*/, async_test("No tag is added (no fill)", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) { var _a; return !((_a = e.tags) === null || _a === void 0 ? void 0 : _a.length); } })];
|
|
4225
|
-
case
|
|
4269
|
+
case 18:
|
|
4226
4270
|
_a.sent();
|
|
4227
4271
|
return [4 /*yield*/, sdk.api.enduser_orders.createOne({ status: 'Filled', source: 'Source', title: 'nomatch', externalId: '2', enduserId: e.id, fill: 'nomatch' })];
|
|
4228
|
-
case
|
|
4272
|
+
case 19:
|
|
4229
4273
|
_a.sent();
|
|
4230
4274
|
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4231
|
-
case
|
|
4275
|
+
case 20:
|
|
4232
4276
|
_a.sent(); // allow triggers to happen
|
|
4233
4277
|
return [4 /*yield*/, async_test("No tag is added (fill mistmatch)", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) { var _a; return !((_a = e.tags) === null || _a === void 0 ? void 0 : _a.length); } })];
|
|
4234
|
-
case
|
|
4278
|
+
case 21:
|
|
4235
4279
|
_a.sent();
|
|
4236
4280
|
return [4 /*yield*/, sdk.api.enduser_orders.createOne({ status: 'Status', source: 'Source', externalId: '3', enduserId: e.id, title: "Title" })];
|
|
4237
|
-
case
|
|
4281
|
+
case 22:
|
|
4238
4282
|
_a.sent();
|
|
4239
4283
|
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4240
|
-
case
|
|
4284
|
+
case 23:
|
|
4241
4285
|
_a.sent(); // allow triggers to happen
|
|
4242
4286
|
return [4 /*yield*/, async_test("First tag is added", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) {
|
|
4243
4287
|
var _a, _b;
|
|
4244
4288
|
return !!(((_a = e.tags) === null || _a === void 0 ? void 0 : _a.length) === 1
|
|
4245
4289
|
&& ((_b = e.tags) === null || _b === void 0 ? void 0 : _b.includes('Source')));
|
|
4246
4290
|
} })];
|
|
4247
|
-
case
|
|
4291
|
+
case 24:
|
|
4248
4292
|
_a.sent();
|
|
4249
4293
|
return [4 /*yield*/, sdk.api.enduser_orders.createOne({ status: 'Status', source: 'Source', externalId: '4', enduserId: e.id, title: "Title", fill: '1' })];
|
|
4250
|
-
case
|
|
4294
|
+
case 25:
|
|
4251
4295
|
_a.sent();
|
|
4252
4296
|
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4253
|
-
case
|
|
4297
|
+
case 26:
|
|
4254
4298
|
_a.sent(); // allow triggers to happen
|
|
4255
4299
|
return [4 /*yield*/, async_test("Fill tag not added yet (mismatch)", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) {
|
|
4256
4300
|
var _a, _b, _c;
|
|
@@ -4258,13 +4302,13 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
|
|
|
4258
4302
|
&& ((_b = e.tags) === null || _b === void 0 ? void 0 : _b.includes('Source'))
|
|
4259
4303
|
&& !((_c = e.tags) === null || _c === void 0 ? void 0 : _c.includes('Fill')));
|
|
4260
4304
|
} })];
|
|
4261
|
-
case
|
|
4305
|
+
case 27:
|
|
4262
4306
|
_a.sent();
|
|
4263
4307
|
return [4 /*yield*/, sdk.api.enduser_orders.createOne({ status: 'Filled', source: 'Source', externalId: '5', enduserId: e.id, title: "Title", fill: "Fill" })];
|
|
4264
|
-
case
|
|
4308
|
+
case 28:
|
|
4265
4309
|
_a.sent();
|
|
4266
4310
|
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4267
|
-
case
|
|
4311
|
+
case 29:
|
|
4268
4312
|
_a.sent(); // allow triggers to happen
|
|
4269
4313
|
return [4 /*yield*/, async_test("Fill tag added", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) {
|
|
4270
4314
|
var _a, _b, _c;
|
|
@@ -4272,16 +4316,16 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
|
|
|
4272
4316
|
&& ((_b = e.tags) === null || _b === void 0 ? void 0 : _b.includes('Source'))
|
|
4273
4317
|
&& ((_c = e.tags) === null || _c === void 0 ? void 0 : _c.includes('Fill')));
|
|
4274
4318
|
} })];
|
|
4275
|
-
case
|
|
4319
|
+
case 30:
|
|
4276
4320
|
_a.sent();
|
|
4277
4321
|
return [4 /*yield*/, sdk.api.enduser_orders.createOne({ status: 'Status', source: 'Source', externalId: '6', enduserId: e.id, title: "Title" })];
|
|
4278
|
-
case
|
|
4322
|
+
case 31:
|
|
4279
4323
|
u = _a.sent();
|
|
4280
4324
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Update' })];
|
|
4281
|
-
case
|
|
4325
|
+
case 32:
|
|
4282
4326
|
_a.sent();
|
|
4283
4327
|
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4284
|
-
case
|
|
4328
|
+
case 33:
|
|
4285
4329
|
_a.sent(); // allow triggers to happen
|
|
4286
4330
|
return [4 /*yield*/, async_test("Status update tag added", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) {
|
|
4287
4331
|
var _a, _b, _c, _d;
|
|
@@ -4292,18 +4336,18 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
|
|
|
4292
4336
|
} })
|
|
4293
4337
|
// duplicate updates get rate limited, so we need to make each update unique
|
|
4294
4338
|
];
|
|
4295
|
-
case
|
|
4339
|
+
case 34:
|
|
4296
4340
|
_a.sent();
|
|
4297
4341
|
// duplicate updates get rate limited, so we need to make each update unique
|
|
4298
4342
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle' })];
|
|
4299
|
-
case
|
|
4343
|
+
case 35:
|
|
4300
4344
|
// duplicate updates get rate limited, so we need to make each update unique
|
|
4301
4345
|
_a.sent();
|
|
4302
4346
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", fill: 'Update', externalId: 'avoid rate limiting' })];
|
|
4303
|
-
case
|
|
4347
|
+
case 36:
|
|
4304
4348
|
_a.sent();
|
|
4305
4349
|
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4306
|
-
case
|
|
4350
|
+
case 37:
|
|
4307
4351
|
_a.sent(); // allow triggers to happen
|
|
4308
4352
|
return [4 /*yield*/, async_test("Fill update tag added", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) {
|
|
4309
4353
|
var _a, _b, _c, _d, _f;
|
|
@@ -4313,16 +4357,16 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
|
|
|
4313
4357
|
&& ((_d = e.tags) === null || _d === void 0 ? void 0 : _d.includes('Status Update'))
|
|
4314
4358
|
&& ((_f = e.tags) === null || _f === void 0 ? void 0 : _f.includes('Fill Update')));
|
|
4315
4359
|
} })];
|
|
4316
|
-
case
|
|
4360
|
+
case 38:
|
|
4317
4361
|
_a.sent();
|
|
4318
4362
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle', externalId: "also avoid rate limit 1" })];
|
|
4319
|
-
case
|
|
4363
|
+
case 39:
|
|
4320
4364
|
_a.sent();
|
|
4321
4365
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", sku: 'SK', externalId: 'avoid rate limiting 2' })];
|
|
4322
|
-
case
|
|
4366
|
+
case 40:
|
|
4323
4367
|
_a.sent();
|
|
4324
4368
|
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4325
|
-
case
|
|
4369
|
+
case 41:
|
|
4326
4370
|
_a.sent(); // allow triggers to happen
|
|
4327
4371
|
return [4 /*yield*/, async_test("SKU update no match", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) {
|
|
4328
4372
|
var _a, _b, _c, _d, _f;
|
|
@@ -4332,16 +4376,16 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
|
|
|
4332
4376
|
&& ((_d = e.tags) === null || _d === void 0 ? void 0 : _d.includes('Status Update'))
|
|
4333
4377
|
&& ((_f = e.tags) === null || _f === void 0 ? void 0 : _f.includes('Fill Update')));
|
|
4334
4378
|
} })];
|
|
4335
|
-
case
|
|
4379
|
+
case 42:
|
|
4336
4380
|
_a.sent();
|
|
4337
4381
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle', externalId: "also avoid rate limit 2" })];
|
|
4338
|
-
case
|
|
4382
|
+
case 43:
|
|
4339
4383
|
_a.sent();
|
|
4340
4384
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", sku: 'SKU', externalId: 'avoid rate limiting 3' })];
|
|
4341
|
-
case
|
|
4385
|
+
case 44:
|
|
4342
4386
|
_a.sent();
|
|
4343
4387
|
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4344
|
-
case
|
|
4388
|
+
case 45:
|
|
4345
4389
|
_a.sent(); // allow triggers to happen
|
|
4346
4390
|
return [4 /*yield*/, async_test("SKU update tag added", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) {
|
|
4347
4391
|
var _a, _b, _c, _d, _f, _g;
|
|
@@ -4352,16 +4396,16 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
|
|
|
4352
4396
|
&& ((_f = e.tags) === null || _f === void 0 ? void 0 : _f.includes('Fill Update'))
|
|
4353
4397
|
&& ((_g = e.tags) === null || _g === void 0 ? void 0 : _g.includes('SKU Update')));
|
|
4354
4398
|
} })];
|
|
4355
|
-
case
|
|
4399
|
+
case 46:
|
|
4356
4400
|
_a.sent();
|
|
4357
4401
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle', externalId: "also avoid rate limit 3" })];
|
|
4358
|
-
case
|
|
4402
|
+
case 47:
|
|
4359
4403
|
_a.sent();
|
|
4360
4404
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", sku: '___SKU-PARTIAL--_' })];
|
|
4361
|
-
case
|
|
4405
|
+
case 48:
|
|
4362
4406
|
_a.sent();
|
|
4363
4407
|
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4364
|
-
case
|
|
4408
|
+
case 49:
|
|
4365
4409
|
_a.sent(); // allow triggers to happen
|
|
4366
4410
|
return [4 /*yield*/, async_test("SKU partial update tag added", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) {
|
|
4367
4411
|
var _a, _b, _c, _d, _f, _g, _h;
|
|
@@ -4373,16 +4417,16 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
|
|
|
4373
4417
|
&& ((_g = e.tags) === null || _g === void 0 ? void 0 : _g.includes('SKU Update'))
|
|
4374
4418
|
&& ((_h = e.tags) === null || _h === void 0 ? void 0 : _h.includes('SKU Partial Update')));
|
|
4375
4419
|
} })];
|
|
4376
|
-
case
|
|
4420
|
+
case 50:
|
|
4377
4421
|
_a.sent();
|
|
4378
4422
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle', externalId: "also avoid rate limit 4" })];
|
|
4379
|
-
case
|
|
4423
|
+
case 51:
|
|
4380
4424
|
_a.sent();
|
|
4381
4425
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", title: "TITLE-PARTIAL" })];
|
|
4382
|
-
case
|
|
4426
|
+
case 52:
|
|
4383
4427
|
_a.sent();
|
|
4384
4428
|
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4385
|
-
case
|
|
4429
|
+
case 53:
|
|
4386
4430
|
_a.sent(); // allow triggers to happen
|
|
4387
4431
|
return [4 /*yield*/, async_test("Title partial update tag added", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) {
|
|
4388
4432
|
var _a, _b, _c, _d, _f, _g, _h, _j;
|
|
@@ -4395,32 +4439,32 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
|
|
|
4395
4439
|
&& ((_h = e.tags) === null || _h === void 0 ? void 0 : _h.includes('SKU Partial Update'))
|
|
4396
4440
|
&& ((_j = e.tags) === null || _j === void 0 ? void 0 : _j.includes('Title Partial Update')));
|
|
4397
4441
|
} })];
|
|
4398
|
-
case
|
|
4442
|
+
case 54:
|
|
4399
4443
|
_a.sent();
|
|
4400
4444
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle', externalId: "also avoid rate limit 5" })];
|
|
4401
|
-
case
|
|
4445
|
+
case 55:
|
|
4402
4446
|
_a.sent();
|
|
4403
4447
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", title: "PARTIAL-A only" })];
|
|
4404
|
-
case
|
|
4448
|
+
case 56:
|
|
4405
4449
|
_a.sent();
|
|
4406
4450
|
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4407
|
-
case
|
|
4451
|
+
case 57:
|
|
4408
4452
|
_a.sent(); // allow triggers to happen
|
|
4409
4453
|
return [4 /*yield*/, async_test("Title partial AND no match (only one partial present)", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) {
|
|
4410
4454
|
var _a, _b;
|
|
4411
4455
|
return !!(((_a = e.tags) === null || _a === void 0 ? void 0 : _a.length) === 7
|
|
4412
4456
|
&& !((_b = e.tags) === null || _b === void 0 ? void 0 : _b.includes('Title Partial And Update')));
|
|
4413
4457
|
} })];
|
|
4414
|
-
case
|
|
4458
|
+
case 58:
|
|
4415
4459
|
_a.sent();
|
|
4416
4460
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle', externalId: "also avoid rate limit 6" })];
|
|
4417
|
-
case
|
|
4461
|
+
case 59:
|
|
4418
4462
|
_a.sent();
|
|
4419
4463
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", title: "PARTIAL-A and PARTIAL-B together" })];
|
|
4420
|
-
case
|
|
4464
|
+
case 60:
|
|
4421
4465
|
_a.sent();
|
|
4422
4466
|
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4423
|
-
case
|
|
4467
|
+
case 61:
|
|
4424
4468
|
_a.sent(); // allow triggers to happen
|
|
4425
4469
|
return [4 /*yield*/, async_test("Title partial AND update tag added (both partials present)", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) {
|
|
4426
4470
|
var _a, _b, _c, _d, _f, _g, _h, _j, _k;
|
|
@@ -4434,32 +4478,32 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
|
|
|
4434
4478
|
&& ((_j = e.tags) === null || _j === void 0 ? void 0 : _j.includes('Title Partial Update'))
|
|
4435
4479
|
&& ((_k = e.tags) === null || _k === void 0 ? void 0 : _k.includes('Title Partial And Update')));
|
|
4436
4480
|
} })];
|
|
4437
|
-
case
|
|
4481
|
+
case 62:
|
|
4438
4482
|
_a.sent();
|
|
4439
4483
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle', externalId: "also avoid rate limit 7" })];
|
|
4440
|
-
case
|
|
4484
|
+
case 63:
|
|
4441
4485
|
_a.sent();
|
|
4442
4486
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", protocol: 'Protocol-Mismatch', externalId: 'avoid rate limiting 7' })];
|
|
4443
|
-
case
|
|
4487
|
+
case 64:
|
|
4444
4488
|
_a.sent();
|
|
4445
4489
|
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4446
|
-
case
|
|
4490
|
+
case 65:
|
|
4447
4491
|
_a.sent(); // allow triggers to happen
|
|
4448
4492
|
return [4 /*yield*/, async_test("Protocol no match (wrong protocol)", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) {
|
|
4449
4493
|
var _a, _b;
|
|
4450
4494
|
return !!(((_a = e.tags) === null || _a === void 0 ? void 0 : _a.length) === 8
|
|
4451
4495
|
&& !((_b = e.tags) === null || _b === void 0 ? void 0 : _b.includes('Protocol Match')));
|
|
4452
4496
|
} })];
|
|
4453
|
-
case
|
|
4497
|
+
case 66:
|
|
4454
4498
|
_a.sent();
|
|
4455
4499
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: 'Toggle', externalId: "also avoid rate limit 8" })];
|
|
4456
|
-
case
|
|
4500
|
+
case 67:
|
|
4457
4501
|
_a.sent();
|
|
4458
4502
|
return [4 /*yield*/, sdk.api.enduser_orders.updateOne(u.id, { status: "Update", protocol: 'Protocol-A', externalId: 'avoid rate limiting 8' })];
|
|
4459
|
-
case
|
|
4503
|
+
case 68:
|
|
4460
4504
|
_a.sent();
|
|
4461
4505
|
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4462
|
-
case
|
|
4506
|
+
case 69:
|
|
4463
4507
|
_a.sent(); // allow triggers to happen
|
|
4464
4508
|
return [4 /*yield*/, async_test("Protocol match tag added", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) {
|
|
4465
4509
|
var _a, _b, _c, _d, _f, _g, _h, _j, _k, _l;
|
|
@@ -4473,8 +4517,121 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
|
|
|
4473
4517
|
&& ((_j = e.tags) === null || _j === void 0 ? void 0 : _j.includes('Title Partial Update'))
|
|
4474
4518
|
&& ((_k = e.tags) === null || _k === void 0 ? void 0 : _k.includes('Title Partial And Update'))
|
|
4475
4519
|
&& ((_l = e.tags) === null || _l === void 0 ? void 0 : _l.includes('Protocol Match')));
|
|
4520
|
+
} })
|
|
4521
|
+
// --- Frequency filter coverage (fresh enduser keeps tag-count assertions isolated) ---
|
|
4522
|
+
];
|
|
4523
|
+
case 70:
|
|
4524
|
+
_a.sent();
|
|
4525
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({})
|
|
4526
|
+
// Order with NO frequency: no-filter trigger (tf1) and empty-array trigger (tf3) both fire;
|
|
4527
|
+
// populated-filter trigger (tf2) does NOT (missing frequency must never match a populated filter).
|
|
4528
|
+
];
|
|
4529
|
+
case 71:
|
|
4530
|
+
ef = _a.sent();
|
|
4531
|
+
// Order with NO frequency: no-filter trigger (tf1) and empty-array trigger (tf3) both fire;
|
|
4532
|
+
// populated-filter trigger (tf2) does NOT (missing frequency must never match a populated filter).
|
|
4533
|
+
return [4 /*yield*/, sdk.api.enduser_orders.createOne({ status: 'FreqStatus', source: 'FreqSource', externalId: 'f1', enduserId: ef.id, title: "Freq No Frequency" })];
|
|
4534
|
+
case 72:
|
|
4535
|
+
// Order with NO frequency: no-filter trigger (tf1) and empty-array trigger (tf3) both fire;
|
|
4536
|
+
// populated-filter trigger (tf2) does NOT (missing frequency must never match a populated filter).
|
|
4537
|
+
_a.sent();
|
|
4538
|
+
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4539
|
+
case 73:
|
|
4540
|
+
_a.sent(); // allow triggers to happen
|
|
4541
|
+
return [4 /*yield*/, async_test("Frequency: no-filter + empty-array fire for order with no frequency (backward compat)", function () { return sdk.api.endusers.getOne(ef.id); }, { onResult: function (e) {
|
|
4542
|
+
var _a, _b, _c, _d;
|
|
4543
|
+
return !!(((_a = e.tags) === null || _a === void 0 ? void 0 : _a.length) === 2
|
|
4544
|
+
&& ((_b = e.tags) === null || _b === void 0 ? void 0 : _b.includes('Freq No Filter'))
|
|
4545
|
+
&& ((_c = e.tags) === null || _c === void 0 ? void 0 : _c.includes('Freq Empty All'))
|
|
4546
|
+
&& !((_d = e.tags) === null || _d === void 0 ? void 0 : _d.includes('Freq Match')));
|
|
4547
|
+
} })
|
|
4548
|
+
// Order with a frequency NOT in ['4','12'] -> populated-filter trigger still does not fire.
|
|
4549
|
+
];
|
|
4550
|
+
case 74:
|
|
4551
|
+
_a.sent();
|
|
4552
|
+
// Order with a frequency NOT in ['4','12'] -> populated-filter trigger still does not fire.
|
|
4553
|
+
return [4 /*yield*/, sdk.api.enduser_orders.createOne({ status: 'FreqStatus', source: 'FreqSource', externalId: 'f2', enduserId: ef.id, title: "Freq 8", frequency: '8' })];
|
|
4554
|
+
case 75:
|
|
4555
|
+
// Order with a frequency NOT in ['4','12'] -> populated-filter trigger still does not fire.
|
|
4556
|
+
_a.sent();
|
|
4557
|
+
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4558
|
+
case 76:
|
|
4559
|
+
_a.sent(); // allow triggers to happen
|
|
4560
|
+
return [4 /*yield*/, async_test("Frequency: no match (order frequency '8' not in ['4','12'])", function () { return sdk.api.endusers.getOne(ef.id); }, { onResult: function (e) {
|
|
4561
|
+
var _a, _b;
|
|
4562
|
+
return !!(((_a = e.tags) === null || _a === void 0 ? void 0 : _a.length) === 2
|
|
4563
|
+
&& !((_b = e.tags) === null || _b === void 0 ? void 0 : _b.includes('Freq Match')));
|
|
4564
|
+
} })
|
|
4565
|
+
// Order with frequency '4' -> ['4','12'] trigger fires.
|
|
4566
|
+
];
|
|
4567
|
+
case 77:
|
|
4568
|
+
_a.sent();
|
|
4569
|
+
// Order with frequency '4' -> ['4','12'] trigger fires.
|
|
4570
|
+
return [4 /*yield*/, sdk.api.enduser_orders.createOne({ status: 'FreqStatus', source: 'FreqSource', externalId: 'f3', enduserId: ef.id, title: "Freq 4", frequency: '4' })];
|
|
4571
|
+
case 78:
|
|
4572
|
+
// Order with frequency '4' -> ['4','12'] trigger fires.
|
|
4573
|
+
_a.sent();
|
|
4574
|
+
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4575
|
+
case 79:
|
|
4576
|
+
_a.sent(); // allow triggers to happen
|
|
4577
|
+
return [4 /*yield*/, async_test("Frequency: match (order frequency '4' is in ['4','12'])", function () { return sdk.api.endusers.getOne(ef.id); }, { onResult: function (e) {
|
|
4578
|
+
var _a, _b, _c;
|
|
4579
|
+
return !!(((_a = e.tags) === null || _a === void 0 ? void 0 : _a.length) === 3
|
|
4580
|
+
&& ((_b = e.tags) === null || _b === void 0 ? void 0 : _b.includes('Freq Match'))
|
|
4581
|
+
&& !((_c = e.tags) === null || _c === void 0 ? void 0 : _c.includes('Freq Match 12')));
|
|
4582
|
+
} })
|
|
4583
|
+
// Order with frequency '12' -> the second listed value also matches (tf5 frequencies: ['12']).
|
|
4584
|
+
];
|
|
4585
|
+
case 80:
|
|
4586
|
+
_a.sent();
|
|
4587
|
+
// Order with frequency '12' -> the second listed value also matches (tf5 frequencies: ['12']).
|
|
4588
|
+
return [4 /*yield*/, sdk.api.enduser_orders.createOne({ status: 'FreqStatus', source: 'FreqSource', externalId: 'f4', enduserId: ef.id, title: "Freq 12", frequency: '12' })];
|
|
4589
|
+
case 81:
|
|
4590
|
+
// Order with frequency '12' -> the second listed value also matches (tf5 frequencies: ['12']).
|
|
4591
|
+
_a.sent();
|
|
4592
|
+
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4593
|
+
case 82:
|
|
4594
|
+
_a.sent(); // allow triggers to happen
|
|
4595
|
+
return [4 /*yield*/, async_test("Frequency: second listed value '12' also matches", function () { return sdk.api.endusers.getOne(ef.id); }, { onResult: function (e) {
|
|
4596
|
+
var _a, _b;
|
|
4597
|
+
return !!(((_a = e.tags) === null || _a === void 0 ? void 0 : _a.length) === 4
|
|
4598
|
+
&& ((_b = e.tags) === null || _b === void 0 ? void 0 : _b.includes('Freq Match 12')));
|
|
4599
|
+
} })
|
|
4600
|
+
// AND semantics: frequency + status must BOTH match. Right frequency, wrong status -> no fire.
|
|
4601
|
+
];
|
|
4602
|
+
case 83:
|
|
4603
|
+
_a.sent();
|
|
4604
|
+
// AND semantics: frequency + status must BOTH match. Right frequency, wrong status -> no fire.
|
|
4605
|
+
return [4 /*yield*/, sdk.api.enduser_orders.createOne({ status: 'FreqShipped', source: 'FreqSource', externalId: 'f5', enduserId: ef.id, title: "Freq Combo Wrong Freq", frequency: '8' })];
|
|
4606
|
+
case 84:
|
|
4607
|
+
// AND semantics: frequency + status must BOTH match. Right frequency, wrong status -> no fire.
|
|
4608
|
+
_a.sent();
|
|
4609
|
+
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4610
|
+
case 85:
|
|
4611
|
+
_a.sent(); // allow triggers to happen
|
|
4612
|
+
return [4 /*yield*/, async_test("Frequency + status combo: status matches but frequency does not -> no fire", function () { return sdk.api.endusers.getOne(ef.id); }, { onResult: function (e) {
|
|
4613
|
+
var _a, _b;
|
|
4614
|
+
return !!(((_a = e.tags) === null || _a === void 0 ? void 0 : _a.length) === 4
|
|
4615
|
+
&& !((_b = e.tags) === null || _b === void 0 ? void 0 : _b.includes('Freq Status Combo')));
|
|
4616
|
+
} })
|
|
4617
|
+
// AND semantics: right status AND right frequency -> fires.
|
|
4618
|
+
];
|
|
4619
|
+
case 86:
|
|
4620
|
+
_a.sent();
|
|
4621
|
+
// AND semantics: right status AND right frequency -> fires.
|
|
4622
|
+
return [4 /*yield*/, sdk.api.enduser_orders.createOne({ status: 'FreqShipped', source: 'FreqSource', externalId: 'f6', enduserId: ef.id, title: "Freq Combo Match", frequency: '4' })];
|
|
4623
|
+
case 87:
|
|
4624
|
+
// AND semantics: right status AND right frequency -> fires.
|
|
4625
|
+
_a.sent();
|
|
4626
|
+
return [4 /*yield*/, wait(undefined, 500)]; // allow triggers to happen
|
|
4627
|
+
case 88:
|
|
4628
|
+
_a.sent(); // allow triggers to happen
|
|
4629
|
+
return [4 /*yield*/, async_test("Frequency + status combo: both match -> fires (AND semantics)", function () { return sdk.api.endusers.getOne(ef.id); }, { onResult: function (e) {
|
|
4630
|
+
var _a, _b;
|
|
4631
|
+
return !!(((_a = e.tags) === null || _a === void 0 ? void 0 : _a.length) === 5
|
|
4632
|
+
&& ((_b = e.tags) === null || _b === void 0 ? void 0 : _b.includes('Freq Status Combo')));
|
|
4476
4633
|
} })];
|
|
4477
|
-
case
|
|
4634
|
+
case 89:
|
|
4478
4635
|
_a.sent();
|
|
4479
4636
|
return [4 /*yield*/, Promise.all([
|
|
4480
4637
|
sdk.api.automation_triggers.deleteOne(t1.id),
|
|
@@ -4486,9 +4643,15 @@ var order_status_equals_tests = function () { return __awaiter(void 0, void 0, v
|
|
|
4486
4643
|
sdk.api.automation_triggers.deleteOne(t7.id),
|
|
4487
4644
|
sdk.api.automation_triggers.deleteOne(t8.id),
|
|
4488
4645
|
sdk.api.automation_triggers.deleteOne(t9.id),
|
|
4646
|
+
sdk.api.automation_triggers.deleteOne(tf1.id),
|
|
4647
|
+
sdk.api.automation_triggers.deleteOne(tf2.id),
|
|
4648
|
+
sdk.api.automation_triggers.deleteOne(tf3.id),
|
|
4649
|
+
sdk.api.automation_triggers.deleteOne(tf4.id),
|
|
4650
|
+
sdk.api.automation_triggers.deleteOne(tf5.id),
|
|
4489
4651
|
sdk.api.endusers.deleteOne(e.id),
|
|
4652
|
+
sdk.api.endusers.deleteOne(ef.id),
|
|
4490
4653
|
])];
|
|
4491
|
-
case
|
|
4654
|
+
case 90:
|
|
4492
4655
|
_a.sent();
|
|
4493
4656
|
return [2 /*return*/];
|
|
4494
4657
|
}
|
|
@@ -8013,7 +8176,7 @@ export var filter_by_date_tests = function () { return __awaiter(void 0, void 0,
|
|
|
8013
8176
|
});
|
|
8014
8177
|
}); };
|
|
8015
8178
|
export var self_serve_appointment_booking_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
8016
|
-
var e1, e2, e3, event15min, event30min, event30minGroup, dayOfWeekStartingSundayIndexedByZero, enduserSDK2, enduserSDK3, nySlots, bookedAppointment, conflict, groupEvent, multiSlots, bookedMultiAppointment, conflict2, conflict3, rescheduleSlots, templatePreserveHosts, originalMultiHostAppt, rescheduledPreserveHosts, templateReplaceHosts, originalForReplace, rescheduledReplaceHosts;
|
|
8179
|
+
var e1, e2, e3, event15min, event30min, event30minGroup, event30minTwilio, event30minZoom, dayOfWeekStartingSundayIndexedByZero, enduserSDK2, enduserSDK3, nySlots, bookedAppointment, conflict, groupEvent, multiSlots, bookedMultiAppointment, conflict2, conflict3, rescheduleSlots, templatePreserveHosts, originalMultiHostAppt, rescheduledPreserveHosts, templateReplaceHosts, originalForReplace, rescheduledReplaceHosts, twilioSlots, bookedTwilioAppointment, zoomSlots, bookedZoomAppointment;
|
|
8017
8180
|
return __generator(this, function (_a) {
|
|
8018
8181
|
switch (_a.label) {
|
|
8019
8182
|
case 0:
|
|
@@ -8055,11 +8218,29 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8055
8218
|
confirmationEmailDisabled: true,
|
|
8056
8219
|
confirmationSMSDisabled: true,
|
|
8057
8220
|
enduserAttendeeLimit: 2,
|
|
8221
|
+
})];
|
|
8222
|
+
case 9:
|
|
8223
|
+
event30minGroup = _a.sent();
|
|
8224
|
+
return [4 /*yield*/, sdk.api.calendar_event_templates.createOne({
|
|
8225
|
+
title: 'test twilio', durationInMinutes: 30,
|
|
8226
|
+
confirmationEmailDisabled: true,
|
|
8227
|
+
confirmationSMSDisabled: true,
|
|
8228
|
+
enableVideoCall: true,
|
|
8229
|
+
videoIntegration: 'Twilio',
|
|
8230
|
+
})];
|
|
8231
|
+
case 10:
|
|
8232
|
+
event30minTwilio = _a.sent();
|
|
8233
|
+
return [4 /*yield*/, sdk.api.calendar_event_templates.createOne({
|
|
8234
|
+
title: 'test zoom', durationInMinutes: 30,
|
|
8235
|
+
confirmationEmailDisabled: true,
|
|
8236
|
+
confirmationSMSDisabled: true,
|
|
8237
|
+
enableVideoCall: true,
|
|
8238
|
+
videoIntegration: 'Zoom',
|
|
8058
8239
|
})
|
|
8059
8240
|
// ensure it doesn't match current day, to avoid errors on testing
|
|
8060
8241
|
];
|
|
8061
|
-
case
|
|
8062
|
-
|
|
8242
|
+
case 11:
|
|
8243
|
+
event30minZoom = _a.sent();
|
|
8063
8244
|
dayOfWeekStartingSundayIndexedByZero = (new Date().getDay() + 1) % 7;
|
|
8064
8245
|
return [4 /*yield*/, sdk.api.users.updateOne(sdk.userInfo.id, {
|
|
8065
8246
|
weeklyAvailabilities: [
|
|
@@ -8079,7 +8260,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8079
8260
|
}, {
|
|
8080
8261
|
replaceObjectFields: true,
|
|
8081
8262
|
})];
|
|
8082
|
-
case
|
|
8263
|
+
case 12:
|
|
8083
8264
|
_a.sent();
|
|
8084
8265
|
return [4 /*yield*/, sdkNonAdmin.api.users.updateOne(sdkNonAdmin.userInfo.id, {
|
|
8085
8266
|
weeklyAvailabilities: [
|
|
@@ -8094,21 +8275,21 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8094
8275
|
}, {
|
|
8095
8276
|
replaceObjectFields: true,
|
|
8096
8277
|
})];
|
|
8097
|
-
case
|
|
8278
|
+
case 13:
|
|
8098
8279
|
_a.sent();
|
|
8099
8280
|
enduserSDK2 = new EnduserSession({ host: host, businessId: businessId });
|
|
8100
8281
|
return [4 /*yield*/, enduserSDK2.authenticate('sebass+ca@tellescope.com', password).catch(console.error)];
|
|
8101
|
-
case
|
|
8282
|
+
case 14:
|
|
8102
8283
|
_a.sent();
|
|
8103
8284
|
enduserSDK3 = new EnduserSession({ host: host, businessId: businessId });
|
|
8104
8285
|
return [4 /*yield*/, enduserSDK3.authenticate('sebass+3@tellescope.com', password).catch(console.error)
|
|
8105
8286
|
// NY Enduser Tests
|
|
8106
8287
|
];
|
|
8107
|
-
case
|
|
8288
|
+
case 15:
|
|
8108
8289
|
_a.sent();
|
|
8109
8290
|
// NY Enduser Tests
|
|
8110
8291
|
return [4 /*yield*/, enduserSDK.authenticate('sebass+ny@tellescope.com', password).catch(console.error)];
|
|
8111
|
-
case
|
|
8292
|
+
case 16:
|
|
8112
8293
|
// NY Enduser Tests
|
|
8113
8294
|
_a.sent();
|
|
8114
8295
|
return [4 /*yield*/, async_test('30 minute slots for state restriction', function () { return enduserSDK.api.calendar_events.get_appointment_availability({
|
|
@@ -8117,7 +8298,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8117
8298
|
to: new Date(Date.now() + 3 * 24 * 60 * 60 * 1000),
|
|
8118
8299
|
restrictedByState: true,
|
|
8119
8300
|
}); }, { onResult: function (r) { return r.availabilityBlocks.length === 2; } })];
|
|
8120
|
-
case
|
|
8301
|
+
case 17:
|
|
8121
8302
|
_a.sent();
|
|
8122
8303
|
return [4 /*yield*/, async_test('30 minute slots for state restriction (called as user)', function () { return sdk.api.calendar_events.get_appointment_availability({
|
|
8123
8304
|
calendarEventTemplateId: event30min.id,
|
|
@@ -8126,7 +8307,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8126
8307
|
restrictedByState: true,
|
|
8127
8308
|
state: "NY", // same state as enduserSDK
|
|
8128
8309
|
}); }, { onResult: function (r) { return r.availabilityBlocks.length === 2; } })];
|
|
8129
|
-
case
|
|
8310
|
+
case 18:
|
|
8130
8311
|
_a.sent();
|
|
8131
8312
|
return [4 /*yield*/, async_test('30 minute slots for state restriction with 15 min interval', function () { return enduserSDK.api.calendar_events.get_appointment_availability({
|
|
8132
8313
|
calendarEventTemplateId: event30min.id,
|
|
@@ -8135,7 +8316,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8135
8316
|
restrictedByState: true,
|
|
8136
8317
|
intervalInMinutes: 15,
|
|
8137
8318
|
}); }, { onResult: function (r) { return r.availabilityBlocks.length === 3; } })];
|
|
8138
|
-
case
|
|
8319
|
+
case 19:
|
|
8139
8320
|
_a.sent();
|
|
8140
8321
|
return [4 /*yield*/, async_test('30 minute slots for state restriction with 10 min interval', function () { return enduserSDK.api.calendar_events.get_appointment_availability({
|
|
8141
8322
|
calendarEventTemplateId: event30min.id,
|
|
@@ -8144,7 +8325,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8144
8325
|
restrictedByState: true,
|
|
8145
8326
|
intervalInMinutes: 10,
|
|
8146
8327
|
}); }, { onResult: function (r) { return r.availabilityBlocks.length === 4; } })];
|
|
8147
|
-
case
|
|
8328
|
+
case 20:
|
|
8148
8329
|
_a.sent();
|
|
8149
8330
|
return [4 /*yield*/, async_test('30 minute slots for no state restrictions', function () { return enduserSDK.api.calendar_events.get_appointment_availability({
|
|
8150
8331
|
calendarEventTemplateId: event30min.id,
|
|
@@ -8163,7 +8344,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8163
8344
|
}
|
|
8164
8345
|
return true;
|
|
8165
8346
|
} })];
|
|
8166
|
-
case
|
|
8347
|
+
case 21:
|
|
8167
8348
|
_a.sent();
|
|
8168
8349
|
return [4 /*yield*/, enduserSDK.api.calendar_events.get_appointment_availability({
|
|
8169
8350
|
calendarEventTemplateId: event30min.id,
|
|
@@ -8171,7 +8352,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8171
8352
|
to: new Date(Date.now() + 3 * 24 * 60 * 60 * 1000),
|
|
8172
8353
|
restrictedByState: true,
|
|
8173
8354
|
})];
|
|
8174
|
-
case
|
|
8355
|
+
case 22:
|
|
8175
8356
|
nySlots = _a.sent();
|
|
8176
8357
|
return [4 /*yield*/, enduserSDK.api.calendar_events.book_appointment({
|
|
8177
8358
|
calendarEventTemplateId: event30min.id,
|
|
@@ -8182,7 +8363,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8182
8363
|
fields: "Test",
|
|
8183
8364
|
}
|
|
8184
8365
|
})];
|
|
8185
|
-
case
|
|
8366
|
+
case 23:
|
|
8186
8367
|
bookedAppointment = (_a.sent()).createdEvent;
|
|
8187
8368
|
assert(bookedAppointment.attendees.length === 2, 'did not get 2 attendees', '2 attendees fo non-multi-event');
|
|
8188
8369
|
return [4 /*yield*/, async_test('double-booking prevented', function () { return enduserSDK.api.calendar_events.book_appointment({
|
|
@@ -8190,7 +8371,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8190
8371
|
startTime: new Date(nySlots.availabilityBlocks[0].startTimeInMS),
|
|
8191
8372
|
userId: nySlots.availabilityBlocks[0].userId,
|
|
8192
8373
|
}); }, handleAnyError)];
|
|
8193
|
-
case
|
|
8374
|
+
case 24:
|
|
8194
8375
|
_a.sent();
|
|
8195
8376
|
return [4 /*yield*/, async_test('30 minute slots for state restriction with 1 overlapping conflict', function () { return enduserSDK.api.calendar_events.get_appointment_availability({
|
|
8196
8377
|
calendarEventTemplateId: event30min.id,
|
|
@@ -8202,7 +8383,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8202
8383
|
&& r.availabilityBlocks[0].startTimeInMS === nySlots.availabilityBlocks[1].startTimeInMS;
|
|
8203
8384
|
} // the first slot of nySlots is booked
|
|
8204
8385
|
})];
|
|
8205
|
-
case
|
|
8386
|
+
case 25:
|
|
8206
8387
|
_a.sent();
|
|
8207
8388
|
return [4 /*yield*/, sdk.api.calendar_events.createOne({
|
|
8208
8389
|
title: 'conflict',
|
|
@@ -8210,7 +8391,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8210
8391
|
durationInMinutes: nySlots.availabilityBlocks[1].durationInMinutes,
|
|
8211
8392
|
attendees: [{ type: 'user', id: sdk.userInfo.id }]
|
|
8212
8393
|
})];
|
|
8213
|
-
case
|
|
8394
|
+
case 26:
|
|
8214
8395
|
conflict = _a.sent();
|
|
8215
8396
|
return [4 /*yield*/, async_test('30 minute slots for state restriction with 2 overlapping conflict', function () { return enduserSDK.api.calendar_events.get_appointment_availability({
|
|
8216
8397
|
calendarEventTemplateId: event30min.id,
|
|
@@ -8218,7 +8399,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8218
8399
|
to: new Date(Date.now() + 3 * 24 * 60 * 60 * 1000),
|
|
8219
8400
|
restrictedByState: true,
|
|
8220
8401
|
}); }, { onResult: function (r) { return r.availabilityBlocks.length === 0; } })];
|
|
8221
|
-
case
|
|
8402
|
+
case 27:
|
|
8222
8403
|
_a.sent();
|
|
8223
8404
|
return [4 /*yield*/, async_test('booking against conflict prevented', function () { return enduserSDK.api.calendar_events.book_appointment({
|
|
8224
8405
|
calendarEventTemplateId: event30min.id,
|
|
@@ -8227,11 +8408,11 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8227
8408
|
}); }, handleAnyError)
|
|
8228
8409
|
// test group bookings
|
|
8229
8410
|
];
|
|
8230
|
-
case
|
|
8411
|
+
case 28:
|
|
8231
8412
|
_a.sent();
|
|
8232
8413
|
// test group bookings
|
|
8233
8414
|
return [4 /*yield*/, sdk.api.calendar_events.updateOne(conflict.id, { enduserAttendeeLimit: 2 })];
|
|
8234
|
-
case
|
|
8415
|
+
case 29:
|
|
8235
8416
|
// test group bookings
|
|
8236
8417
|
_a.sent();
|
|
8237
8418
|
return [4 /*yield*/, async_test('[group booking] different event type conflict as group still blocks availability', function () { return enduserSDK.api.calendar_events.get_appointment_availability({
|
|
@@ -8239,52 +8420,52 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8239
8420
|
from: new Date(Date.now() - 10000),
|
|
8240
8421
|
to: new Date(Date.now() + 3 * 24 * 60 * 60 * 1000),
|
|
8241
8422
|
}); }, { onResult: function (r) { return r.availabilityBlocks.length === 2; } })];
|
|
8242
|
-
case
|
|
8423
|
+
case 30:
|
|
8243
8424
|
_a.sent();
|
|
8244
8425
|
return [4 /*yield*/, sdk.api.calendar_events.deleteOne(conflict.id)];
|
|
8245
|
-
case
|
|
8426
|
+
case 31:
|
|
8246
8427
|
_a.sent();
|
|
8247
8428
|
return [4 /*yield*/, async_test('[group booking] availability', function () { return enduserSDK.api.calendar_events.get_appointment_availability({
|
|
8248
8429
|
calendarEventTemplateId: event30minGroup.id,
|
|
8249
8430
|
from: new Date(Date.now() - 10000),
|
|
8250
8431
|
to: new Date(Date.now() + 3 * 24 * 60 * 60 * 1000),
|
|
8251
8432
|
}); }, { onResult: function (r) { return r.availabilityBlocks.length === 3; } })];
|
|
8252
|
-
case
|
|
8433
|
+
case 32:
|
|
8253
8434
|
_a.sent();
|
|
8254
8435
|
return [4 /*yield*/, enduserSDK.api.calendar_events.book_appointment({
|
|
8255
8436
|
calendarEventTemplateId: event30minGroup.id,
|
|
8256
8437
|
startTime: new Date(nySlots.availabilityBlocks[1].startTimeInMS),
|
|
8257
8438
|
userId: nySlots.availabilityBlocks[1].userId,
|
|
8258
8439
|
})];
|
|
8259
|
-
case
|
|
8440
|
+
case 33:
|
|
8260
8441
|
groupEvent = (_a.sent()).createdEvent;
|
|
8261
8442
|
return [4 /*yield*/, async_test('[group booking] more booking allowed', function () { return enduserSDK.api.calendar_events.get_appointment_availability({
|
|
8262
8443
|
calendarEventTemplateId: event30minGroup.id,
|
|
8263
8444
|
from: new Date(Date.now() - 10000),
|
|
8264
8445
|
to: new Date(Date.now() + 3 * 24 * 60 * 60 * 1000),
|
|
8265
8446
|
}); }, { onResult: function (r) { return r.availabilityBlocks.length === 3; } })];
|
|
8266
|
-
case
|
|
8447
|
+
case 34:
|
|
8267
8448
|
_a.sent();
|
|
8268
8449
|
return [4 /*yield*/, async_test('[group booking] prevent double-book same-enduser', function () { return enduserSDK.api.calendar_events.book_appointment({
|
|
8269
8450
|
calendarEventTemplateId: event30minGroup.id,
|
|
8270
8451
|
startTime: new Date(nySlots.availabilityBlocks[1].startTimeInMS),
|
|
8271
8452
|
userId: nySlots.availabilityBlocks[1].userId,
|
|
8272
8453
|
}); }, handleAnyError)];
|
|
8273
|
-
case
|
|
8454
|
+
case 35:
|
|
8274
8455
|
_a.sent();
|
|
8275
8456
|
return [4 /*yield*/, async_test('[group booking] allow other enduser to book', function () { return enduserSDK2.api.calendar_events.book_appointment({
|
|
8276
8457
|
calendarEventTemplateId: event30minGroup.id,
|
|
8277
8458
|
startTime: new Date(nySlots.availabilityBlocks[1].startTimeInMS),
|
|
8278
8459
|
userId: nySlots.availabilityBlocks[1].userId,
|
|
8279
8460
|
}); }, passOnAnyResult)];
|
|
8280
|
-
case
|
|
8461
|
+
case 36:
|
|
8281
8462
|
_a.sent();
|
|
8282
8463
|
return [4 /*yield*/, async_test('[group booking] no more booking allowed', function () { return enduserSDK.api.calendar_events.get_appointment_availability({
|
|
8283
8464
|
calendarEventTemplateId: event30minGroup.id,
|
|
8284
8465
|
from: new Date(Date.now() - 10000),
|
|
8285
8466
|
to: new Date(Date.now() + 3 * 24 * 60 * 60 * 1000),
|
|
8286
8467
|
}); }, { onResult: function (r) { return r.availabilityBlocks.length === 2; } })];
|
|
8287
|
-
case
|
|
8468
|
+
case 37:
|
|
8288
8469
|
_a.sent();
|
|
8289
8470
|
return [4 /*yield*/, async_test('[group booking] other enduser cant book over capacity', function () { return enduserSDK3.api.calendar_events.book_appointment({
|
|
8290
8471
|
calendarEventTemplateId: event30minGroup.id,
|
|
@@ -8293,7 +8474,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8293
8474
|
}); }, handleAnyError)
|
|
8294
8475
|
// test 'multi' flag for booking multiple providers for a given patient
|
|
8295
8476
|
];
|
|
8296
|
-
case
|
|
8477
|
+
case 38:
|
|
8297
8478
|
_a.sent();
|
|
8298
8479
|
// test 'multi' flag for booking multiple providers for a given patient
|
|
8299
8480
|
return [4 /*yield*/, sdk.api.users.updateOne(sdk.userInfo.id, {
|
|
@@ -8308,7 +8489,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8308
8489
|
}, {
|
|
8309
8490
|
replaceObjectFields: true,
|
|
8310
8491
|
})];
|
|
8311
|
-
case
|
|
8492
|
+
case 39:
|
|
8312
8493
|
// test 'multi' flag for booking multiple providers for a given patient
|
|
8313
8494
|
_a.sent();
|
|
8314
8495
|
return [4 /*yield*/, sdkNonAdmin.api.users.updateOne(sdkNonAdmin.userInfo.id, {
|
|
@@ -8323,7 +8504,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8323
8504
|
}, {
|
|
8324
8505
|
replaceObjectFields: true,
|
|
8325
8506
|
})];
|
|
8326
|
-
case
|
|
8507
|
+
case 40:
|
|
8327
8508
|
_a.sent();
|
|
8328
8509
|
return [4 /*yield*/, enduserSDK.api.calendar_events.get_appointment_availability({
|
|
8329
8510
|
calendarEventTemplateId: event30min.id,
|
|
@@ -8332,7 +8513,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8332
8513
|
multi: true,
|
|
8333
8514
|
userIds: [sdk.userInfo.id, sdkNonAdmin.userInfo.id]
|
|
8334
8515
|
})];
|
|
8335
|
-
case
|
|
8516
|
+
case 41:
|
|
8336
8517
|
multiSlots = _a.sent();
|
|
8337
8518
|
assert(multiSlots.availabilityBlocks.length === 2, 'expected 2 slots', 'multi slots are intersection of availability');
|
|
8338
8519
|
return [4 /*yield*/, enduserSDK.api.calendar_events.book_appointment({
|
|
@@ -8341,7 +8522,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8341
8522
|
userId: sdk.userInfo.id,
|
|
8342
8523
|
otherUserIds: [sdkNonAdmin.userInfo.id]
|
|
8343
8524
|
})];
|
|
8344
|
-
case
|
|
8525
|
+
case 42:
|
|
8345
8526
|
bookedMultiAppointment = (_a.sent()).createdEvent;
|
|
8346
8527
|
assert((bookedMultiAppointment.attendees.length === 3
|
|
8347
8528
|
&& bookedMultiAppointment.attendees.filter(function (a) { return a.type === 'enduser'; }).length === 1), 'did not get valid attendees', 'Multi attendees fo multi-event');
|
|
@@ -8350,14 +8531,14 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8350
8531
|
startTime: new Date(multiSlots.availabilityBlocks[0].startTimeInMS),
|
|
8351
8532
|
userId: sdk.userInfo.id,
|
|
8352
8533
|
}); }, handleAnyError)];
|
|
8353
|
-
case
|
|
8534
|
+
case 43:
|
|
8354
8535
|
_a.sent();
|
|
8355
8536
|
return [4 /*yield*/, async_test('booking against conflict prevented other user', function () { return enduserSDK.api.calendar_events.book_appointment({
|
|
8356
8537
|
calendarEventTemplateId: event30min.id,
|
|
8357
8538
|
startTime: new Date(multiSlots.availabilityBlocks[0].startTimeInMS),
|
|
8358
8539
|
userId: sdkNonAdmin.userInfo.id,
|
|
8359
8540
|
}); }, handleAnyError)];
|
|
8360
|
-
case
|
|
8541
|
+
case 44:
|
|
8361
8542
|
_a.sent();
|
|
8362
8543
|
return [4 /*yield*/, async_test('booking against conflict prevented 2 users', function () { return enduserSDK.api.calendar_events.book_appointment({
|
|
8363
8544
|
calendarEventTemplateId: event30min.id,
|
|
@@ -8365,7 +8546,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8365
8546
|
userId: sdk.userInfo.id,
|
|
8366
8547
|
otherUserIds: [sdkNonAdmin.userInfo.id],
|
|
8367
8548
|
}); }, handleAnyError)];
|
|
8368
|
-
case
|
|
8549
|
+
case 45:
|
|
8369
8550
|
_a.sent();
|
|
8370
8551
|
return [4 /*yield*/, sdk.api.calendar_events.createOne({
|
|
8371
8552
|
title: 'conflict',
|
|
@@ -8373,36 +8554,36 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8373
8554
|
durationInMinutes: nySlots.availabilityBlocks[0].durationInMinutes,
|
|
8374
8555
|
attendees: [{ type: 'user', id: sdk.userInfo.id }]
|
|
8375
8556
|
})];
|
|
8376
|
-
case
|
|
8557
|
+
case 46:
|
|
8377
8558
|
conflict2 = _a.sent();
|
|
8378
8559
|
return [4 /*yield*/, sdk.api.calendar_events.updateOne(conflict2.id, { bufferEndMinutes: 30 })];
|
|
8379
|
-
case
|
|
8560
|
+
case 47:
|
|
8380
8561
|
_a.sent();
|
|
8381
8562
|
return [4 /*yield*/, async_test('Event buffer end prevents booking', function () { return enduserSDK.api.calendar_events.book_appointment({
|
|
8382
8563
|
calendarEventTemplateId: event30min.id,
|
|
8383
8564
|
startTime: new Date(nySlots.availabilityBlocks[1].startTimeInMS),
|
|
8384
8565
|
userId: nySlots.availabilityBlocks[1].userId,
|
|
8385
8566
|
}); }, handleAnyError)];
|
|
8386
|
-
case
|
|
8567
|
+
case 48:
|
|
8387
8568
|
_a.sent();
|
|
8388
8569
|
return [4 /*yield*/, sdk.api.calendar_events.updateOne(conflict2.id, { bufferEndMinutes: 0 })];
|
|
8389
|
-
case
|
|
8570
|
+
case 49:
|
|
8390
8571
|
_a.sent();
|
|
8391
8572
|
return [4 /*yield*/, sdk.api.calendar_event_templates.updateOne(event30min.id, { bufferStartMinutes: 30 })];
|
|
8392
|
-
case
|
|
8573
|
+
case 50:
|
|
8393
8574
|
_a.sent();
|
|
8394
8575
|
return [4 /*yield*/, async_test('Template buffer start prevents booking', function () { return enduserSDK.api.calendar_events.book_appointment({
|
|
8395
8576
|
calendarEventTemplateId: event30min.id,
|
|
8396
8577
|
startTime: new Date(nySlots.availabilityBlocks[1].startTimeInMS),
|
|
8397
8578
|
userId: nySlots.availabilityBlocks[1].userId,
|
|
8398
8579
|
}); }, handleAnyError)];
|
|
8399
|
-
case
|
|
8580
|
+
case 51:
|
|
8400
8581
|
_a.sent();
|
|
8401
8582
|
return [4 /*yield*/, sdk.api.calendar_event_templates.updateOne(event30min.id, { bufferStartMinutes: 0 })];
|
|
8402
|
-
case
|
|
8583
|
+
case 52:
|
|
8403
8584
|
_a.sent();
|
|
8404
8585
|
return [4 /*yield*/, sdk.api.calendar_events.deleteOne(conflict2.id)];
|
|
8405
|
-
case
|
|
8586
|
+
case 53:
|
|
8406
8587
|
_a.sent();
|
|
8407
8588
|
return [4 /*yield*/, sdk.api.calendar_events.createOne({
|
|
8408
8589
|
title: 'conflict',
|
|
@@ -8410,23 +8591,23 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8410
8591
|
durationInMinutes: nySlots.availabilityBlocks[1].durationInMinutes,
|
|
8411
8592
|
attendees: [{ type: 'user', id: sdk.userInfo.id }]
|
|
8412
8593
|
})];
|
|
8413
|
-
case
|
|
8594
|
+
case 54:
|
|
8414
8595
|
conflict3 = _a.sent();
|
|
8415
8596
|
return [4 /*yield*/, sdk.api.calendar_events.updateOne(conflict3.id, { bufferStartMinutes: 30 })];
|
|
8416
|
-
case
|
|
8597
|
+
case 55:
|
|
8417
8598
|
_a.sent();
|
|
8418
8599
|
return [4 /*yield*/, async_test('Event buffer start prevents booking', function () { return enduserSDK.api.calendar_events.book_appointment({
|
|
8419
8600
|
calendarEventTemplateId: event30min.id,
|
|
8420
8601
|
startTime: new Date(nySlots.availabilityBlocks[0].startTimeInMS),
|
|
8421
8602
|
userId: nySlots.availabilityBlocks[0].userId,
|
|
8422
8603
|
}); }, handleAnyError)];
|
|
8423
|
-
case
|
|
8604
|
+
case 56:
|
|
8424
8605
|
_a.sent();
|
|
8425
8606
|
return [4 /*yield*/, sdk.api.calendar_events.updateOne(conflict3.id, { bufferStartMinutes: 0 })];
|
|
8426
|
-
case
|
|
8607
|
+
case 57:
|
|
8427
8608
|
_a.sent();
|
|
8428
8609
|
return [4 /*yield*/, sdk.api.calendar_event_templates.updateOne(event30min.id, { bufferEndMinutes: 30 })];
|
|
8429
|
-
case
|
|
8610
|
+
case 58:
|
|
8430
8611
|
_a.sent();
|
|
8431
8612
|
return [4 /*yield*/, async_test('Template buffer end prevents booking', function () { return enduserSDK.api.calendar_events.book_appointment({
|
|
8432
8613
|
calendarEventTemplateId: event30min.id,
|
|
@@ -8435,17 +8616,17 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8435
8616
|
}); }, handleAnyError)
|
|
8436
8617
|
// Test reschedule functionality with replaceHostOnReschedule setting
|
|
8437
8618
|
];
|
|
8438
|
-
case
|
|
8619
|
+
case 59:
|
|
8439
8620
|
_a.sent();
|
|
8440
8621
|
// Test reschedule functionality with replaceHostOnReschedule setting
|
|
8441
8622
|
return [4 /*yield*/, sdk.api.calendar_event_templates.updateOne(event30min.id, { bufferEndMinutes: 0 })];
|
|
8442
|
-
case
|
|
8623
|
+
case 60:
|
|
8443
8624
|
// Test reschedule functionality with replaceHostOnReschedule setting
|
|
8444
8625
|
_a.sent();
|
|
8445
8626
|
return [4 /*yield*/, sdk.api.calendar_events.deleteOne(conflict3.id)
|
|
8446
8627
|
// Setup fresh availability for reschedule tests
|
|
8447
8628
|
];
|
|
8448
|
-
case
|
|
8629
|
+
case 61:
|
|
8449
8630
|
_a.sent();
|
|
8450
8631
|
// Setup fresh availability for reschedule tests
|
|
8451
8632
|
return [4 /*yield*/, sdk.api.users.updateOne(sdk.userInfo.id, {
|
|
@@ -8460,7 +8641,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8460
8641
|
}, {
|
|
8461
8642
|
replaceObjectFields: true,
|
|
8462
8643
|
})];
|
|
8463
|
-
case
|
|
8644
|
+
case 62:
|
|
8464
8645
|
// Setup fresh availability for reschedule tests
|
|
8465
8646
|
_a.sent();
|
|
8466
8647
|
return [4 /*yield*/, sdkNonAdmin.api.users.updateOne(sdkNonAdmin.userInfo.id, {
|
|
@@ -8475,7 +8656,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8475
8656
|
}, {
|
|
8476
8657
|
replaceObjectFields: true,
|
|
8477
8658
|
})];
|
|
8478
|
-
case
|
|
8659
|
+
case 63:
|
|
8479
8660
|
_a.sent();
|
|
8480
8661
|
return [4 /*yield*/, enduserSDK.api.calendar_events.get_appointment_availability({
|
|
8481
8662
|
calendarEventTemplateId: event30min.id,
|
|
@@ -8486,7 +8667,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8486
8667
|
})
|
|
8487
8668
|
// Test 1: replaceHostOnReschedule: false (old behavior - preserve all attendees)
|
|
8488
8669
|
];
|
|
8489
|
-
case
|
|
8670
|
+
case 64:
|
|
8490
8671
|
rescheduleSlots = _a.sent();
|
|
8491
8672
|
return [4 /*yield*/, sdk.api.calendar_event_templates.createOne({
|
|
8492
8673
|
title: 'Preserve Hosts Template',
|
|
@@ -8495,7 +8676,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8495
8676
|
confirmationSMSDisabled: true,
|
|
8496
8677
|
replaceHostOnReschedule: false, // explicitly set to false
|
|
8497
8678
|
})];
|
|
8498
|
-
case
|
|
8679
|
+
case 65:
|
|
8499
8680
|
templatePreserveHosts = _a.sent();
|
|
8500
8681
|
return [4 /*yield*/, enduserSDK.api.calendar_events.book_appointment({
|
|
8501
8682
|
calendarEventTemplateId: templatePreserveHosts.id,
|
|
@@ -8503,7 +8684,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8503
8684
|
userId: sdk.userInfo.id,
|
|
8504
8685
|
otherUserIds: [sdkNonAdmin.userInfo.id], // book with both hosts
|
|
8505
8686
|
})];
|
|
8506
|
-
case
|
|
8687
|
+
case 66:
|
|
8507
8688
|
originalMultiHostAppt = (_a.sent()).createdEvent;
|
|
8508
8689
|
assert(originalMultiHostAppt.attendees.filter(function (a) { return a.type === 'user'; }).length === 2, 'Original appointment should have 2 user attendees', 'Original multi-host appointment created');
|
|
8509
8690
|
return [4 /*yield*/, enduserSDK.api.calendar_events.book_appointment({
|
|
@@ -8512,7 +8693,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8512
8693
|
startTime: new Date(rescheduleSlots.availabilityBlocks[1].startTimeInMS),
|
|
8513
8694
|
userId: sdkNonAdmin.userInfo.id, // reschedule with different primary host
|
|
8514
8695
|
})];
|
|
8515
|
-
case
|
|
8696
|
+
case 67:
|
|
8516
8697
|
rescheduledPreserveHosts = (_a.sent()).createdEvent;
|
|
8517
8698
|
return [4 /*yield*/, async_test('[reschedule] replaceHostOnReschedule: false preserves all user attendees', function () { return sdk.api.calendar_events.getOne(rescheduledPreserveHosts.id); }, { onResult: function (event) {
|
|
8518
8699
|
var userAttendees = event.attendees.filter(function (a) { return a.type === 'user'; });
|
|
@@ -8534,7 +8715,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8534
8715
|
} })
|
|
8535
8716
|
// Test 2: replaceHostOnReschedule: true (new behavior - replace hosts)
|
|
8536
8717
|
];
|
|
8537
|
-
case
|
|
8718
|
+
case 68:
|
|
8538
8719
|
_a.sent();
|
|
8539
8720
|
return [4 /*yield*/, sdk.api.calendar_event_templates.createOne({
|
|
8540
8721
|
title: 'Replace Hosts Template',
|
|
@@ -8543,7 +8724,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8543
8724
|
confirmationSMSDisabled: true,
|
|
8544
8725
|
replaceHostOnReschedule: true, // new default behavior
|
|
8545
8726
|
})];
|
|
8546
|
-
case
|
|
8727
|
+
case 69:
|
|
8547
8728
|
templateReplaceHosts = _a.sent();
|
|
8548
8729
|
return [4 /*yield*/, enduserSDK.api.calendar_events.book_appointment({
|
|
8549
8730
|
calendarEventTemplateId: templateReplaceHosts.id,
|
|
@@ -8551,7 +8732,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8551
8732
|
userId: sdk.userInfo.id,
|
|
8552
8733
|
otherUserIds: [sdkNonAdmin.userInfo.id], // book with both hosts
|
|
8553
8734
|
})];
|
|
8554
|
-
case
|
|
8735
|
+
case 70:
|
|
8555
8736
|
originalForReplace = (_a.sent()).createdEvent;
|
|
8556
8737
|
assert(originalForReplace.attendees.filter(function (a) { return a.type === 'user'; }).length === 2, 'Original appointment should have 2 user attendees', 'Original multi-host appointment for replace test created');
|
|
8557
8738
|
return [4 /*yield*/, enduserSDK.api.calendar_events.book_appointment({
|
|
@@ -8560,7 +8741,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8560
8741
|
startTime: new Date(rescheduleSlots.availabilityBlocks[3].startTimeInMS),
|
|
8561
8742
|
userId: sdkNonAdmin.userInfo.id, // reschedule with only this host
|
|
8562
8743
|
})];
|
|
8563
|
-
case
|
|
8744
|
+
case 71:
|
|
8564
8745
|
rescheduledReplaceHosts = (_a.sent()).createdEvent;
|
|
8565
8746
|
return [4 /*yield*/, async_test('[reschedule] replaceHostOnReschedule: true replaces user attendees with new host only', function () { return sdk.api.calendar_events.getOne(rescheduledReplaceHosts.id); }, { onResult: function (event) {
|
|
8566
8747
|
var userAttendees = event.attendees.filter(function (a) { return a.type === 'user'; });
|
|
@@ -8580,7 +8761,7 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8580
8761
|
}
|
|
8581
8762
|
return true;
|
|
8582
8763
|
} })];
|
|
8583
|
-
case
|
|
8764
|
+
case 72:
|
|
8584
8765
|
_a.sent();
|
|
8585
8766
|
return [4 /*yield*/, async_test('[reschedule] replaceHostOnReschedule: true preserves enduser attendees', function () { return sdk.api.calendar_events.getOne(rescheduledReplaceHosts.id); }, { onResult: function (event) {
|
|
8586
8767
|
var enduserAttendees = event.attendees.filter(function (a) { return a.type === 'enduser'; });
|
|
@@ -8596,31 +8777,88 @@ export var self_serve_appointment_booking_tests = function () { return __awaiter
|
|
|
8596
8777
|
} })
|
|
8597
8778
|
// Test 3: Verify old event is marked as rescheduled
|
|
8598
8779
|
];
|
|
8599
|
-
case
|
|
8780
|
+
case 73:
|
|
8600
8781
|
_a.sent();
|
|
8601
8782
|
// Test 3: Verify old event is marked as rescheduled
|
|
8602
|
-
return [4 /*yield*/, async_test('[reschedule] original event marked as rescheduled', function () { return sdk.api.calendar_events.getOne(originalForReplace.id); }, { onResult: function (event) { return !!event.rescheduledAt; } })
|
|
8603
|
-
|
|
8783
|
+
return [4 /*yield*/, async_test('[reschedule] original event marked as rescheduled', function () { return sdk.api.calendar_events.getOne(originalForReplace.id); }, { onResult: function (event) { return !!event.rescheduledAt; } })
|
|
8784
|
+
// videoIntegration passthrough from template to booked event (Twilio fix + Zoom regression guard)
|
|
8785
|
+
// set up fresh, dedicated availability so this doesn't interfere with the slot-accounting tests above
|
|
8786
|
+
];
|
|
8787
|
+
case 74:
|
|
8604
8788
|
// Test 3: Verify old event is marked as rescheduled
|
|
8605
8789
|
_a.sent();
|
|
8790
|
+
// videoIntegration passthrough from template to booked event (Twilio fix + Zoom regression guard)
|
|
8791
|
+
// set up fresh, dedicated availability so this doesn't interfere with the slot-accounting tests above
|
|
8792
|
+
return [4 /*yield*/, sdk.api.users.updateOne(sdk.userInfo.id, {
|
|
8793
|
+
weeklyAvailabilities: [
|
|
8794
|
+
{
|
|
8795
|
+
dayOfWeekStartingSundayIndexedByZero: dayOfWeekStartingSundayIndexedByZero,
|
|
8796
|
+
startTimeInMinutes: 60 * 9,
|
|
8797
|
+
endTimeInMinutes: 60 * 11, // 11am,
|
|
8798
|
+
},
|
|
8799
|
+
],
|
|
8800
|
+
timezone: 'America/New_York',
|
|
8801
|
+
}, {
|
|
8802
|
+
replaceObjectFields: true,
|
|
8803
|
+
})];
|
|
8804
|
+
case 75:
|
|
8805
|
+
// videoIntegration passthrough from template to booked event (Twilio fix + Zoom regression guard)
|
|
8806
|
+
// set up fresh, dedicated availability so this doesn't interfere with the slot-accounting tests above
|
|
8807
|
+
_a.sent();
|
|
8808
|
+
return [4 /*yield*/, enduserSDK.api.calendar_events.get_appointment_availability({
|
|
8809
|
+
calendarEventTemplateId: event30minTwilio.id,
|
|
8810
|
+
from: new Date(Date.now() - 10000),
|
|
8811
|
+
to: new Date(Date.now() + 3 * 24 * 60 * 60 * 1000),
|
|
8812
|
+
userIds: [sdk.userInfo.id],
|
|
8813
|
+
})];
|
|
8814
|
+
case 76:
|
|
8815
|
+
twilioSlots = _a.sent();
|
|
8816
|
+
return [4 /*yield*/, enduserSDK.api.calendar_events.book_appointment({
|
|
8817
|
+
calendarEventTemplateId: event30minTwilio.id,
|
|
8818
|
+
startTime: new Date(twilioSlots.availabilityBlocks[0].startTimeInMS),
|
|
8819
|
+
userId: sdk.userInfo.id,
|
|
8820
|
+
})];
|
|
8821
|
+
case 77:
|
|
8822
|
+
bookedTwilioAppointment = (_a.sent()).createdEvent;
|
|
8823
|
+
assert(bookedTwilioAppointment.videoIntegration === 'Twilio', 'Twilio videoIntegration not propagated to booked event', 'Twilio videoIntegration propagated to booked event');
|
|
8824
|
+
return [4 /*yield*/, enduserSDK.api.calendar_events.get_appointment_availability({
|
|
8825
|
+
calendarEventTemplateId: event30minZoom.id,
|
|
8826
|
+
from: new Date(Date.now() - 10000),
|
|
8827
|
+
to: new Date(Date.now() + 3 * 24 * 60 * 60 * 1000),
|
|
8828
|
+
userIds: [sdk.userInfo.id],
|
|
8829
|
+
})];
|
|
8830
|
+
case 78:
|
|
8831
|
+
zoomSlots = _a.sent();
|
|
8832
|
+
return [4 /*yield*/, enduserSDK.api.calendar_events.book_appointment({
|
|
8833
|
+
calendarEventTemplateId: event30minZoom.id,
|
|
8834
|
+
startTime: new Date(zoomSlots.availabilityBlocks[0].startTimeInMS),
|
|
8835
|
+
userId: sdk.userInfo.id,
|
|
8836
|
+
})];
|
|
8837
|
+
case 79:
|
|
8838
|
+
bookedZoomAppointment = (_a.sent()).createdEvent;
|
|
8839
|
+
assert(bookedZoomAppointment.videoIntegration === 'Zoom', 'Zoom videoIntegration not propagated to booked event', 'Zoom videoIntegration propagated to booked event');
|
|
8606
8840
|
return [4 /*yield*/, Promise.all([
|
|
8607
8841
|
sdk.api.endusers.deleteOne(e1.id),
|
|
8608
8842
|
sdk.api.endusers.deleteOne(e2.id),
|
|
8609
8843
|
sdk.api.endusers.deleteOne(e3.id),
|
|
8610
8844
|
sdk.api.calendar_event_templates.deleteOne(event30min.id),
|
|
8611
8845
|
sdk.api.calendar_event_templates.deleteOne(event30minGroup.id),
|
|
8846
|
+
sdk.api.calendar_event_templates.deleteOne(event30minTwilio.id),
|
|
8847
|
+
sdk.api.calendar_event_templates.deleteOne(event30minZoom.id),
|
|
8612
8848
|
sdk.api.calendar_event_templates.deleteOne(event15min.id),
|
|
8613
8849
|
sdk.api.calendar_event_templates.deleteOne(templatePreserveHosts.id),
|
|
8614
8850
|
sdk.api.calendar_event_templates.deleteOne(templateReplaceHosts.id),
|
|
8615
8851
|
sdk.api.calendar_events.deleteOne(bookedAppointment.id),
|
|
8616
8852
|
sdk.api.calendar_events.deleteOne(bookedMultiAppointment.id),
|
|
8853
|
+
sdk.api.calendar_events.deleteOne(bookedTwilioAppointment.id),
|
|
8854
|
+
sdk.api.calendar_events.deleteOne(bookedZoomAppointment.id),
|
|
8617
8855
|
sdk.api.calendar_events.deleteOne(groupEvent.id),
|
|
8618
8856
|
sdk.api.calendar_events.deleteOne(originalMultiHostAppt.id),
|
|
8619
8857
|
sdk.api.calendar_events.deleteOne(rescheduledPreserveHosts.id),
|
|
8620
8858
|
sdk.api.calendar_events.deleteOne(originalForReplace.id),
|
|
8621
8859
|
sdk.api.calendar_events.deleteOne(rescheduledReplaceHosts.id),
|
|
8622
8860
|
])];
|
|
8623
|
-
case
|
|
8861
|
+
case 80:
|
|
8624
8862
|
_a.sent();
|
|
8625
8863
|
return [2 /*return*/];
|
|
8626
8864
|
}
|
|
@@ -16692,7 +16930,7 @@ var ip_address_form_tests = function () { return __awaiter(void 0, void 0, void
|
|
|
16692
16930
|
assert(truncate_string(null, { length: 4, showEllipsis: false }) === '', 'truncate doesnt work for non string', 'trucate works for non-string');
|
|
16693
16931
|
_l.label = 2;
|
|
16694
16932
|
case 2:
|
|
16695
|
-
_l.trys.push([2,
|
|
16933
|
+
_l.trys.push([2, 155, , 156]);
|
|
16696
16934
|
get_next_reminder_timestamp_tests();
|
|
16697
16935
|
form_conditional_logic_tests();
|
|
16698
16936
|
return [4 /*yield*/, test_weighted_round_robin()];
|
|
@@ -16923,333 +17161,336 @@ var ip_address_form_tests = function () { return __awaiter(void 0, void 0, void
|
|
|
16923
17161
|
return [4 /*yield*/, cross_org_api_key_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16924
17162
|
case 46:
|
|
16925
17163
|
_l.sent();
|
|
16926
|
-
return [4 /*yield*/,
|
|
17164
|
+
return [4 /*yield*/, organization_api_keys_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16927
17165
|
case 47:
|
|
16928
17166
|
_l.sent();
|
|
16929
|
-
return [4 /*yield*/,
|
|
17167
|
+
return [4 /*yield*/, organization_settings_duplicates_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16930
17168
|
case 48:
|
|
16931
17169
|
_l.sent();
|
|
16932
|
-
return [4 /*yield*/,
|
|
17170
|
+
return [4 /*yield*/, enduser_session_invalidation_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16933
17171
|
case 49:
|
|
16934
17172
|
_l.sent();
|
|
16935
|
-
return [4 /*yield*/,
|
|
17173
|
+
return [4 /*yield*/, chats_analytics_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16936
17174
|
case 50:
|
|
16937
17175
|
_l.sent();
|
|
16938
|
-
return [4 /*yield*/,
|
|
17176
|
+
return [4 /*yield*/, field_redaction_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16939
17177
|
case 51:
|
|
16940
17178
|
_l.sent();
|
|
16941
|
-
return [4 /*yield*/,
|
|
17179
|
+
return [4 /*yield*/, form_submitted_trigger_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16942
17180
|
case 52:
|
|
16943
17181
|
_l.sent();
|
|
16944
|
-
return [4 /*yield*/,
|
|
17182
|
+
return [4 /*yield*/, date_string_validation_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16945
17183
|
case 53:
|
|
16946
17184
|
_l.sent();
|
|
16947
|
-
return [4 /*yield*/,
|
|
17185
|
+
return [4 /*yield*/, openloop_webhooks_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16948
17186
|
case 54:
|
|
16949
17187
|
_l.sent();
|
|
16950
|
-
return [4 /*yield*/,
|
|
17188
|
+
return [4 /*yield*/, mdi_webhooks_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16951
17189
|
case 55:
|
|
16952
17190
|
_l.sent();
|
|
16953
|
-
return [4 /*yield*/,
|
|
17191
|
+
return [4 /*yield*/, integrations_redacted_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16954
17192
|
case 56:
|
|
16955
17193
|
_l.sent();
|
|
16956
|
-
return [4 /*yield*/,
|
|
17194
|
+
return [4 /*yield*/, mdb_sort_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16957
17195
|
case 57:
|
|
16958
17196
|
_l.sent();
|
|
16959
|
-
return [4 /*yield*/,
|
|
17197
|
+
return [4 /*yield*/, search_tests()];
|
|
16960
17198
|
case 58:
|
|
16961
17199
|
_l.sent();
|
|
16962
|
-
return [4 /*yield*/,
|
|
17200
|
+
return [4 /*yield*/, time_tracks_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16963
17201
|
case 59:
|
|
16964
17202
|
_l.sent();
|
|
16965
|
-
return [4 /*yield*/,
|
|
17203
|
+
return [4 /*yield*/, time_tracks_historical_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16966
17204
|
case 60:
|
|
16967
17205
|
_l.sent();
|
|
16968
|
-
return [4 /*yield*/,
|
|
17206
|
+
return [4 /*yield*/, time_tracks_correction_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16969
17207
|
case 61:
|
|
16970
17208
|
_l.sent();
|
|
16971
|
-
return [4 /*yield*/,
|
|
17209
|
+
return [4 /*yield*/, time_tracks_review_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16972
17210
|
case 62:
|
|
16973
17211
|
_l.sent();
|
|
16974
|
-
return [4 /*yield*/,
|
|
17212
|
+
return [4 /*yield*/, time_tracks_lock_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16975
17213
|
case 63:
|
|
16976
17214
|
_l.sent();
|
|
16977
|
-
return [4 /*yield*/,
|
|
17215
|
+
return [4 /*yield*/, time_tracks_edge_case_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16978
17216
|
case 64:
|
|
16979
17217
|
_l.sent();
|
|
16980
|
-
return [4 /*yield*/,
|
|
17218
|
+
return [4 /*yield*/, time_tracks_resubmit_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16981
17219
|
case 65:
|
|
16982
17220
|
_l.sent();
|
|
16983
|
-
return [4 /*yield*/,
|
|
17221
|
+
return [4 /*yield*/, time_tracks_appointment_duration_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16984
17222
|
case 66:
|
|
16985
17223
|
_l.sent();
|
|
16986
|
-
return [4 /*yield*/,
|
|
17224
|
+
return [4 /*yield*/, calendar_event_limits_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16987
17225
|
case 67:
|
|
16988
17226
|
_l.sent();
|
|
16989
|
-
return [4 /*yield*/,
|
|
17227
|
+
return [4 /*yield*/, get_some_projection_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16990
17228
|
case 68:
|
|
16991
17229
|
_l.sent();
|
|
16992
|
-
return [4 /*yield*/,
|
|
17230
|
+
return [4 /*yield*/, elation_user_id_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16993
17231
|
case 69:
|
|
16994
17232
|
_l.sent();
|
|
16995
|
-
return [4 /*yield*/,
|
|
17233
|
+
return [4 /*yield*/, custom_dashboards_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16996
17234
|
case 70:
|
|
16997
17235
|
_l.sent();
|
|
16998
|
-
return [4 /*yield*/,
|
|
17236
|
+
return [4 /*yield*/, concurrent_build_threads_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
16999
17237
|
case 71:
|
|
17000
17238
|
_l.sent();
|
|
17001
|
-
return [4 /*yield*/,
|
|
17239
|
+
return [4 /*yield*/, custom_aggregation_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17002
17240
|
case 72:
|
|
17003
17241
|
_l.sent();
|
|
17004
|
-
return [4 /*yield*/,
|
|
17242
|
+
return [4 /*yield*/, no_access_permission_checks_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17005
17243
|
case 73:
|
|
17006
17244
|
_l.sent();
|
|
17007
|
-
return [4 /*yield*/,
|
|
17245
|
+
return [4 /*yield*/, enduser_tests()];
|
|
17008
17246
|
case 74:
|
|
17009
17247
|
_l.sent();
|
|
17010
|
-
return [4 /*yield*/,
|
|
17248
|
+
return [4 /*yield*/, form_started_trigger_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17011
17249
|
case 75:
|
|
17012
17250
|
_l.sent();
|
|
17013
|
-
return [4 /*yield*/,
|
|
17251
|
+
return [4 /*yield*/, load_team_chat_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17014
17252
|
case 76:
|
|
17015
17253
|
_l.sent();
|
|
17016
|
-
return [4 /*yield*/,
|
|
17254
|
+
return [4 /*yield*/, ai_conversations_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17017
17255
|
case 77:
|
|
17018
17256
|
_l.sent();
|
|
17019
|
-
return [4 /*yield*/,
|
|
17257
|
+
return [4 /*yield*/, inbox_thread_assignment_updates_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17020
17258
|
case 78:
|
|
17021
17259
|
_l.sent();
|
|
17022
|
-
return [4 /*yield*/,
|
|
17260
|
+
return [4 /*yield*/, inbox_thread_draft_scheduled_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17023
17261
|
case 79:
|
|
17024
17262
|
_l.sent();
|
|
17025
|
-
return [4 /*yield*/,
|
|
17263
|
+
return [4 /*yield*/, load_threads_autobuild_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17026
17264
|
case 80:
|
|
17027
17265
|
_l.sent();
|
|
17028
|
-
return [4 /*yield*/,
|
|
17266
|
+
return [4 /*yield*/, inbox_threads_new_fields_tests()];
|
|
17029
17267
|
case 81:
|
|
17030
17268
|
_l.sent();
|
|
17031
|
-
return [4 /*yield*/,
|
|
17269
|
+
return [4 /*yield*/, auto_merge_form_submission_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17032
17270
|
case 82:
|
|
17033
17271
|
_l.sent();
|
|
17034
|
-
return [4 /*yield*/,
|
|
17272
|
+
return [4 /*yield*/, threadKeyTests()];
|
|
17035
17273
|
case 83:
|
|
17036
17274
|
_l.sent();
|
|
17037
|
-
return [4 /*yield*/,
|
|
17275
|
+
return [4 /*yield*/, managed_content_enduser_access_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17038
17276
|
case 84:
|
|
17039
17277
|
_l.sent();
|
|
17040
|
-
return [4 /*yield*/,
|
|
17278
|
+
return [4 /*yield*/, managed_content_file_access_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17041
17279
|
case 85:
|
|
17042
17280
|
_l.sent();
|
|
17043
|
-
return [4 /*yield*/,
|
|
17281
|
+
return [4 /*yield*/, afteraction_day_of_month_delay_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17044
17282
|
case 86:
|
|
17045
17283
|
_l.sent();
|
|
17046
|
-
return [4 /*yield*/,
|
|
17284
|
+
return [4 /*yield*/, bulk_assignment_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17047
17285
|
case 87:
|
|
17048
17286
|
_l.sent();
|
|
17049
|
-
return [4 /*yield*/,
|
|
17287
|
+
return [4 /*yield*/, formsort_tests()];
|
|
17050
17288
|
case 88:
|
|
17051
17289
|
_l.sent();
|
|
17052
|
-
return [4 /*yield*/,
|
|
17290
|
+
return [4 /*yield*/, self_serve_appointment_booking_tests()];
|
|
17053
17291
|
case 89:
|
|
17054
17292
|
_l.sent();
|
|
17055
|
-
return [4 /*yield*/,
|
|
17293
|
+
return [4 /*yield*/, test_ticket_automation_assignment_and_optimization()];
|
|
17056
17294
|
case 90:
|
|
17057
17295
|
_l.sent();
|
|
17058
|
-
return [4 /*yield*/,
|
|
17296
|
+
return [4 /*yield*/, monthly_availability_restrictions_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17059
17297
|
case 91:
|
|
17060
17298
|
_l.sent();
|
|
17061
|
-
return [4 /*yield*/,
|
|
17299
|
+
return [4 /*yield*/, journey_error_branching_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17062
17300
|
case 92:
|
|
17063
17301
|
_l.sent();
|
|
17064
|
-
return [4 /*yield*/,
|
|
17302
|
+
return [4 /*yield*/, message_assignment_trigger_tests({ sdk: sdk })];
|
|
17065
17303
|
case 93:
|
|
17066
17304
|
_l.sent();
|
|
17067
|
-
return [4 /*yield*/,
|
|
17305
|
+
return [4 /*yield*/, inbox_threads_building_tests()];
|
|
17068
17306
|
case 94:
|
|
17069
17307
|
_l.sent();
|
|
17070
|
-
return [4 /*yield*/,
|
|
17308
|
+
return [4 /*yield*/, inbox_threads_loading_tests()];
|
|
17071
17309
|
case 95:
|
|
17072
17310
|
_l.sent();
|
|
17073
|
-
return [4 /*yield*/,
|
|
17311
|
+
return [4 /*yield*/, load_inbox_data_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17074
17312
|
case 96:
|
|
17075
17313
|
_l.sent();
|
|
17076
|
-
return [4 /*yield*/,
|
|
17314
|
+
return [4 /*yield*/, enduser_observations_acknowledge_tests({ sdk: sdk, sdkNonAdmin: sdkNonAdmin })];
|
|
17077
17315
|
case 97:
|
|
17078
17316
|
_l.sent();
|
|
17079
|
-
return [4 /*yield*/,
|
|
17317
|
+
return [4 /*yield*/, create_user_notifications_trigger_tests({ sdk: sdk })];
|
|
17080
17318
|
case 98:
|
|
17081
17319
|
_l.sent();
|
|
17082
|
-
return [4 /*yield*/,
|
|
17320
|
+
return [4 /*yield*/, group_mms_active_tests()];
|
|
17083
17321
|
case 99:
|
|
17084
17322
|
_l.sent();
|
|
17085
|
-
return [4 /*yield*/,
|
|
17323
|
+
return [4 /*yield*/, auto_reply_tests()];
|
|
17086
17324
|
case 100:
|
|
17087
17325
|
_l.sent();
|
|
17088
|
-
return [4 /*yield*/,
|
|
17326
|
+
return [4 /*yield*/, relationships_tests()];
|
|
17089
17327
|
case 101:
|
|
17090
17328
|
_l.sent();
|
|
17091
|
-
return [4 /*yield*/,
|
|
17329
|
+
return [4 /*yield*/, rate_limit_tests()];
|
|
17092
17330
|
case 102:
|
|
17093
17331
|
_l.sent();
|
|
17094
|
-
return [4 /*yield*/,
|
|
17332
|
+
return [4 /*yield*/, ip_address_form_tests()];
|
|
17095
17333
|
case 103:
|
|
17096
17334
|
_l.sent();
|
|
17097
|
-
return [4 /*yield*/,
|
|
17335
|
+
return [4 /*yield*/, bulk_update_tests()];
|
|
17098
17336
|
case 104:
|
|
17099
17337
|
_l.sent();
|
|
17100
|
-
return [4 /*yield*/,
|
|
17338
|
+
return [4 /*yield*/, calendar_events_bulk_update_tests({ sdk: sdk })];
|
|
17101
17339
|
case 105:
|
|
17102
17340
|
_l.sent();
|
|
17103
|
-
return [4 /*yield*/,
|
|
17341
|
+
return [4 /*yield*/, cancel_upcoming_appointments_journey_action_test()];
|
|
17104
17342
|
case 106:
|
|
17343
|
+
_l.sent();
|
|
17344
|
+
return [4 /*yield*/, multi_tenant_tests()]; // should come right after setup tests
|
|
17345
|
+
case 107:
|
|
17105
17346
|
_l.sent(); // should come right after setup tests
|
|
17106
17347
|
return [4 /*yield*/, sync_tests_with_access_tags()]; // should come directly after setup to avoid extra sync values
|
|
17107
|
-
case
|
|
17348
|
+
case 108:
|
|
17108
17349
|
_l.sent(); // should come directly after setup to avoid extra sync values
|
|
17109
17350
|
return [4 /*yield*/, sync_tests()]; // should come directly after setup to avoid extra sync values
|
|
17110
|
-
case
|
|
17351
|
+
case 109:
|
|
17111
17352
|
_l.sent(); // should come directly after setup to avoid extra sync values
|
|
17112
17353
|
return [4 /*yield*/, get_templated_message_tests()];
|
|
17113
|
-
case
|
|
17354
|
+
case 110:
|
|
17114
17355
|
_l.sent();
|
|
17115
17356
|
return [4 /*yield*/, updatedAt_tests()];
|
|
17116
|
-
case
|
|
17357
|
+
case 111:
|
|
17117
17358
|
_l.sent();
|
|
17118
17359
|
return [4 /*yield*/, file_source_tests()];
|
|
17119
|
-
case
|
|
17360
|
+
case 112:
|
|
17120
17361
|
_l.sent();
|
|
17121
17362
|
return [4 /*yield*/, enduser_access_tags_tests()];
|
|
17122
|
-
case
|
|
17363
|
+
case 113:
|
|
17123
17364
|
_l.sent();
|
|
17124
17365
|
return [4 /*yield*/, enduserAccessTests()];
|
|
17125
|
-
case
|
|
17366
|
+
case 114:
|
|
17126
17367
|
_l.sent();
|
|
17127
17368
|
return [4 /*yield*/, test_form_response_search()];
|
|
17128
|
-
case
|
|
17369
|
+
case 115:
|
|
17129
17370
|
_l.sent();
|
|
17130
17371
|
return [4 /*yield*/, date_parsing_tests()];
|
|
17131
|
-
case
|
|
17372
|
+
case 116:
|
|
17132
17373
|
_l.sent();
|
|
17133
17374
|
return [4 /*yield*/, fromEmailOverride_tests()];
|
|
17134
|
-
case
|
|
17375
|
+
case 117:
|
|
17135
17376
|
_l.sent();
|
|
17136
17377
|
return [4 /*yield*/, ticket_tests()];
|
|
17137
|
-
case
|
|
17378
|
+
case 118:
|
|
17138
17379
|
_l.sent();
|
|
17139
17380
|
return [4 /*yield*/, uniqueness_tests()];
|
|
17140
|
-
case
|
|
17381
|
+
case 119:
|
|
17141
17382
|
_l.sent();
|
|
17142
17383
|
return [4 /*yield*/, enduser_orders_tests()];
|
|
17143
|
-
case
|
|
17384
|
+
case 120:
|
|
17144
17385
|
_l.sent();
|
|
17145
17386
|
return [4 /*yield*/, calendar_event_care_team_tests()];
|
|
17146
|
-
case
|
|
17387
|
+
case 121:
|
|
17147
17388
|
_l.sent();
|
|
17148
17389
|
return [4 /*yield*/, merge_enduser_tests()];
|
|
17149
|
-
case
|
|
17390
|
+
case 122:
|
|
17150
17391
|
_l.sent();
|
|
17151
17392
|
return [4 /*yield*/, input_modifier_tests()];
|
|
17152
|
-
case
|
|
17393
|
+
case 123:
|
|
17153
17394
|
_l.sent();
|
|
17154
17395
|
return [4 /*yield*/, switch_to_related_contacts_tests()];
|
|
17155
|
-
case
|
|
17396
|
+
case 124:
|
|
17156
17397
|
_l.sent();
|
|
17157
17398
|
return [4 /*yield*/, redaction_tests()];
|
|
17158
|
-
case
|
|
17399
|
+
case 125:
|
|
17159
17400
|
_l.sent();
|
|
17160
17401
|
return [4 /*yield*/, no_chained_triggers_tests()];
|
|
17161
|
-
case
|
|
17402
|
+
case 126:
|
|
17162
17403
|
_l.sent();
|
|
17163
17404
|
return [4 /*yield*/, mdb_filter_tests()];
|
|
17164
|
-
case
|
|
17405
|
+
case 127:
|
|
17165
17406
|
_l.sent();
|
|
17166
17407
|
return [4 /*yield*/, superadmin_tests()];
|
|
17167
|
-
case
|
|
17408
|
+
case 128:
|
|
17168
17409
|
_l.sent();
|
|
17169
17410
|
return [4 /*yield*/, ticket_queue_tests()];
|
|
17170
|
-
case
|
|
17411
|
+
case 129:
|
|
17171
17412
|
_l.sent();
|
|
17172
17413
|
return [4 /*yield*/, vital_trigger_tests()];
|
|
17173
|
-
case
|
|
17414
|
+
case 130:
|
|
17174
17415
|
_l.sent();
|
|
17175
17416
|
return [4 /*yield*/, close_reasons_no_duplicates_tests()];
|
|
17176
|
-
case
|
|
17417
|
+
case 131:
|
|
17177
17418
|
_l.sent();
|
|
17178
17419
|
return [4 /*yield*/, register_as_enduser_tests()];
|
|
17179
|
-
case
|
|
17420
|
+
case 132:
|
|
17180
17421
|
_l.sent();
|
|
17181
17422
|
return [4 /*yield*/, lockout_tests()];
|
|
17182
|
-
case
|
|
17423
|
+
case 133:
|
|
17183
17424
|
_l.sent();
|
|
17184
17425
|
return [4 /*yield*/, delete_user_tests()
|
|
17185
17426
|
// await test_send_with_template()
|
|
17186
17427
|
];
|
|
17187
|
-
case
|
|
17428
|
+
case 134:
|
|
17188
17429
|
_l.sent();
|
|
17189
17430
|
// await test_send_with_template()
|
|
17190
17431
|
return [4 /*yield*/, bulk_read_tests()];
|
|
17191
|
-
case
|
|
17432
|
+
case 135:
|
|
17192
17433
|
// await test_send_with_template()
|
|
17193
17434
|
_l.sent();
|
|
17194
17435
|
return [4 /*yield*/, ticket_reminder_tests()];
|
|
17195
|
-
case
|
|
17436
|
+
case 136:
|
|
17196
17437
|
_l.sent();
|
|
17197
17438
|
return [4 /*yield*/, marketing_email_unsubscribe_tests()];
|
|
17198
|
-
case
|
|
17439
|
+
case 137:
|
|
17199
17440
|
_l.sent();
|
|
17200
17441
|
return [4 /*yield*/, unique_strings_tests()];
|
|
17201
|
-
case
|
|
17442
|
+
case 138:
|
|
17202
17443
|
_l.sent();
|
|
17203
17444
|
return [4 /*yield*/, alternate_phones_tests()];
|
|
17204
|
-
case
|
|
17445
|
+
case 139:
|
|
17205
17446
|
_l.sent();
|
|
17206
17447
|
return [4 /*yield*/, role_based_access_tests()];
|
|
17207
|
-
case
|
|
17448
|
+
case 140:
|
|
17208
17449
|
_l.sent();
|
|
17209
17450
|
return [4 /*yield*/, enduser_session_tests()];
|
|
17210
|
-
case
|
|
17451
|
+
case 141:
|
|
17211
17452
|
_l.sent();
|
|
17212
17453
|
return [4 /*yield*/, nextReminderInMS_tests()];
|
|
17213
|
-
case
|
|
17454
|
+
case 142:
|
|
17214
17455
|
_l.sent();
|
|
17215
17456
|
return [4 /*yield*/, wait_for_trigger_tests()];
|
|
17216
|
-
case
|
|
17457
|
+
case 143:
|
|
17217
17458
|
_l.sent();
|
|
17218
17459
|
return [4 /*yield*/, pdf_generation()];
|
|
17219
|
-
case
|
|
17460
|
+
case 144:
|
|
17220
17461
|
_l.sent();
|
|
17221
17462
|
return [4 /*yield*/, remove_from_journey_on_incoming_comms_tests().catch(console.error)]; // timing is unreliable, uncomment if changing logic
|
|
17222
|
-
case
|
|
17463
|
+
case 145:
|
|
17223
17464
|
_l.sent(); // timing is unreliable, uncomment if changing logic
|
|
17224
17465
|
return [4 /*yield*/, sub_organization_enduser_tests()];
|
|
17225
|
-
case 145:
|
|
17226
|
-
_l.sent();
|
|
17227
|
-
return [4 /*yield*/, sub_organization_tests()];
|
|
17228
17466
|
case 146:
|
|
17229
17467
|
_l.sent();
|
|
17230
|
-
return [4 /*yield*/,
|
|
17468
|
+
return [4 /*yield*/, sub_organization_tests()];
|
|
17231
17469
|
case 147:
|
|
17232
17470
|
_l.sent();
|
|
17233
|
-
return [4 /*yield*/,
|
|
17471
|
+
return [4 /*yield*/, filter_by_date_tests()];
|
|
17234
17472
|
case 148:
|
|
17235
17473
|
_l.sent();
|
|
17236
|
-
return [4 /*yield*/,
|
|
17474
|
+
return [4 /*yield*/, generate_user_auth_tests()];
|
|
17237
17475
|
case 149:
|
|
17238
17476
|
_l.sent();
|
|
17239
|
-
return [4 /*yield*/,
|
|
17477
|
+
return [4 /*yield*/, generateEnduserAuthTests()];
|
|
17240
17478
|
case 150:
|
|
17241
17479
|
_l.sent();
|
|
17242
|
-
return [4 /*yield*/,
|
|
17480
|
+
return [4 /*yield*/, public_form_tests()];
|
|
17243
17481
|
case 151:
|
|
17244
17482
|
_l.sent();
|
|
17245
|
-
return [4 /*yield*/,
|
|
17483
|
+
return [4 /*yield*/, badInputTests()];
|
|
17246
17484
|
case 152:
|
|
17247
17485
|
_l.sent();
|
|
17248
|
-
return [4 /*yield*/,
|
|
17486
|
+
return [4 /*yield*/, filterTests()];
|
|
17249
17487
|
case 153:
|
|
17250
17488
|
_l.sent();
|
|
17251
|
-
return [
|
|
17489
|
+
return [4 /*yield*/, updatesTests()];
|
|
17252
17490
|
case 154:
|
|
17491
|
+
_l.sent();
|
|
17492
|
+
return [3 /*break*/, 156];
|
|
17493
|
+
case 155:
|
|
17253
17494
|
err_1 = _l.sent();
|
|
17254
17495
|
console.error("Failed during custom test");
|
|
17255
17496
|
if (err_1.message && err_1.info) {
|
|
@@ -17259,18 +17500,18 @@ var ip_address_form_tests = function () { return __awaiter(void 0, void 0, void
|
|
|
17259
17500
|
console.error(err_1);
|
|
17260
17501
|
}
|
|
17261
17502
|
process.exit(1);
|
|
17262
|
-
return [3 /*break*/,
|
|
17263
|
-
case
|
|
17503
|
+
return [3 /*break*/, 156];
|
|
17504
|
+
case 156:
|
|
17264
17505
|
_a = schema;
|
|
17265
17506
|
_b = [];
|
|
17266
17507
|
for (_c in _a)
|
|
17267
17508
|
_b.push(_c);
|
|
17268
17509
|
_i = 0;
|
|
17269
|
-
_l.label =
|
|
17270
|
-
case
|
|
17271
|
-
if (!(_i < _b.length)) return [3 /*break*/,
|
|
17510
|
+
_l.label = 157;
|
|
17511
|
+
case 157:
|
|
17512
|
+
if (!(_i < _b.length)) return [3 /*break*/, 160];
|
|
17272
17513
|
_c = _b[_i];
|
|
17273
|
-
if (!(_c in _a)) return [3 /*break*/,
|
|
17514
|
+
if (!(_c in _a)) return [3 /*break*/, 159];
|
|
17274
17515
|
n = _c;
|
|
17275
17516
|
returnValidation = (_k = (_j = schema[n].customActions) === null || _j === void 0 ? void 0 : _j.create) === null || _k === void 0 ? void 0 : _k.returns;
|
|
17276
17517
|
return [4 /*yield*/, run_generated_tests({
|
|
@@ -17281,41 +17522,41 @@ var ip_address_form_tests = function () { return __awaiter(void 0, void 0, void
|
|
|
17281
17522
|
create: returnValidation // ModelFields<ClientModel>,
|
|
17282
17523
|
}
|
|
17283
17524
|
})];
|
|
17284
|
-
case 157:
|
|
17285
|
-
_l.sent();
|
|
17286
|
-
_l.label = 158;
|
|
17287
17525
|
case 158:
|
|
17288
|
-
|
|
17289
|
-
|
|
17526
|
+
_l.sent();
|
|
17527
|
+
_l.label = 159;
|
|
17290
17528
|
case 159:
|
|
17529
|
+
_i++;
|
|
17530
|
+
return [3 /*break*/, 157];
|
|
17531
|
+
case 160:
|
|
17291
17532
|
_d = tests;
|
|
17292
17533
|
_f = [];
|
|
17293
17534
|
for (_g in _d)
|
|
17294
17535
|
_f.push(_g);
|
|
17295
17536
|
_h = 0;
|
|
17296
|
-
_l.label = 160;
|
|
17297
|
-
case 160:
|
|
17298
|
-
if (!(_h < _f.length)) return [3 /*break*/, 165];
|
|
17299
|
-
_g = _f[_h];
|
|
17300
|
-
if (!(_g in _d)) return [3 /*break*/, 164];
|
|
17301
|
-
t = _g;
|
|
17302
17537
|
_l.label = 161;
|
|
17303
17538
|
case 161:
|
|
17304
|
-
|
|
17305
|
-
|
|
17539
|
+
if (!(_h < _f.length)) return [3 /*break*/, 166];
|
|
17540
|
+
_g = _f[_h];
|
|
17541
|
+
if (!(_g in _d)) return [3 /*break*/, 165];
|
|
17542
|
+
t = _g;
|
|
17543
|
+
_l.label = 162;
|
|
17306
17544
|
case 162:
|
|
17307
|
-
_l.
|
|
17308
|
-
return [
|
|
17545
|
+
_l.trys.push([162, 164, , 165]);
|
|
17546
|
+
return [4 /*yield*/, tests[t]()];
|
|
17309
17547
|
case 163:
|
|
17548
|
+
_l.sent();
|
|
17549
|
+
return [3 /*break*/, 165];
|
|
17550
|
+
case 164:
|
|
17310
17551
|
err_2 = _l.sent();
|
|
17311
17552
|
console.error("Error running test:");
|
|
17312
17553
|
console.error(err_2);
|
|
17313
17554
|
process.exit(1);
|
|
17314
|
-
return [3 /*break*/,
|
|
17315
|
-
case 164:
|
|
17316
|
-
_h++;
|
|
17317
|
-
return [3 /*break*/, 160];
|
|
17555
|
+
return [3 /*break*/, 165];
|
|
17318
17556
|
case 165:
|
|
17557
|
+
_h++;
|
|
17558
|
+
return [3 /*break*/, 161];
|
|
17559
|
+
case 166:
|
|
17319
17560
|
process.exit();
|
|
17320
17561
|
return [2 /*return*/];
|
|
17321
17562
|
}
|