@tellescope/sdk 0.0.15 → 0.0.19

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.
Files changed (48) hide show
  1. package/lib/cjs/enduser.d.ts +10 -5
  2. package/lib/cjs/enduser.d.ts.map +1 -1
  3. package/lib/cjs/enduser.js +5 -4
  4. package/lib/cjs/enduser.js.map +1 -1
  5. package/lib/cjs/sdk.d.ts +20 -10
  6. package/lib/cjs/sdk.d.ts.map +1 -1
  7. package/lib/cjs/sdk.js +9 -10
  8. package/lib/cjs/sdk.js.map +1 -1
  9. package/lib/cjs/session.d.ts +4 -21
  10. package/lib/cjs/session.d.ts.map +1 -1
  11. package/lib/cjs/session.js +1 -0
  12. package/lib/cjs/session.js.map +1 -1
  13. package/lib/cjs/tests/public_endpoint_tests.js +4 -4
  14. package/lib/cjs/tests/public_endpoint_tests.js.map +1 -1
  15. package/lib/cjs/tests/socket_tests.d.ts +1 -1
  16. package/lib/cjs/tests/socket_tests.d.ts.map +1 -1
  17. package/lib/cjs/tests/socket_tests.js +125 -8
  18. package/lib/cjs/tests/socket_tests.js.map +1 -1
  19. package/lib/cjs/tests/tests.js +147 -101
  20. package/lib/cjs/tests/tests.js.map +1 -1
  21. package/lib/esm/enduser.d.ts +10 -5
  22. package/lib/esm/enduser.d.ts.map +1 -1
  23. package/lib/esm/enduser.js +5 -4
  24. package/lib/esm/enduser.js.map +1 -1
  25. package/lib/esm/sdk.d.ts +20 -10
  26. package/lib/esm/sdk.d.ts.map +1 -1
  27. package/lib/esm/sdk.js +9 -10
  28. package/lib/esm/sdk.js.map +1 -1
  29. package/lib/esm/session.d.ts +4 -21
  30. package/lib/esm/session.d.ts.map +1 -1
  31. package/lib/esm/session.js +1 -0
  32. package/lib/esm/session.js.map +1 -1
  33. package/lib/esm/tests/public_endpoint_tests.js +4 -4
  34. package/lib/esm/tests/public_endpoint_tests.js.map +1 -1
  35. package/lib/esm/tests/socket_tests.d.ts +1 -1
  36. package/lib/esm/tests/socket_tests.d.ts.map +1 -1
  37. package/lib/esm/tests/socket_tests.js +123 -8
  38. package/lib/esm/tests/socket_tests.js.map +1 -1
  39. package/lib/esm/tests/tests.js +147 -101
  40. package/lib/esm/tests/tests.js.map +1 -1
  41. package/lib/tsconfig.tsbuildinfo +1 -1
  42. package/package.json +10 -10
  43. package/src/enduser.ts +12 -8
  44. package/src/sdk.ts +28 -20
  45. package/src/session.ts +3 -18
  46. package/src/tests/public_endpoint_tests.ts +4 -4
  47. package/src/tests/socket_tests.ts +68 -5
  48. package/src/tests/tests.ts +67 -34
@@ -92,7 +92,7 @@ var userId = '60398b0231a295e64f084fd9';
92
92
  // // delete an individual record
93
93
  // await sdk.api.endusers.deleteOne(enduser.id)
94
94
  // }
95
- var sdk = new sdk_1.Session();
95
+ var sdk = new sdk_1.Session({ host: host });
96
96
  var sdkOther = new sdk_1.Session({ host: host, apiKey: "ba745e25162bb95a795c5fa1af70df188d93c4d3aac9c48b34a5c8c9dd7b80f7" });
97
97
  var enduserSDK = new sdk_1.EnduserSession({ host: host });
98
98
  // const sdkOtherEmail = "sebass@tellescope.com"
