@tellescope/sdk 0.0.92 → 0.0.95
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/enduser.d.ts +36 -12
- package/lib/cjs/enduser.d.ts.map +1 -1
- package/lib/cjs/sdk.d.ts +36 -12
- package/lib/cjs/sdk.d.ts.map +1 -1
- package/lib/cjs/sdk.js +3 -2
- package/lib/cjs/sdk.js.map +1 -1
- package/lib/cjs/session.d.ts +22 -3
- package/lib/cjs/session.d.ts.map +1 -1
- package/lib/cjs/session.js +10 -1
- package/lib/cjs/session.js.map +1 -1
- package/lib/cjs/tests/tests.d.ts.map +1 -1
- package/lib/cjs/tests/tests.js +265 -37
- package/lib/cjs/tests/tests.js.map +1 -1
- package/lib/cjs/tests/webhooks_tests.js +2 -9
- package/lib/cjs/tests/webhooks_tests.js.map +1 -1
- package/lib/esm/enduser.d.ts +36 -12
- package/lib/esm/enduser.d.ts.map +1 -1
- package/lib/esm/sdk.d.ts +36 -12
- package/lib/esm/sdk.d.ts.map +1 -1
- package/lib/esm/sdk.js +3 -2
- package/lib/esm/sdk.js.map +1 -1
- package/lib/esm/session.d.ts +22 -2
- package/lib/esm/session.d.ts.map +1 -1
- package/lib/esm/session.js +10 -1
- package/lib/esm/session.js.map +1 -1
- package/lib/esm/tests/tests.d.ts.map +1 -1
- package/lib/esm/tests/tests.js +265 -37
- package/lib/esm/tests/tests.js.map +1 -1
- package/lib/esm/tests/webhooks_tests.js +2 -9
- package/lib/esm/tests/webhooks_tests.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -10
- package/src/sdk.ts +3 -2
- package/src/session.ts +22 -1
- package/src/tests/tests.ts +195 -16
- package/src/tests/webhooks_tests.ts +2 -9
package/lib/esm/tests/tests.js
CHANGED
|
@@ -471,7 +471,7 @@ var verify_missing_defaults = function (_a) {
|
|
|
471
471
|
o = _b[_i];
|
|
472
472
|
if (Object.keys(model.defaultActions).includes(o) || model.customActions[o])
|
|
473
473
|
return [3 /*break*/, 3]; // action is implemented
|
|
474
|
-
return [4 /*yield*/, async_test("".concat(o, " unavailable for ").concat(name), function () { return queryForOperation[o](); }, { shouldError: true, onError: function (e) { return e.message === 'This action is not allowed'; } })];
|
|
474
|
+
return [4 /*yield*/, async_test("".concat(o, " unavailable for ").concat(name), function () { return queryForOperation[o](); }, { shouldError: true, onError: function (e) { return e.message === 'This action is not allowed' || e.message === 'Inaccessible'; } })];
|
|
475
475
|
case 2:
|
|
476
476
|
_d.sent();
|
|
477
477
|
_d.label = 3;
|
|
@@ -1587,7 +1587,7 @@ var automation_events_tests = function () { return __awaiter(void 0, void 0, voi
|
|
|
1587
1587
|
})];
|
|
1588
1588
|
case 2:
|
|
1589
1589
|
journey = _j.sent();
|
|
1590
|
-
return [4 /*yield*/, async_test("enterState cannot match updateStateForJourney", function () { return sdk.api.
|
|
1590
|
+
return [4 /*yield*/, async_test("enterState cannot match updateStateForJourney", function () { return sdk.api.automation_steps.createOne({
|
|
1591
1591
|
journeyId: journey.id,
|
|
1592
1592
|
event: {
|
|
1593
1593
|
type: "enterState",
|
|
@@ -1600,7 +1600,7 @@ var automation_events_tests = function () { return __awaiter(void 0, void 0, voi
|
|
|
1600
1600
|
}); }, { shouldError: true, onError: function (e) { return e.message === 'updateStateForJourney cannot have the same journey and state as the enterState event'; } })];
|
|
1601
1601
|
case 3:
|
|
1602
1602
|
_j.sent();
|
|
1603
|
-
return [4 /*yield*/, async_test("leaveState cannot match updateStateForJourney", function () { return sdk.api.
|
|
1603
|
+
return [4 /*yield*/, async_test("leaveState cannot match updateStateForJourney", function () { return sdk.api.automation_steps.createOne({
|
|
1604
1604
|
journeyId: journey.id,
|
|
1605
1605
|
event: {
|
|
1606
1606
|
type: "leaveState",
|
|
@@ -1617,7 +1617,7 @@ var automation_events_tests = function () { return __awaiter(void 0, void 0, voi
|
|
|
1617
1617
|
type: 'sendWebhook',
|
|
1618
1618
|
info: { message: 'test' }
|
|
1619
1619
|
};
|
|
1620
|
-
return [4 /*yield*/, sdk.api.
|
|
1620
|
+
return [4 /*yield*/, sdk.api.automation_steps.createOne({
|
|
1621
1621
|
journeyId: journey.id,
|
|
1622
1622
|
event: {
|
|
1623
1623
|
type: "enterState",
|
|
@@ -1627,7 +1627,7 @@ var automation_events_tests = function () { return __awaiter(void 0, void 0, voi
|
|
|
1627
1627
|
})];
|
|
1628
1628
|
case 5:
|
|
1629
1629
|
_j.sent();
|
|
1630
|
-
return [4 /*yield*/, sdk.api.
|
|
1630
|
+
return [4 /*yield*/, sdk.api.automation_steps.createOne({
|
|
1631
1631
|
journeyId: journey.id,
|
|
1632
1632
|
event: {
|
|
1633
1633
|
type: "leaveState",
|
|
@@ -1637,7 +1637,7 @@ var automation_events_tests = function () { return __awaiter(void 0, void 0, voi
|
|
|
1637
1637
|
})];
|
|
1638
1638
|
case 6:
|
|
1639
1639
|
_j.sent();
|
|
1640
|
-
return [4 /*yield*/, sdk.api.
|
|
1640
|
+
return [4 /*yield*/, sdk.api.automation_steps.createOne({
|
|
1641
1641
|
journeyId: journey.id,
|
|
1642
1642
|
event: {
|
|
1643
1643
|
type: "enterState",
|
|
@@ -1647,7 +1647,7 @@ var automation_events_tests = function () { return __awaiter(void 0, void 0, voi
|
|
|
1647
1647
|
})];
|
|
1648
1648
|
case 7:
|
|
1649
1649
|
_j.sent();
|
|
1650
|
-
return [4 /*yield*/, sdk.api.
|
|
1650
|
+
return [4 /*yield*/, sdk.api.automation_steps.createOne({
|
|
1651
1651
|
journeyId: journey.id,
|
|
1652
1652
|
event: {
|
|
1653
1653
|
type: "formResponse",
|
|
@@ -1663,7 +1663,7 @@ var automation_events_tests = function () { return __awaiter(void 0, void 0, voi
|
|
|
1663
1663
|
})];
|
|
1664
1664
|
case 8:
|
|
1665
1665
|
_j.sent();
|
|
1666
|
-
return [4 /*yield*/, async_test("Cannot insert duplicate event/action pair", function () { return sdk.api.
|
|
1666
|
+
return [4 /*yield*/, async_test("Cannot insert duplicate event/action pair", function () { return sdk.api.automation_steps.createOne({
|
|
1667
1667
|
journeyId: journey.id,
|
|
1668
1668
|
event: {
|
|
1669
1669
|
type: "enterState",
|
|
@@ -1714,7 +1714,7 @@ var automation_events_tests = function () { return __awaiter(void 0, void 0, voi
|
|
|
1714
1714
|
case 15:
|
|
1715
1715
|
// SHOULD trigger now that user is in state 2
|
|
1716
1716
|
_j.sent();
|
|
1717
|
-
return [4 /*yield*/, async_test("Automation events triggered correctly", function () { return sdk.api.
|
|
1717
|
+
return [4 /*yield*/, async_test("Automation events triggered correctly", function () { return sdk.api.automated_actions.getSome({ filter: { enduserId: enduser.id } }); }, { onResult: function (es) { return es && es.length === 4 && es.filter(function (a) { return a.automationStepId === "ONE_TIME"; }).length === 4; } })
|
|
1718
1718
|
// cleanup
|
|
1719
1719
|
];
|
|
1720
1720
|
case 16:
|
|
@@ -1757,7 +1757,7 @@ var form_response_tests = function () { return __awaiter(void 0, void 0, void 0,
|
|
|
1757
1757
|
})];
|
|
1758
1758
|
case 2:
|
|
1759
1759
|
form = _e.sent();
|
|
1760
|
-
return [4 /*yield*/, sdk.api.
|
|
1760
|
+
return [4 /*yield*/, sdk.api.automation_steps.createOne({
|
|
1761
1761
|
event: { type: "formResponse", info: { formId: form.id } },
|
|
1762
1762
|
action: { type: 'sendWebhook', info: { message: 'test' } },
|
|
1763
1763
|
})];
|
|
@@ -1769,7 +1769,7 @@ var form_response_tests = function () { return __awaiter(void 0, void 0, void 0,
|
|
|
1769
1769
|
return [4 /*yield*/, sdk.api.form_responses.submit_form_response({ accessCode: accessCode, responses: [stringResponse] })];
|
|
1770
1770
|
case 5:
|
|
1771
1771
|
_e.sent();
|
|
1772
|
-
return [4 /*yield*/, sdk.api.
|
|
1772
|
+
return [4 /*yield*/, sdk.api.automated_actions.getSome()];
|
|
1773
1773
|
case 6:
|
|
1774
1774
|
triggeredAutomation = (_e.sent())[0];
|
|
1775
1775
|
return [4 /*yield*/, sdk.api.endusers.getOne(enduser.id)];
|
|
@@ -1882,6 +1882,230 @@ var notifications_tests = function () { return __awaiter(void 0, void 0, void 0,
|
|
|
1882
1882
|
}
|
|
1883
1883
|
});
|
|
1884
1884
|
}); };
|
|
1885
|
+
var handleAnyError = { shouldError: true, onError: function () { return true; } };
|
|
1886
|
+
var passOnAnyResult = { onResult: function () { return true; } };
|
|
1887
|
+
var role_based_access_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
1888
|
+
var adminId, nonAdminId, e, adminTicket, nonAdminTicket, nonAdminTicketNoEnduser, ticketCreatedByNonAdmin, email, sms, calendarEvent, chatRoom, chatMessage, chatMessage2;
|
|
1889
|
+
return __generator(this, function (_a) {
|
|
1890
|
+
switch (_a.label) {
|
|
1891
|
+
case 0:
|
|
1892
|
+
log_header("Role Based Access Tests");
|
|
1893
|
+
adminId = sdk.userInfo.id;
|
|
1894
|
+
nonAdminId = sdkNonAdmin.userInfo.id;
|
|
1895
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({ email: 'roletest@gmail.com' })];
|
|
1896
|
+
case 1:
|
|
1897
|
+
e = _a.sent();
|
|
1898
|
+
return [4 /*yield*/, sdk.api.tickets.createOne({ title: 'ticket', enduserId: e.id, owner: adminId })];
|
|
1899
|
+
case 2:
|
|
1900
|
+
adminTicket = _a.sent();
|
|
1901
|
+
return [4 /*yield*/, sdk.api.tickets.createOne({ title: 'ticket', enduserId: e.id, owner: nonAdminId })];
|
|
1902
|
+
case 3:
|
|
1903
|
+
nonAdminTicket = _a.sent();
|
|
1904
|
+
return [4 /*yield*/, sdk.api.tickets.createOne({ title: 'ticket', owner: nonAdminId })];
|
|
1905
|
+
case 4:
|
|
1906
|
+
nonAdminTicketNoEnduser = _a.sent();
|
|
1907
|
+
return [4 /*yield*/, sdkNonAdmin.api.tickets.createOne({ title: 'ticket' })];
|
|
1908
|
+
case 5:
|
|
1909
|
+
ticketCreatedByNonAdmin = _a.sent();
|
|
1910
|
+
return [4 /*yield*/, sdk.api.emails.createOne({ enduserId: e.id, logOnly: true, subject: 'blah', textContent: 'blah blah' })];
|
|
1911
|
+
case 6:
|
|
1912
|
+
email = _a.sent();
|
|
1913
|
+
return [4 /*yield*/, sdk.api.sms_messages.createOne({ enduserId: e.id, logOnly: true, message: 'blah blah' })];
|
|
1914
|
+
case 7:
|
|
1915
|
+
sms = _a.sent();
|
|
1916
|
+
return [4 /*yield*/, sdk.api.calendar_events.createOne({
|
|
1917
|
+
attendees: [{ id: e.id, type: 'enduser' }],
|
|
1918
|
+
durationInMinutes: 50,
|
|
1919
|
+
startTimeInMS: 2000000,
|
|
1920
|
+
title: 'Access Test'
|
|
1921
|
+
})];
|
|
1922
|
+
case 8:
|
|
1923
|
+
calendarEvent = _a.sent();
|
|
1924
|
+
return [4 /*yield*/, sdk.api.chat_rooms.createOne({ enduserIds: [e.id] })];
|
|
1925
|
+
case 9:
|
|
1926
|
+
chatRoom = _a.sent();
|
|
1927
|
+
return [4 /*yield*/, sdk.api.chats.createOne({ roomId: chatRoom.id, message: 'test chat access' })];
|
|
1928
|
+
case 10:
|
|
1929
|
+
chatMessage = _a.sent();
|
|
1930
|
+
return [4 /*yield*/, sdk.api.chats.createOne({ roomId: chatRoom.id, message: 'test chat access 2' })
|
|
1931
|
+
// unassigned to enduser access tests
|
|
1932
|
+
];
|
|
1933
|
+
case 11:
|
|
1934
|
+
chatMessage2 = _a.sent();
|
|
1935
|
+
// unassigned to enduser access tests
|
|
1936
|
+
return [4 /*yield*/, async_test("Admin / creator can access enduser without being assigned", function () { return sdk.api.endusers.getOne(e.id); }, { onResult: function (e) { return !!e; } })];
|
|
1937
|
+
case 12:
|
|
1938
|
+
// unassigned to enduser access tests
|
|
1939
|
+
_a.sent();
|
|
1940
|
+
return [4 /*yield*/, async_test("Unassigned non-admin can't access enduser without being assigned", function () { return sdkNonAdmin.api.endusers.getOne(e.id); }, handleAnyError)];
|
|
1941
|
+
case 13:
|
|
1942
|
+
_a.sent();
|
|
1943
|
+
return [4 /*yield*/, async_test("non-admin for enduser ticket bad", function () { return sdkNonAdmin.api.tickets.getOne(adminTicket.id); }, handleAnyError)];
|
|
1944
|
+
case 14:
|
|
1945
|
+
_a.sent();
|
|
1946
|
+
return [4 /*yield*/, async_test("Non-admin for ticket", function () { return sdkNonAdmin.api.tickets.getOne(nonAdminTicketNoEnduser.id); }, passOnAnyResult)];
|
|
1947
|
+
case 15:
|
|
1948
|
+
_a.sent();
|
|
1949
|
+
return [4 /*yield*/, async_test("Non-admin for enduser ticket", function () { return sdkNonAdmin.api.tickets.getOne(nonAdminTicket.id); }, passOnAnyResult)];
|
|
1950
|
+
case 16:
|
|
1951
|
+
_a.sent();
|
|
1952
|
+
return [4 /*yield*/, async_test("Non-admin for own ticket", function () { return sdkNonAdmin.api.tickets.getOne(ticketCreatedByNonAdmin.id); }, passOnAnyResult)];
|
|
1953
|
+
case 17:
|
|
1954
|
+
_a.sent();
|
|
1955
|
+
return [4 /*yield*/, async_test("Non-admin for tickets", function () { return sdkNonAdmin.api.tickets.getSome(); }, { onResult: function (ts) { return ts.length === 3; } })];
|
|
1956
|
+
case 18:
|
|
1957
|
+
_a.sent();
|
|
1958
|
+
return [4 /*yield*/, async_test("non-admin for email bad", function () { return sdkNonAdmin.api.emails.getOne(email.id); }, handleAnyError)];
|
|
1959
|
+
case 19:
|
|
1960
|
+
_a.sent();
|
|
1961
|
+
return [4 /*yield*/, async_test("non-admin for sms bad", function () { return sdkNonAdmin.api.sms_messages.getOne(sms.id); }, handleAnyError)];
|
|
1962
|
+
case 20:
|
|
1963
|
+
_a.sent();
|
|
1964
|
+
return [4 /*yield*/, async_test("admin for calendar", function () { return sdk.api.calendar_events.getOne(calendarEvent.id); }, passOnAnyResult)];
|
|
1965
|
+
case 21:
|
|
1966
|
+
_a.sent();
|
|
1967
|
+
return [4 /*yield*/, async_test("non-admin for calendar bad", function () { return sdkNonAdmin.api.calendar_events.getOne(calendarEvent.id); }, handleAnyError)];
|
|
1968
|
+
case 22:
|
|
1969
|
+
_a.sent();
|
|
1970
|
+
return [4 /*yield*/, async_test("non-admin for chat room bad", function () { return sdkNonAdmin.api.chat_rooms.getOne(chatRoom.id); }, handleAnyError)];
|
|
1971
|
+
case 23:
|
|
1972
|
+
_a.sent();
|
|
1973
|
+
return [4 /*yield*/, async_test("non-admin for chat message bad", function () { return sdkNonAdmin.api.chats.getOne(chatMessage.id); }, handleAnyError)];
|
|
1974
|
+
case 24:
|
|
1975
|
+
_a.sent();
|
|
1976
|
+
return [4 /*yield*/, async_test("Non-admin for chats", function () { return sdkNonAdmin.api.chats.getSome({ filter: { roomId: chatRoom.id } }); }, handleAnyError)
|
|
1977
|
+
// unassigned update / delete coverage
|
|
1978
|
+
];
|
|
1979
|
+
case 25:
|
|
1980
|
+
_a.sent();
|
|
1981
|
+
// unassigned update / delete coverage
|
|
1982
|
+
return [4 /*yield*/, async_test("non-admin for enduser ticket update bad", function () { return sdkNonAdmin.api.tickets.updateOne(adminTicket.id, { title: 'updated' }); }, handleAnyError)];
|
|
1983
|
+
case 26:
|
|
1984
|
+
// unassigned update / delete coverage
|
|
1985
|
+
_a.sent();
|
|
1986
|
+
return [4 /*yield*/, async_test("non-admin for enduser ticket delete bad", function () { return sdkNonAdmin.api.tickets.deleteOne(adminTicket.id); }, handleAnyError)];
|
|
1987
|
+
case 27:
|
|
1988
|
+
_a.sent();
|
|
1989
|
+
return [4 /*yield*/, async_test("non-admin can't delete tickets by default (even with access)", function () { return sdkNonAdmin.api.tickets.deleteOne(nonAdminTicket.id); }, handleAnyError)
|
|
1990
|
+
// set assignees
|
|
1991
|
+
];
|
|
1992
|
+
case 28:
|
|
1993
|
+
_a.sent();
|
|
1994
|
+
// set assignees
|
|
1995
|
+
return [4 /*yield*/, sdk.api.endusers.updateOne(e.id, { assignedTo: [sdk.userInfo.id, sdkNonAdmin.userInfo.id] })
|
|
1996
|
+
// assigned access tests
|
|
1997
|
+
];
|
|
1998
|
+
case 29:
|
|
1999
|
+
// set assignees
|
|
2000
|
+
_a.sent();
|
|
2001
|
+
// assigned access tests
|
|
2002
|
+
return [4 /*yield*/, async_test("Admin / creator can access enduser while assigned", function () { return sdk.api.endusers.getOne(e.id); }, passOnAnyResult)];
|
|
2003
|
+
case 30:
|
|
2004
|
+
// assigned access tests
|
|
2005
|
+
_a.sent();
|
|
2006
|
+
return [4 /*yield*/, async_test("Unassigned non-admin can access enduser while assigned", function () { return sdkNonAdmin.api.endusers.getOne(e.id); }, passOnAnyResult)];
|
|
2007
|
+
case 31:
|
|
2008
|
+
_a.sent();
|
|
2009
|
+
return [4 /*yield*/, async_test("non-admin for enduser ticket", function () { return sdkNonAdmin.api.tickets.getOne(adminTicket.id); }, passOnAnyResult)];
|
|
2010
|
+
case 32:
|
|
2011
|
+
_a.sent();
|
|
2012
|
+
return [4 /*yield*/, async_test("Non-admin for ticket", function () { return sdkNonAdmin.api.tickets.getOne(nonAdminTicketNoEnduser.id); }, passOnAnyResult)];
|
|
2013
|
+
case 33:
|
|
2014
|
+
_a.sent();
|
|
2015
|
+
return [4 /*yield*/, async_test("Non-admin for enduser ticket", function () { return sdkNonAdmin.api.tickets.getOne(nonAdminTicket.id); }, passOnAnyResult)];
|
|
2016
|
+
case 34:
|
|
2017
|
+
_a.sent();
|
|
2018
|
+
return [4 /*yield*/, async_test("Non-admin for tickets", function () { return sdkNonAdmin.api.tickets.getSome(); }, { onResult: function (ts) { return ts.length === 4; } })];
|
|
2019
|
+
case 35:
|
|
2020
|
+
_a.sent();
|
|
2021
|
+
return [4 /*yield*/, async_test("non-admin for email", function () { return sdkNonAdmin.api.emails.getOne(email.id); }, passOnAnyResult)];
|
|
2022
|
+
case 36:
|
|
2023
|
+
_a.sent();
|
|
2024
|
+
return [4 /*yield*/, async_test("non-admin for sms", function () { return sdkNonAdmin.api.sms_messages.getOne(sms.id); }, passOnAnyResult)];
|
|
2025
|
+
case 37:
|
|
2026
|
+
_a.sent();
|
|
2027
|
+
return [4 /*yield*/, async_test("non-admin for calendar", function () { return sdkNonAdmin.api.calendar_events.getOne(calendarEvent.id); }, passOnAnyResult)];
|
|
2028
|
+
case 38:
|
|
2029
|
+
_a.sent();
|
|
2030
|
+
return [4 /*yield*/, async_test("non-admin for chat room", function () { return sdkNonAdmin.api.chat_rooms.getOne(chatRoom.id); }, passOnAnyResult)];
|
|
2031
|
+
case 39:
|
|
2032
|
+
_a.sent();
|
|
2033
|
+
return [4 /*yield*/, async_test("non-admin for chat message", function () { return sdkNonAdmin.api.chats.getOne(chatMessage.id); }, passOnAnyResult)];
|
|
2034
|
+
case 40:
|
|
2035
|
+
_a.sent();
|
|
2036
|
+
return [4 /*yield*/, async_test("Non-admin for chats", function () { return sdkNonAdmin.api.chats.getSome({ filter: { roomId: chatRoom.id } }); }, { onResult: function (cs) { return cs.length === 2; } })
|
|
2037
|
+
// update / delete coverage for assigned tickets
|
|
2038
|
+
];
|
|
2039
|
+
case 41:
|
|
2040
|
+
_a.sent();
|
|
2041
|
+
// update / delete coverage for assigned tickets
|
|
2042
|
+
return [4 /*yield*/, async_test("non-admin assigned enduser ticket update find", function () { return sdkNonAdmin.api.tickets.updateOne(adminTicket.id, { title: 'updated' }); }, passOnAnyResult)];
|
|
2043
|
+
case 42:
|
|
2044
|
+
// update / delete coverage for assigned tickets
|
|
2045
|
+
_a.sent();
|
|
2046
|
+
return [4 /*yield*/, async_test("non-admin for enduser ticket delete still bad", function () { return sdkNonAdmin.api.tickets.deleteOne(adminTicket.id); }, handleAnyError)
|
|
2047
|
+
// cleanup
|
|
2048
|
+
];
|
|
2049
|
+
case 43:
|
|
2050
|
+
_a.sent();
|
|
2051
|
+
// cleanup
|
|
2052
|
+
return [4 /*yield*/, Promise.all([
|
|
2053
|
+
sdk.api.endusers.deleteOne(e.id),
|
|
2054
|
+
sdk.api.tickets.deleteOne(adminTicket.id),
|
|
2055
|
+
sdk.api.tickets.deleteOne(nonAdminTicket.id),
|
|
2056
|
+
sdk.api.tickets.deleteOne(nonAdminTicketNoEnduser.id),
|
|
2057
|
+
sdk.api.tickets.deleteOne(ticketCreatedByNonAdmin.id),
|
|
2058
|
+
sdk.api.emails.deleteOne(email.id),
|
|
2059
|
+
sdk.api.sms_messages.deleteOne(sms.id),
|
|
2060
|
+
sdk.api.calendar_events.deleteOne(calendarEvent.id),
|
|
2061
|
+
sdk.api.chat_rooms.deleteOne(chatRoom.id),
|
|
2062
|
+
sdk.api.chats.deleteOne(chatMessage.id),
|
|
2063
|
+
sdk.api.chats.deleteOne(chatMessage2.id),
|
|
2064
|
+
])];
|
|
2065
|
+
case 44:
|
|
2066
|
+
// cleanup
|
|
2067
|
+
_a.sent();
|
|
2068
|
+
return [2 /*return*/];
|
|
2069
|
+
}
|
|
2070
|
+
});
|
|
2071
|
+
}); };
|
|
2072
|
+
var status_update_tests = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
2073
|
+
var journey, enduser, status;
|
|
2074
|
+
return __generator(this, function (_a) {
|
|
2075
|
+
switch (_a.label) {
|
|
2076
|
+
case 0:
|
|
2077
|
+
log_header("Enduser Status Updates");
|
|
2078
|
+
return [4 /*yield*/, sdk.api.journeys.createOne({ title: 'test' })];
|
|
2079
|
+
case 1:
|
|
2080
|
+
journey = _a.sent();
|
|
2081
|
+
return [4 /*yield*/, sdk.api.endusers.createOne({ email: 'delete@tellescope.com' })];
|
|
2082
|
+
case 2:
|
|
2083
|
+
enduser = _a.sent();
|
|
2084
|
+
return [4 /*yield*/, sdk.api.enduser_status_updates.createOne({ enduserId: enduser.id, journeyId: journey.id, status: "Working" })
|
|
2085
|
+
// status update on enduser is a side effect
|
|
2086
|
+
];
|
|
2087
|
+
case 3:
|
|
2088
|
+
status = _a.sent();
|
|
2089
|
+
// status update on enduser is a side effect
|
|
2090
|
+
return [4 /*yield*/, wait(undefined, 100)];
|
|
2091
|
+
case 4:
|
|
2092
|
+
// status update on enduser is a side effect
|
|
2093
|
+
_a.sent();
|
|
2094
|
+
return [4 /*yield*/, async_test("status update", function () { return sdk.api.endusers.getOne(enduser.id); }, {
|
|
2095
|
+
onResult: function (e) { var _a; return ((_a = e.journeys) === null || _a === void 0 ? void 0 : _a[journey.id]) === status.status; }
|
|
2096
|
+
})];
|
|
2097
|
+
case 5:
|
|
2098
|
+
_a.sent();
|
|
2099
|
+
return [4 /*yield*/, Promise.all([
|
|
2100
|
+
sdk.api.journeys.deleteOne(journey.id),
|
|
2101
|
+
sdk.api.endusers.deleteOne(enduser.id), // status deleted as side effect
|
|
2102
|
+
])];
|
|
2103
|
+
case 6:
|
|
2104
|
+
_a.sent();
|
|
2105
|
+
return [2 /*return*/];
|
|
2106
|
+
}
|
|
2107
|
+
});
|
|
2108
|
+
}); };
|
|
1885
2109
|
var NO_TEST = function () { };
|
|
1886
2110
|
var tests = {
|
|
1887
2111
|
chats: chat_tests,
|
|
@@ -1903,9 +2127,10 @@ var tests = {
|
|
|
1903
2127
|
form_responses: form_response_tests,
|
|
1904
2128
|
calendar_events: calendar_events_tests,
|
|
1905
2129
|
webhooks: NO_TEST,
|
|
1906
|
-
|
|
2130
|
+
automation_steps: automation_events_tests,
|
|
1907
2131
|
sequence_automations: NO_TEST,
|
|
1908
|
-
|
|
2132
|
+
automated_actions: NO_TEST,
|
|
2133
|
+
enduser_status_updates: status_update_tests,
|
|
1909
2134
|
user_logs: NO_TEST,
|
|
1910
2135
|
user_notifications: notifications_tests,
|
|
1911
2136
|
};
|
|
@@ -1918,7 +2143,7 @@ var tests = {
|
|
|
1918
2143
|
log_header("API");
|
|
1919
2144
|
_h.label = 1;
|
|
1920
2145
|
case 1:
|
|
1921
|
-
_h.trys.push([1,
|
|
2146
|
+
_h.trys.push([1, 14, , 15]);
|
|
1922
2147
|
return [4 /*yield*/, Promise.all([
|
|
1923
2148
|
sdk.authenticate(email, password),
|
|
1924
2149
|
sdkNonAdmin.authenticate(nonAdminEmail, nonAdminPassword),
|
|
@@ -1955,21 +2180,24 @@ var tests = {
|
|
|
1955
2180
|
return [4 /*yield*/, enduser_session_tests()];
|
|
1956
2181
|
case 12:
|
|
1957
2182
|
_h.sent();
|
|
1958
|
-
return [
|
|
2183
|
+
return [4 /*yield*/, role_based_access_tests()];
|
|
1959
2184
|
case 13:
|
|
2185
|
+
_h.sent();
|
|
2186
|
+
return [3 /*break*/, 15];
|
|
2187
|
+
case 14:
|
|
1960
2188
|
err_1 = _h.sent();
|
|
1961
2189
|
console.error("Failed during custom test");
|
|
1962
2190
|
console.error(err_1);
|
|
1963
2191
|
process.exit(1);
|
|
1964
|
-
return [3 /*break*/,
|
|
1965
|
-
case
|
|
2192
|
+
return [3 /*break*/, 15];
|
|
2193
|
+
case 15:
|
|
1966
2194
|
_a = [];
|
|
1967
2195
|
for (_b in schema)
|
|
1968
2196
|
_a.push(_b);
|
|
1969
2197
|
_i = 0;
|
|
1970
|
-
_h.label =
|
|
1971
|
-
case
|
|
1972
|
-
if (!(_i < _a.length)) return [3 /*break*/,
|
|
2198
|
+
_h.label = 16;
|
|
2199
|
+
case 16:
|
|
2200
|
+
if (!(_i < _a.length)) return [3 /*break*/, 19];
|
|
1973
2201
|
n = _a[_i];
|
|
1974
2202
|
returnValidation = (_g = (_f = schema[n].customActions) === null || _f === void 0 ? void 0 : _f.create) === null || _g === void 0 ? void 0 : _g.returns;
|
|
1975
2203
|
return [4 /*yield*/, run_generated_tests({
|
|
@@ -1980,38 +2208,38 @@ var tests = {
|
|
|
1980
2208
|
create: returnValidation // ModelFields<ClientModel>,
|
|
1981
2209
|
}
|
|
1982
2210
|
})];
|
|
1983
|
-
case 16:
|
|
1984
|
-
_h.sent();
|
|
1985
|
-
_h.label = 17;
|
|
1986
2211
|
case 17:
|
|
1987
|
-
|
|
1988
|
-
|
|
2212
|
+
_h.sent();
|
|
2213
|
+
_h.label = 18;
|
|
1989
2214
|
case 18:
|
|
2215
|
+
_i++;
|
|
2216
|
+
return [3 /*break*/, 16];
|
|
2217
|
+
case 19:
|
|
1990
2218
|
_c = [];
|
|
1991
2219
|
for (_d in tests)
|
|
1992
2220
|
_c.push(_d);
|
|
1993
2221
|
_e = 0;
|
|
1994
|
-
_h.label = 19;
|
|
1995
|
-
case 19:
|
|
1996
|
-
if (!(_e < _c.length)) return [3 /*break*/, 24];
|
|
1997
|
-
t = _c[_e];
|
|
1998
2222
|
_h.label = 20;
|
|
1999
2223
|
case 20:
|
|
2000
|
-
|
|
2001
|
-
|
|
2224
|
+
if (!(_e < _c.length)) return [3 /*break*/, 25];
|
|
2225
|
+
t = _c[_e];
|
|
2226
|
+
_h.label = 21;
|
|
2002
2227
|
case 21:
|
|
2003
|
-
_h.
|
|
2004
|
-
return [
|
|
2228
|
+
_h.trys.push([21, 23, , 24]);
|
|
2229
|
+
return [4 /*yield*/, tests[t]()];
|
|
2005
2230
|
case 22:
|
|
2231
|
+
_h.sent();
|
|
2232
|
+
return [3 /*break*/, 24];
|
|
2233
|
+
case 23:
|
|
2006
2234
|
err_2 = _h.sent();
|
|
2007
2235
|
console.error("Error running test:");
|
|
2008
2236
|
console.error(err_2);
|
|
2009
2237
|
process.exit(1);
|
|
2010
|
-
return [3 /*break*/,
|
|
2011
|
-
case 23:
|
|
2012
|
-
_e++;
|
|
2013
|
-
return [3 /*break*/, 19];
|
|
2238
|
+
return [3 /*break*/, 24];
|
|
2014
2239
|
case 24:
|
|
2240
|
+
_e++;
|
|
2241
|
+
return [3 /*break*/, 20];
|
|
2242
|
+
case 25:
|
|
2015
2243
|
process.exit();
|
|
2016
2244
|
return [2 /*return*/];
|
|
2017
2245
|
}
|