@tellescope/sdk 1.103.2 → 1.105.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.
@@ -5977,6 +5977,60 @@ export const ticket_queue_tests = async () => {
5977
5977
  () => sdk.api.tickets.assign_from_queue({ queueId: queue.id }),
5978
5978
  { shouldError: true, onError: e => e.message === "Queue is empty" },
5979
5979
  )
5980
+
5981
+ const stateTicket = await sdk.api.tickets.createOne({ title: 'ticket in queue', queueId: queue.id, enduserId: enduser.id, restrictByState: 'AK' })
5982
+ await sdk.api.users.updateOne(sdk.userInfo.id, { credentialedStates: [] }, { replaceObjectFields: true })
5983
+ await async_test(
5984
+ `Ticket queue empty for no state match`,
5985
+ () => sdk.api.tickets.assign_from_queue({ queueId: queue.id }),
5986
+ { shouldError: true, onError: e => e.message === "Queue is empty" },
5987
+ )
5988
+ await sdk.api.users.updateOne(sdk.userInfo.id, { credentialedStates: [{ state: 'AK' }] })
5989
+ await async_test(
5990
+ `Ticket restricted by state`,
5991
+ () => sdk.api.tickets.assign_from_queue({ queueId: queue.id }),
5992
+ { onResult: r => r.ticket.id === stateTicket.id },
5993
+ )
5994
+
5995
+ const allTagsTicket = await sdk.api.tickets.createOne({ title: 'all tags', queueId: queue.id, enduserId: enduser.id, restrictByTagsQualifier: 'All Of', restrictByTags: ['A', 'B'] })
5996
+ await sdk.api.users.updateOne(sdk.userInfo.id, { tags: [] }, { replaceObjectFields: true })
5997
+ await async_test(
5998
+ `Ticket queue empty for no tags match`,
5999
+ () => sdk.api.tickets.assign_from_queue({ queueId: queue.id }),
6000
+ { shouldError: true, onError: e => e.message === "Queue is empty" },
6001
+ )
6002
+ await sdk.api.users.updateOne(sdk.userInfo.id, { tags: ['A'] }, { replaceObjectFields: true })
6003
+ await async_test(
6004
+ `Ticket queue empty for partial tags match`,
6005
+ () => sdk.api.tickets.assign_from_queue({ queueId: queue.id }),
6006
+ { shouldError: true, onError: e => e.message === "Queue is empty" },
6007
+ )
6008
+ await sdk.api.users.updateOne(sdk.userInfo.id, { tags: ['A', 'B'] }, { replaceObjectFields: true })
6009
+ await async_test(
6010
+ `Ticket by all of tags`,
6011
+ () => sdk.api.tickets.assign_from_queue({ queueId: queue.id }),
6012
+ { onResult: r => r.ticket.id === allTagsTicket.id },
6013
+ )
6014
+
6015
+ const oneTagTicket = await sdk.api.tickets.createOne({ title: 'one tag', queueId: queue.id, enduserId: enduser.id, restrictByTagsQualifier: 'One Of', restrictByTags: ['A', 'B'] })
6016
+ await sdk.api.users.updateOne(sdk.userInfo.id, { tags: [] }, { replaceObjectFields: true })
6017
+ await async_test(
6018
+ `Ticket queue empty for no tags match`,
6019
+ () => sdk.api.tickets.assign_from_queue({ queueId: queue.id }),
6020
+ { shouldError: true, onError: e => e.message === "Queue is empty" },
6021
+ )
6022
+ await sdk.api.users.updateOne(sdk.userInfo.id, { tags: ['C'] }, { replaceObjectFields: true })
6023
+ await async_test(
6024
+ `Ticket queue empty for no tags match`,
6025
+ () => sdk.api.tickets.assign_from_queue({ queueId: queue.id }),
6026
+ { shouldError: true, onError: e => e.message === "Queue is empty" },
6027
+ )
6028
+ await sdk.api.users.updateOne(sdk.userInfo.id, { tags: ['A'] }, { replaceObjectFields: true })
6029
+ await async_test(
6030
+ `Ticket by all of tags`,
6031
+ () => sdk.api.tickets.assign_from_queue({ queueId: queue.id }),
6032
+ { onResult: r => r.ticket.id === oneTagTicket.id },
6033
+ )
5980
6034
 
5981
6035
  await Promise.all([
5982
6036
  sdk.api.ticket_queues.deleteOne(queue.id),
@@ -8245,13 +8299,13 @@ const vital_trigger_tests = async () => {
8245
8299
  await setup_tests()
8246
8300
  await multi_tenant_tests() // should come right after setup tests
8247
8301
  await sync_tests() // should come directly after setup to avoid extra sync values
8302
+ await self_serve_appointment_booking_tests()
8303
+ await ticket_queue_tests()
8248
8304
  await merge_enduser_tests()
8249
8305
  await vital_trigger_tests()
8250
- await ticket_queue_tests()
8251
8306
  await close_reasons_no_duplicates_tests()
8252
8307
  await register_as_enduser_tests()
8253
8308
  await lockout_tests()
8254
- await self_serve_appointment_booking_tests()
8255
8309
  await delete_user_tests()
8256
8310
  // await test_send_with_template()
8257
8311
  await bulk_read_tests()
Binary file