@@ -110,15 +110,11 @@ var setup_tests = function () { return __awaiter(void 0, void 0, void 0, functio
110
110
  case 0: return [4 /*yield*/, (0, testing_1.async_test)('test_online', sdk.test_online, { expectedResult: 'API V1 Online' })];
111
111
  case 1:
112
112
  _a.sent();
113
- return [4 /*yield*/, (0, testing_1.async_test)('test_authenticated', sdk.test_authenticated, { expectedResult: 'Authenticated!' })
114
- // console.log(await sdk.api.api_keys.createOne({}))
115
- ];
113
+ return [4 /*yield*/, (0, testing_1.async_test)('test_authenticated', sdk.test_authenticated, { expectedResult: 'Authenticated!' })];
116
114
  case 2:
117
115
  _a.sent();
118
- // console.log(await sdk.api.api_keys.createOne({}))
119
116
  return [4 /*yield*/, (0, testing_1.async_test)('test_authenticated (with API Key)', (new sdk_1.Session({ host: host, apiKey: '3n5q0SCBT_iUvZz-b9BJtX7o7HQUVJ9v132PgHJNJsg.' /* local test key */ })).test_authenticated, { expectedResult: 'Authenticated!' })];
120
117
  case 3:
121
- // console.log(await sdk.api.api_keys.createOne({}))
122
118
  _a.sent();
123
119
  return [4 /*yield*/, sdk.logout()];
124
120
  case 4:
@@ -126,7 +122,7 @@ var setup_tests = function () { return __awaiter(void 0, void 0, void 0, functio
126
122
  return [4 /*yield*/, (0, testing_1.async_test)('test_authenticated - (logout invalidates jwt)', sdk.test_authenticated, { shouldError: true, onError: function (e) { return e === 'Unauthenticated'; } })];
127
123
  case 5:
128
124
  _a.sent();
129
- return [4 /*yield*/, sdk.authenticate(email, password, host)];
125
+ return [4 /*yield*/, sdk.authenticate(email, password)];
130
126
  case 6:
131
127
  _a.sent();
132
128
  return [4 /*yield*/, (0, testing_1.async_test)('test_authenticated (re-authenticated)', sdk.test_authenticated, { expectedResult: 'Authenticated!' })];
@@ -255,6 +251,21 @@ var threadKeyTests = function () { return __awaiter(void 0, void 0, void 0, func
255
251
  }
256
252
  });
257
253
  }); };
254
+ var badInputTests = function () { return __awaiter(void 0, void 0, void 0, function () {
255
+ return __generator(this, function (_a) {
256
+ switch (_a.label) {
257
+ case 0:
258
+ (0, testing_1.log_header)("Bad Input Tests");
259
+ return [4 /*yield*/, (0, testing_1.async_test)("_-prefixed fields are not allowed", function () { return sdk.api.endusers.createOne({ email: 'failure@tellescope.com', fields: { "_notallowed": 'hello' } }); }, { shouldError: true, onError: function (e) { return e.message === "Error parsing field fields: Fields that start with '_' are not allowed"; } })];
260
+ case 1:
261
+ _a.sent();
262
+ return [4 /*yield*/, (0, testing_1.async_test)("_-prefixed fields are not allowed", function () { return sdk.api.notes.createOne({ enduserId: constants_1.PLACEHOLDER_ID, fields: { "_notallowed": 'hello' } }); }, { shouldError: true, onError: function (e) { return e.message === "Error parsing field fields: Fields that start with '_' are not allowed"; } })];
263
+ case 2:
264
+ _a.sent();
265
+ return [2 /*return*/];
266
+ }
267
+ });
268
+ }); };
258
269
  var filterTests = function () { return __awaiter(void 0, void 0, void 0, function () {
259
270
  var enduser, otherEnduser;
260
271
  return __generator(this, function (_a) {
@@ -268,38 +279,46 @@ var filterTests = function () { return __awaiter(void 0, void 0, void 0, functio
268
279
  return [4 /*yield*/, (0, testing_1.async_test)("find enduser by filter", function () { return sdk.api.endusers.getSome({ filter: { email: 'filtertests@tellescope.com' } }); }, { onResult: function (es) { return es.length === 1 && es[0].id === enduser.id; } })];
269
280
  case 3:
270
281
  _a.sent();
271
- return [4 /*yield*/, (0, testing_1.async_test)("find enduser by compound filter", function () { return sdk.api.endusers.getSome({ filter: { email: 'filtertests@tellescope.com', fname: 'test' } }); }, { onResult: function (es) { return es.length === 1 && es[0].id === enduser.id; } })];
282
+ return [4 /*yield*/, (0, testing_1.async_test)("find enduser by _exists filter", function () { return sdk.api.endusers.getSome({ filter: { fname: { _exists: true } } }); }, { onResult: function (es) { return es.length === 1 && es[0].id === enduser.id; } })];
272
283
  case 4:
273
284
  _a.sent();
274
- return [4 /*yield*/, (0, testing_1.async_test)("nothing found by invalid compound filter", function () { return sdk.api.endusers.getSome({ filter: { email: 'filtertests@tellescope.com', fname: 'nottest' } }); }, { onResult: function (es) { return es.length === 0; } })];
285
+ return [4 /*yield*/, (0, testing_1.async_test)("find enduser by _exists filter (findOne)",
286
+ // () => sdk.api.endusers.getOne({ fname: { _exists: true } }),
287
+ function () { return sdk.api.endusers.getOne({ fname: { _exists: true } }); }, { onResult: function (e) { return e.id === enduser.id; } })];
275
288
  case 5:
276
289
  _a.sent();
277
- return [4 /*yield*/, (0, testing_1.async_test)("nothing found for invalid filter", function () { return sdk.api.endusers.getSome({ filter: { email: 'doesnotexist@tellescope.com' } }); }, { onResult: function (es) { return es.length === 0; } })];
290
+ return [4 /*yield*/, (0, testing_1.async_test)("find enduser by compound filter", function () { return sdk.api.endusers.getSome({ filter: { email: 'filtertests@tellescope.com', fname: 'test' } }); }, { onResult: function (es) { return es.length === 1 && es[0].id === enduser.id; } })];
278
291
  case 6:
279
292
  _a.sent();
280
- return [4 /*yield*/, (0, testing_1.async_test)("find enduser by nested filter", function () { return sdk.api.endusers.getSome({ filter: { fields: { field1: 'value1' } } }); }, { onResult: function (es) { return es.length === 1 && es[0].id === enduser.id; } })];
293
+ return [4 /*yield*/, (0, testing_1.async_test)("nothing found by invalid compound filter", function () { return sdk.api.endusers.getSome({ filter: { email: 'filtertests@tellescope.com', fname: 'nottest' } }); }, { onResult: function (es) { return es.length === 0; } })];
281
294
  case 7:
282
295
  _a.sent();
283
- return [4 /*yield*/, (0, testing_1.async_test)("nothing found by invalid nested filter", function () { return sdk.api.endusers.getSome({ filter: { fields: { field1: 'not a nested field value' } } }); }, { onResult: function (es) { return es.length === 0; } })];
296
+ return [4 /*yield*/, (0, testing_1.async_test)("nothing found for invalid filter", function () { return sdk.api.endusers.getSome({ filter: { email: 'doesnotexist@tellescope.com' } }); }, { onResult: function (es) { return es.length === 0; } })];
284
297
  case 8:
285
298
  _a.sent();
286
- return [4 /*yield*/, (0, testing_1.async_test)("find enduser by compound nested filter", function () { return sdk.api.endusers.getSome({ filter: { fields: { field1: 'value1', field2: 'value2' } } }); }, { onResult: function (es) { return es.length === 1 && es[0].id === enduser.id; } })];
299
+ return [4 /*yield*/, (0, testing_1.async_test)("find enduser by nested filter", function () { return sdk.api.endusers.getSome({ filter: { fields: { field1: 'value1' } } }); }, { onResult: function (es) { return es.length === 1 && es[0].id === enduser.id; } })];
287
300
  case 9:
288
301
  _a.sent();
289
- return [4 /*yield*/, (0, testing_1.async_test)("nothing found by compound invalid nested filter", function () { return sdk.api.endusers.getSome({ filter: { fields: { field1: 'not a nested field value', field2: 'value2' } } }); }, { onResult: function (es) { return es.length === 0; } })];
302
+ return [4 /*yield*/, (0, testing_1.async_test)("nothing found by invalid nested filter", function () { return sdk.api.endusers.getSome({ filter: { fields: { field1: 'not a nested field value' } } }); }, { onResult: function (es) { return es.length === 0; } })];
290
303
  case 10:
291
304
  _a.sent();
292
- return [4 /*yield*/, (0, testing_1.async_test)("find enduser by compound nested filter with non-nested field as well", function () { return sdk.api.endusers.getSome({ filter: { email: 'filtertests@tellescope.com', fields: { field1: 'value1', field2: 'value2' } } }); }, { onResult: function (es) { return es.length === 1 && es[0].id === enduser.id; } })];
305
+ return [4 /*yield*/, (0, testing_1.async_test)("find enduser by compound nested filter", function () { return sdk.api.endusers.getSome({ filter: { fields: { field1: 'value1', field2: 'value2' } } }); }, { onResult: function (es) { return es.length === 1 && es[0].id === enduser.id; } })];
293
306
  case 11:
294
307
  _a.sent();
295
- return [4 /*yield*/, (0, testing_1.async_test)("nothing found for compound nested filter with non-nested field as well", function () { return sdk.api.endusers.getSome({ filter: { email: 'doesnotexist@tellescope.com', fields: { field1: 'value1', field2: 'value2' } } }); }, { onResult: function (es) { return es.length === 0; } })];
308
+ return [4 /*yield*/, (0, testing_1.async_test)("nothing found by compound invalid nested filter", function () { return sdk.api.endusers.getSome({ filter: { fields: { field1: 'not a nested field value', field2: 'value2' } } }); }, { onResult: function (es) { return es.length === 0; } })];
296
309
  case 12:
297
310
  _a.sent();
298
- return [4 /*yield*/, sdk.api.endusers.deleteOne(enduser.id)];
311
+ return [4 /*yield*/, (0, testing_1.async_test)("find enduser by compound nested filter with non-nested field as well", function () { return sdk.api.endusers.getSome({ filter: { email: 'filtertests@tellescope.com', fields: { field1: 'value1', field2: 'value2' } } }); }, { onResult: function (es) { return es.length === 1 && es[0].id === enduser.id; } })];
299
312
  case 13:
300
313
  _a.sent();
301
- return [4 /*yield*/, sdk.api.endusers.deleteOne(otherEnduser.id)];
314
+ return [4 /*yield*/, (0, testing_1.async_test)("nothing found for compound nested filter with non-nested field as well", function () { return sdk.api.endusers.getSome({ filter: { email: 'doesnotexist@tellescope.com', fields: { field1: 'value1', field2: 'value2' } } }); }, { onResult: function (es) { return es.length === 0; } })];
302
315
  case 14:
316
+ _a.sent();
317
+ return [4 /*yield*/, sdk.api.endusers.deleteOne(enduser.id)];
318
+ case 15:
319
+ _a.sent();
320
+ return [4 /*yield*/, sdk.api.endusers.deleteOne(otherEnduser.id)];
321
+ case 16:
303
322
  _a.sent();
304
323
  return [2 /*return*/];
305
324
  }
@@ -337,24 +356,40 @@ var updatesTests = function () { return __awaiter(void 0, void 0, void 0, functi
337
356
  });
338
357
  }); };
339
358
  var generateEnduserAuthTests = function () { return __awaiter(void 0, void 0, void 0, function () {
340
- var enduser, authToken, isAuthenticated;
341
- return __generator(this, function (_a) {
342
- switch (_a.label) {
359
+ var e, _a, authToken, enduser, isAuthenticated;
360
+ return __generator(this, function (_b) {
361
+ switch (_b.label) {
343
362
  case 0:
344
363
  (0, testing_1.log_header)("Generated Enduser authToken Tests");
345
- return [4 /*yield*/, sdk.api.endusers.createOne({ email: 'generated@tellescope.com' })];
364
+ return [4 /*yield*/, sdk.api.endusers.createOne({ email: 'generated@tellescope.com', phone: '+15555555555', externalId: '1029f9v9sjd0as' })];
346
365
  case 1:
347
- enduser = _a.sent();
348
- return [4 /*yield*/, sdk.api.endusers.generateAuthToken({ id: enduser.id })];
366
+ e = _b.sent();
367
+ return [4 /*yield*/, sdk.api.endusers.generate_auth_token({ id: e.id })];
349
368
  case 2:
350
- authToken = (_a.sent()).authToken;
351
- return [4 /*yield*/, sdk.api.endusers.isAuthenticated({ id: enduser.id, authToken: authToken })];
369
+ _a = _b.sent(), authToken = _a.authToken, enduser = _a.enduser;
370
+ (0, testing_1.assert)(!!authToken && !!enduser, 'invalid returned values', 'Generate authToken and get enduser');
371
+ return [4 /*yield*/, sdk.api.endusers.is_authenticated({ id: enduser.id, authToken: authToken })];
352
372
  case 3:
353
- isAuthenticated = (_a.sent()).isAuthenticated;
373
+ isAuthenticated = (_b.sent()).isAuthenticated;
354
374
  (0, testing_1.assert)(isAuthenticated, 'invalid authToken generated for enduser', 'Generate authToken for enduser is valid');
355
- return [4 /*yield*/, sdk.api.endusers.deleteOne(enduser.id)];
375
+ return [4 /*yield*/, (0, testing_1.async_test)("auth by externalId", function () { return sdk.api.endusers.generate_auth_token({ externalId: e.externalId }); }, passOnVoid)];
356
376
  case 4:
357
- _a.sent();
377
+ _b.sent();
378
+ return [4 /*yield*/, (0, testing_1.async_test)("auth by email", function () { return sdk.api.endusers.generate_auth_token({ email: e.email }); }, passOnVoid)];
379
+ case 5:
380
+ _b.sent();
381
+ return [4 /*yield*/, (0, testing_1.async_test)("auth by phone", function () { return sdk.api.endusers.generate_auth_token({ phone: e.phone }); }, passOnVoid)];
382
+ case 6:
383
+ _b.sent();
384
+ return [4 /*yield*/, (0, testing_1.async_test)("auth by nothing throws error", function () { return sdk.api.endusers.generate_auth_token({ phone: undefined }); }, { shouldError: true, onError: function (e) { return e.message === "One of id, externalId, email, or phone is required"; } })];
385
+ case 7:
386
+ _b.sent();
387
+ return [4 /*yield*/, (0, testing_1.async_test)("auth by bad field throws error", function () { return sdk.api.endusers.generate_auth_token({ email: "notavalidemail@tellescope.com" }); }, { shouldError: true, onError: function (e) { return e.message === "Could not find a corresponding enduser"; } })];
388
+ case 8:
389
+ _b.sent();
390
+ return [4 /*yield*/, sdk.api.endusers.deleteOne(enduser.id)];
391
+ case 9:
392
+ _b.sent();
358
393
  return [2 /*return*/];
359
394
  }
360
395
  });
@@ -477,7 +512,7 @@ var run_generated_tests = function (_a) {
477
512
  case 7:
478
513
  _c.sent();
479
514
  _c.label = 8;
480
- case 8: return [4 /*yield*/, (0, testing_1.async_test)("get-".concat(singularName), function () { return queries.getOne(_id, filter); }, { onResult: function (d) {
515
+ case 8: return [4 /*yield*/, (0, testing_1.async_test)("get-".concat(singularName), function () { return queries.getOne(_id); }, { onResult: function (d) {
481
516
  if (!(d === null || d === void 0 ? void 0 : d.id))
482
517
  return false;
483
518
  for (var k in instance) {
@@ -506,7 +541,7 @@ var run_generated_tests = function (_a) {
506
541
  return [4 /*yield*/, (0, testing_1.async_test)("delete-".concat(singularName), function () { return queries.deleteOne(_id); }, passOnVoid)];
507
542
  case 11:
508
543
  _c.sent();
509
- return [4 /*yield*/, (0, testing_1.async_test)("get-".concat(singularName, " (verify delete)"), function () { return queries.getOne(_id, filter); }, { shouldError: true, onError: function (e) { return e.message === 'Could not find a record for the given id'; } })];
544
+ return [4 /*yield*/, (0, testing_1.async_test)("get-".concat(singularName, " (verify delete)"), function () { return queries.getOne(_id); }, { shouldError: true, onError: function (e) { return e.message === 'Could not find a record for the given id'; } })];
510
545
  case 12:
511
546
  _c.sent();
512
547
  return [2 /*return*/];
@@ -701,7 +736,7 @@ var journey_tests = function (queries) {
701
736
  return [4 /*yield*/, (0, testing_1.async_test)("journey-update - insert new state at front", function () { return queries.getOne(journey.id); }, { onResult: function (j) { return (0, utilities_1.objects_equivalent)(j.states, [{ name: 'First', priority: "N/A" }, { name: 'Added', priority: "N/A" }]); } })];
702
737
  case 24:
703
738
  _g.sent();
704
- return [4 /*yield*/, (0, testing_1.async_test)("journey-updateState", function () { return queries.updateState({ id: journey.id, name: 'Added', updates: { name: 'Updated', priority: 'N/A' } }); }, passOnVoid)];
739
+ return [4 /*yield*/, (0, testing_1.async_test)("journey-updateState", function () { return queries.update_state({ id: journey.id, name: 'Added', updates: { name: 'Updated', priority: 'N/A' } }); }, passOnVoid)];
705
740
  case 25:
706
741
  _g.sent();
707
742
  return [4 /*yield*/, (0, testing_1.wait)(undefined, 25)]; // wait for side effects to update endusers
@@ -931,23 +966,30 @@ var chat_tests = function () { return __awaiter(void 0, void 0, void 0, function
931
966
  return [4 /*yield*/, sdk.api.chats.createOne({ roomId: room.id, message: "Hello!" })];
932
967
  case 3:
933
968
  chat = _a.sent();
934
- return [4 /*yield*/, sdk.api.chats.createOne({ roomId: room.id, message: "Hello..." })];
969
+ return [4 /*yield*/, sdk.api.chats.createOne({ roomId: room.id, message: "Hello..." })
970
+ // await async_test(
971
+ // `get-chat (without filter)`,
972
+ // () => sdk.api.chats.getOne(chat.id),
973
+ // { shouldError: true, onError: () => true }
974
+ // )
975
+ ];
935
976
  case 4:
936
977
  chat2 = _a.sent();
937
- return [4 /*yield*/, (0, testing_1.async_test)("get-chat (without filter)", function () { return sdk.api.chats.getOne(chat.id); }, { shouldError: true, onError: function () { return true; } })];
938
- case 5:
939
- _a.sent();
978
+ // await async_test(
979
+ // `get-chat (without filter)`,
980
+ // () => sdk.api.chats.getOne(chat.id),
981
+ // { shouldError: true, onError: () => true }
982
+ // )
940
983
  return [4 /*yield*/, (0, testing_1.async_test)("get-chats (without filter)", function () { return sdk.api.chats.getSome({}); }, { shouldError: true, onError: function () { return true; } })];
941
- case 6:
942
- _a.sent();
943
- return [4 /*yield*/, (0, testing_1.async_test)("get-chat (with filter)", function () { return sdk.api.chats.getOne(chat.id, { roomId: room.id }); }, { onResult: function (c) { return (c === null || c === void 0 ? void 0 : c.id) === chat.id; } })];
944
- case 7:
984
+ case 5:
985
+ // await async_test(
986
+ // `get-chat (without filter)`,
987
+ // () => sdk.api.chats.getOne(chat.id),
988
+ // { shouldError: true, onError: () => true }
989
+ // )
945
990
  _a.sent();
946
991
  return [4 /*yield*/, (0, testing_1.async_test)("get-chats (with filter)", function () { return sdk.api.chats.getSome({ filter: { roomId: room.id } }); }, { onResult: function (c) { return (c === null || c === void 0 ? void 0 : c.length) === 2; } })];
947
- case 8:
948
- _a.sent();
949
- return [4 /*yield*/, (0, testing_1.async_test)("get-chat not allowed", function () { return sdk2.api.chats.getOne(chat.id, { roomId: room.id }); }, { shouldError: true, onError: function (e) { return e.message === 'You do not have permission to access this resource'; } })];
950
- case 9:
992
+ case 6:
951
993
  _a.sent();
952
994
  return [4 /*yield*/, (0, testing_1.async_test)("get-chats not allowed", function () { return sdk2.api.chats.getSome({ filter: { roomId: room.id } }); }, { shouldError: true, onError: function (e) { return e.message === 'You do not have permission to access this resource'; } })
953
995
  // currently disabled endpoint altogether
@@ -957,7 +999,7 @@ var chat_tests = function () { return __awaiter(void 0, void 0, void 0, function
957
999
  // { shouldError: true, onError: e => e.message === 'You do not have permission to access this resource' }
958
1000
  // )
959
1001
  ];
960
- case 10:
1002
+ case 7:
961
1003
  _a.sent();
962
1004
  // currently disabled endpoint altogether
963
1005
  // await async_test(
@@ -973,7 +1015,7 @@ var chat_tests = function () { return __awaiter(void 0, void 0, void 0, function
973
1015
  // { shouldError: true, onError: e => e.message === 'Error parsing field updates: roomId is not valid for updates' }
974
1016
  // )
975
1017
  ];
976
- case 11:
1018
+ case 8:
977
1019
  // currently disabled endpoint altogether
978
1020
  // await async_test(
979
1021
  // `update-chat not allowed`,
@@ -988,7 +1030,7 @@ var chat_tests = function () { return __awaiter(void 0, void 0, void 0, function
988
1030
  // { shouldError: true, onError: e => e.message === 'Error parsing field updates: roomId is not valid for updates' }
989
1031
  // )
990
1032
  return [4 /*yield*/, sdk.api.chat_rooms.deleteOne(room.id)];
991
- case 12:
1033
+ case 9:
992
1034
  // currently disabled endpoint altogether
993
1035
  // await async_test(
994
1036
  // `update-chat can't update roomId`,
@@ -997,51 +1039,51 @@ var chat_tests = function () { return __awaiter(void 0, void 0, void 0, function
997
1039
  // )
998
1040
  _a.sent();
999
1041
  return [4 /*yield*/, (0, testing_1.wait)(undefined, 25)];
1000
- case 13:
1042
+ case 10:
1001
1043
  _a.sent();
1002
- return [4 /*yield*/, (0, testing_1.async_test)("get-chat (deleted as dependency of room 1)", function () { return sdk.api.chats.getOne(chat.id, { roomId: room.id }); }, { shouldError: true, onError: function (e) { return e.message === 'Could not find a record for the given id'; } })];
1003
- case 14:
1044
+ return [4 /*yield*/, (0, testing_1.async_test)("get-chat (deleted as dependency of room 1)", function () { return sdk.api.chats.getOne(chat.id); }, { shouldError: true, onError: function (e) { return e.message === 'Could not find a record for the given id'; } })];
1045
+ case 11:
1004
1046
  _a.sent();
1005
- return [4 /*yield*/, (0, testing_1.async_test)("get-chat (deleted as dependency of room 2)", function () { return sdk.api.chats.getOne(chat2.id, { roomId: room.id }); }, { shouldError: true, onError: function (e) { return e.message === 'Could not find a record for the given id'; } })];
1006
- case 15:
1047
+ return [4 /*yield*/, (0, testing_1.async_test)("get-chat (deleted as dependency of room 2)", function () { return sdk.api.chats.getOne(chat2.id); }, { shouldError: true, onError: function (e) { return e.message === 'Could not find a record for the given id'; } })];
1048
+ case 12:
1007
1049
  _a.sent();
1008
1050
  return [4 /*yield*/, sdk.api.chat_rooms.createOne({ type: 'internal', userIds: [userId, sdk2.userInfo.id] })];
1009
- case 16:
1051
+ case 13:
1010
1052
  sharedRoom = _a.sent();
1011
1053
  return [4 /*yield*/, sdk.api.chats.createOne({ roomId: sharedRoom.id, message: "Hello!", })];
1012
- case 17:
1054
+ case 14:
1013
1055
  sharedChat = _a.sent();
1014
1056
  return [4 /*yield*/, sdk2.api.chats.createOne({ roomId: sharedRoom.id, message: "Hello there!", })];
1015
- case 18:
1057
+ case 15:
1016
1058
  sharedChat2 = _a.sent();
1017
- return [4 /*yield*/, (0, testing_1.async_test)("get-chat (shared, user1)", function () { return sdk.api.chats.getOne(sharedChat.id, { roomId: sharedRoom.id }); }, { onResult: function (r) { return r.id === sharedChat.id; } })];
1018
- case 19:
1059
+ return [4 /*yield*/, (0, testing_1.async_test)("get-chat (shared, user1)", function () { return sdk.api.chats.getOne(sharedChat.id); }, { onResult: function (r) { return r.id === sharedChat.id; } })];
1060
+ case 16:
1019
1061
  _a.sent();
1020
- return [4 /*yield*/, (0, testing_1.async_test)("get-chat (shared, user2)", function () { return sdk2.api.chats.getOne(sharedChat.id, { roomId: sharedRoom.id }); }, { onResult: function (r) { return r.id === sharedChat.id; } })];
1021
- case 20:
1062
+ return [4 /*yield*/, (0, testing_1.async_test)("get-chat (shared, user2)", function () { return sdk2.api.chats.getOne(sharedChat.id); }, { onResult: function (r) { return r.id === sharedChat.id; } })];
1063
+ case 17:
1022
1064
  _a.sent();
1023
1065
  return [4 /*yield*/, (0, testing_1.async_test)("get-chats (shared, user1)", function () { return sdk.api.chats.getSome({ filter: { roomId: sharedRoom.id } }); }, { onResult: function (cs) { return cs.length === 2 && !!cs.find(function (c) { return c.id === sharedChat.id; }) && !!cs.find(function (c) { return c.id === sharedChat2.id; }); } })];
1024
- case 21:
1066
+ case 18:
1025
1067
  _a.sent();
1026
1068
  return [4 /*yield*/, (0, testing_1.async_test)("get-chats (shared, user2)", function () { return sdk2.api.chats.getSome({ filter: { roomId: sharedRoom.id } }); }, { onResult: function (cs) { return cs.length === 2 && !!cs.find(function (c) { return c.id === sharedChat.id; }) && !!cs.find(function (c) { return c.id === sharedChat2.id; }); } })
1027
1069
  // test setNull dependency
1028
1070
  ];
1029
- case 22:
1071
+ case 19:
1030
1072
  _a.sent();
1031
1073
  return [4 /*yield*/, sdk.api.chat_rooms.createOne({ type: 'internal', userIds: [userId] })];
1032
- case 23:
1074
+ case 20:
1033
1075
  roomNull = _a.sent();
1034
1076
  return [4 /*yield*/, sdk.api.chats.createOne({ roomId: roomNull.id, message: "Hello!" })];
1035
- case 24:
1077
+ case 21:
1036
1078
  chatNull = _a.sent();
1037
1079
  return [4 /*yield*/, sdk.api.chats.createOne({ roomId: roomNull.id, message: "Hello...", replyId: chatNull.id })];
1038
- case 25:
1080
+ case 22:
1039
1081
  chat2Null = _a.sent();
1040
1082
  return [4 /*yield*/, sdk.api.chats.deleteOne(chatNull.id)];
1041
- case 26:
1083
+ case 23:
1042
1084
  _a.sent();
1043
- return [4 /*yield*/, (0, testing_1.async_test)("get-chat (setNull working)", function () { return sdk.api.chats.getOne(chat2Null.id, { roomId: roomNull.id }); }, { onResult: function (c) { return c.replyId === null; } })];
1044
- case 27:
1085
+ return [4 /*yield*/, (0, testing_1.async_test)("get-chat (setNull working)", function () { return sdk.api.chats.getOne(chat2Null.id); }, { onResult: function (c) { return c.replyId === null; } })];
1086
+ case 24:
1045
1087
  _a.sent();
1046
1088
  return [2 /*return*/];
1047
1089
  }
@@ -1058,7 +1100,7 @@ var enduserAccessTests = function () { return __awaiter(void 0, void 0, void 0,
1058
1100
  return [4 /*yield*/, sdk.api.endusers.createOne({ email: email })];
1059
1101
  case 1:
1060
1102
  enduser = _j.sent();
1061
- return [4 /*yield*/, sdk.api.endusers.setPassword({ id: enduser.id, password: password }).catch(console.error)];
1103
+ return [4 /*yield*/, sdk.api.endusers.set_password({ id: enduser.id, password: password }).catch(console.error)];
1062
1104
  case 2:
1063
1105
  _j.sent();
1064
1106
  return [4 /*yield*/, enduserSDK.authenticate(email, password).catch(console.error)];
@@ -1203,49 +1245,53 @@ var tests = {
1203
1245
  var _f, _g;
1204
1246
  return __generator(this, function (_h) {
1205
1247
  switch (_h.label) {
1206
- case 0: return [4 /*yield*/, sdk.authenticate(email, password, host)];
1207
- case 1:
1208
- _h.sent();
1248
+ case 0:
1209
1249
  (0, testing_1.log_header)("API");
1210
- _h.label = 2;
1250
+ _h.label = 1;
1251
+ case 1:
1252
+ _h.trys.push([1, 11, , 12]);
1253
+ return [4 /*yield*/, sdk.authenticate(email, password)];
1211
1254
  case 2:
1212
- _h.trys.push([2, 10, , 11]);
1255
+ _h.sent();
1213
1256
  return [4 /*yield*/, setup_tests()];
1214
1257
  case 3:
1215
1258
  _h.sent();
1216
1259
  return [4 /*yield*/, multi_tenant_tests()]; // should come right after setup tests
1217
1260
  case 4:
1218
1261
  _h.sent(); // should come right after setup tests
1219
- return [4 /*yield*/, filterTests()];
1262
+ return [4 /*yield*/, badInputTests()];
1220
1263
  case 5:
1221
1264
  _h.sent();
1222
- return [4 /*yield*/, updatesTests()];
1265
+ return [4 /*yield*/, filterTests()];
1223
1266
  case 6:
1224
1267
  _h.sent();
1225
- return [4 /*yield*/, threadKeyTests()];
1268
+ return [4 /*yield*/, updatesTests()];
1226
1269
  case 7:
1227
1270
  _h.sent();
1228
- return [4 /*yield*/, enduserAccessTests()];
1271
+ return [4 /*yield*/, threadKeyTests()];
1229
1272
  case 8:
1230
1273
  _h.sent();
1231
- return [4 /*yield*/, generateEnduserAuthTests()];
1274
+ return [4 /*yield*/, enduserAccessTests()];
1232
1275
  case 9:
1233
1276
  _h.sent();
1234
- return [3 /*break*/, 11];
1277
+ return [4 /*yield*/, generateEnduserAuthTests()];
1235
1278
  case 10:
1279
+ _h.sent();
1280
+ return [3 /*break*/, 12];
1281
+ case 11:
1236
1282
  err_1 = _h.sent();
1237
1283
  console.error("Failed during custom test");
1238
1284
  console.error(err_1);
1239
1285
  process.exit();
1240
- return [3 /*break*/, 11];
1241
- case 11:
1286
+ return [3 /*break*/, 12];
1287
+ case 12:
1242
1288
  _a = [];
1243
1289
  for (_b in schema_1.schema)
1244
1290
  _a.push(_b);
1245
1291
  _i = 0;
1246
- _h.label = 12;
1247
- case 12:
1248
- if (!(_i < _a.length)) return [3 /*break*/, 15];
1292
+ _h.label = 13;
1293
+ case 13:
1294
+ if (!(_i < _a.length)) return [3 /*break*/, 16];
1249
1295
  n = _a[_i];
1250
1296
  returnValidation = (_g = (_f = schema_1.schema[n].customActions) === null || _f === void 0 ? void 0 : _f.create) === null || _g === void 0 ? void 0 : _g.returns;
1251
1297
  return [4 /*yield*/, run_generated_tests({
@@ -1256,37 +1302,37 @@ var tests = {
1256
1302
  create: returnValidation,
1257
1303
  }
1258
1304
  })];
1259
- case 13:
1260
- _h.sent();
1261
- _h.label = 14;
1262
1305
  case 14:
1263
- _i++;
1264
- return [3 /*break*/, 12];
1306
+ _h.sent();
1307
+ _h.label = 15;
1265
1308
  case 15:
1309
+ _i++;
1310
+ return [3 /*break*/, 13];
1311
+ case 16:
1266
1312
  _c = [];
1267
1313
  for (_d in tests)
1268
1314
  _c.push(_d);
1269
1315
  _e = 0;
1270
- _h.label = 16;
1271
- case 16:
1272
- if (!(_e < _c.length)) return [3 /*break*/, 21];
1273
- t = _c[_e];
1274
1316
  _h.label = 17;
1275
1317
  case 17:
1276
- _h.trys.push([17, 19, , 20]);
1277
- return [4 /*yield*/, tests[t]()];
1318
+ if (!(_e < _c.length)) return [3 /*break*/, 22];
1319
+ t = _c[_e];
1320
+ _h.label = 18;
1278
1321
  case 18:
1279
- _h.sent();
1280
- return [3 /*break*/, 20];
1322
+ _h.trys.push([18, 20, , 21]);
1323
+ return [4 /*yield*/, tests[t]()];
1281
1324
  case 19:
1325
+ _h.sent();
1326
+ return [3 /*break*/, 21];
1327
+ case 20:
1282
1328
  err_2 = _h.sent();
1283
1329
  console.error("Error running test:");
1284
1330
  console.error(err_2);
1285
- return [3 /*break*/, 20];
1286
- case 20:
1287
- _e++;
1288
- return [3 /*break*/, 16];
1331
+ return [3 /*break*/, 21];
1289
1332
  case 21:
1333
+ _e++;
1334
+ return [3 /*break*/, 17];
1335
+ case 22:
1290
1336
  process.exit();
1291
1337
  return [2 /*return*/];
1292
1338
  }