@webex/calling 3.0.0-next.6 → 3.0.0-next.7

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 (161) hide show
  1. package/dist/CallHistory/CallHistory.js +203 -0
  2. package/dist/CallHistory/CallHistory.js.map +1 -0
  3. package/dist/CallHistory/CallHistory.test.js +133 -0
  4. package/dist/CallHistory/CallHistory.test.js.map +1 -0
  5. package/dist/CallHistory/callHistoryFixtures.js +310 -0
  6. package/dist/CallHistory/callHistoryFixtures.js.map +1 -0
  7. package/dist/CallHistory/constants.js +26 -0
  8. package/dist/CallHistory/constants.js.map +1 -0
  9. package/dist/CallHistory/types.js +7 -0
  10. package/dist/CallHistory/types.js.map +1 -0
  11. package/dist/CallSettings/CallSettings.js +276 -0
  12. package/dist/CallSettings/CallSettings.js.map +1 -0
  13. package/dist/CallSettings/CallSettings.test.js +122 -0
  14. package/dist/CallSettings/CallSettings.test.js.map +1 -0
  15. package/dist/CallSettings/UcmBackendConnector.js +217 -0
  16. package/dist/CallSettings/UcmBackendConnector.js.map +1 -0
  17. package/dist/CallSettings/UcmBackendConnector.test.js +227 -0
  18. package/dist/CallSettings/UcmBackendConnector.test.js.map +1 -0
  19. package/dist/CallSettings/WxCallBackendConnector.js +541 -0
  20. package/dist/CallSettings/WxCallBackendConnector.js.map +1 -0
  21. package/dist/CallSettings/WxCallBackendConnector.test.js +802 -0
  22. package/dist/CallSettings/WxCallBackendConnector.test.js.map +1 -0
  23. package/dist/CallSettings/constants.js +30 -0
  24. package/dist/CallSettings/constants.js.map +1 -0
  25. package/dist/CallSettings/testFixtures.js +72 -0
  26. package/dist/CallSettings/testFixtures.js.map +1 -0
  27. package/dist/CallSettings/types.js +7 -0
  28. package/dist/CallSettings/types.js.map +1 -0
  29. package/dist/CallingClient/CallingClient.js +572 -0
  30. package/dist/CallingClient/CallingClient.js.map +1 -0
  31. package/dist/CallingClient/CallingClient.test.js +931 -0
  32. package/dist/CallingClient/CallingClient.test.js.map +1 -0
  33. package/dist/CallingClient/callRecordFixtures.js +103 -0
  34. package/dist/CallingClient/callRecordFixtures.js.map +1 -0
  35. package/dist/CallingClient/calling/CallerId/index.js +287 -0
  36. package/dist/CallingClient/calling/CallerId/index.js.map +1 -0
  37. package/dist/CallingClient/calling/CallerId/index.test.js +274 -0
  38. package/dist/CallingClient/calling/CallerId/index.test.js.map +1 -0
  39. package/dist/CallingClient/calling/CallerId/types.js +7 -0
  40. package/dist/CallingClient/calling/CallerId/types.js.map +1 -0
  41. package/dist/CallingClient/calling/call.js +2995 -0
  42. package/dist/CallingClient/calling/call.js.map +1 -0
  43. package/dist/CallingClient/calling/call.test.js +2614 -0
  44. package/dist/CallingClient/calling/call.test.js.map +1 -0
  45. package/dist/CallingClient/calling/callManager.js +443 -0
  46. package/dist/CallingClient/calling/callManager.js.map +1 -0
  47. package/dist/CallingClient/calling/callManager.test.js +683 -0
  48. package/dist/CallingClient/calling/callManager.test.js.map +1 -0
  49. package/dist/CallingClient/calling/index.js +30 -0
  50. package/dist/CallingClient/calling/index.js.map +1 -0
  51. package/dist/CallingClient/calling/types.js +71 -0
  52. package/dist/CallingClient/calling/types.js.map +1 -0
  53. package/dist/CallingClient/callingClientFixtures.js +53 -0
  54. package/dist/CallingClient/callingClientFixtures.js.map +1 -0
  55. package/dist/CallingClient/constants.js +226 -0
  56. package/dist/CallingClient/constants.js.map +1 -0
  57. package/dist/CallingClient/line/index.js +312 -0
  58. package/dist/CallingClient/line/index.js.map +1 -0
  59. package/dist/CallingClient/line/line.test.js +270 -0
  60. package/dist/CallingClient/line/line.test.js.map +1 -0
  61. package/dist/CallingClient/line/types.js +25 -0
  62. package/dist/CallingClient/line/types.js.map +1 -0
  63. package/dist/CallingClient/registration/index.js +19 -0
  64. package/dist/CallingClient/registration/index.js.map +1 -0
  65. package/dist/CallingClient/registration/register.js +1295 -0
  66. package/dist/CallingClient/registration/register.js.map +1 -0
  67. package/dist/CallingClient/registration/register.test.js +838 -0
  68. package/dist/CallingClient/registration/register.test.js.map +1 -0
  69. package/dist/CallingClient/registration/registerFixtures.js +41 -0
  70. package/dist/CallingClient/registration/registerFixtures.js.map +1 -0
  71. package/dist/CallingClient/registration/types.js +7 -0
  72. package/dist/CallingClient/registration/types.js.map +1 -0
  73. package/dist/CallingClient/types.js +7 -0
  74. package/dist/CallingClient/types.js.map +1 -0
  75. package/dist/Contacts/ContactsClient.js +1139 -0
  76. package/dist/Contacts/ContactsClient.js.map +1 -0
  77. package/dist/Contacts/ContactsClient.test.js +725 -0
  78. package/dist/Contacts/ContactsClient.test.js.map +1 -0
  79. package/dist/Contacts/constants.js +36 -0
  80. package/dist/Contacts/constants.js.map +1 -0
  81. package/dist/Contacts/contactFixtures.js +340 -0
  82. package/dist/Contacts/contactFixtures.js.map +1 -0
  83. package/dist/Contacts/types.js +20 -0
  84. package/dist/Contacts/types.js.map +1 -0
  85. package/dist/Errors/catalog/CallError.js +94 -0
  86. package/dist/Errors/catalog/CallError.js.map +1 -0
  87. package/dist/Errors/catalog/CallingDeviceError.js +88 -0
  88. package/dist/Errors/catalog/CallingDeviceError.js.map +1 -0
  89. package/dist/Errors/catalog/ExtendedError.js +45 -0
  90. package/dist/Errors/catalog/ExtendedError.js.map +1 -0
  91. package/dist/Errors/catalog/LineError.js +90 -0
  92. package/dist/Errors/catalog/LineError.js.map +1 -0
  93. package/dist/Errors/index.js +21 -0
  94. package/dist/Errors/index.js.map +1 -0
  95. package/dist/Errors/types.js +62 -0
  96. package/dist/Errors/types.js.map +1 -0
  97. package/dist/Events/impl/index.js +82 -0
  98. package/dist/Events/impl/index.js.map +1 -0
  99. package/dist/Events/types.js +111 -0
  100. package/dist/Events/types.js.map +1 -0
  101. package/dist/Logger/index.js +221 -0
  102. package/dist/Logger/index.js.map +1 -0
  103. package/dist/Logger/index.test.js +62 -0
  104. package/dist/Logger/index.test.js.map +1 -0
  105. package/dist/Logger/types.js +37 -0
  106. package/dist/Logger/types.js.map +1 -0
  107. package/dist/Metrics/index.js +329 -0
  108. package/dist/Metrics/index.js.map +1 -0
  109. package/dist/Metrics/index.test.js +291 -0
  110. package/dist/Metrics/index.test.js.map +1 -0
  111. package/dist/Metrics/types.js +50 -0
  112. package/dist/Metrics/types.js.map +1 -0
  113. package/dist/SDKConnector/index.js +105 -0
  114. package/dist/SDKConnector/index.js.map +1 -0
  115. package/dist/SDKConnector/index.test.js +9 -0
  116. package/dist/SDKConnector/index.test.js.map +1 -0
  117. package/dist/SDKConnector/types.js +7 -0
  118. package/dist/SDKConnector/types.js.map +1 -0
  119. package/dist/SDKConnector/utils.js +40 -0
  120. package/dist/SDKConnector/utils.js.map +1 -0
  121. package/dist/SDKConnector/utils.test.js +9 -0
  122. package/dist/SDKConnector/utils.test.js.map +1 -0
  123. package/dist/Voicemail/BroadworksBackendConnector.js +632 -0
  124. package/dist/Voicemail/BroadworksBackendConnector.js.map +1 -0
  125. package/dist/Voicemail/BroadworksBackendConnector.test.js +733 -0
  126. package/dist/Voicemail/BroadworksBackendConnector.test.js.map +1 -0
  127. package/dist/Voicemail/UcmBackendConnector.js +566 -0
  128. package/dist/Voicemail/UcmBackendConnector.js.map +1 -0
  129. package/dist/Voicemail/UcmBackendConnector.test.js +628 -0
  130. package/dist/Voicemail/UcmBackendConnector.test.js.map +1 -0
  131. package/dist/Voicemail/Voicemail.js +378 -0
  132. package/dist/Voicemail/Voicemail.js.map +1 -0
  133. package/dist/Voicemail/Voicemail.test.js +226 -0
  134. package/dist/Voicemail/Voicemail.test.js.map +1 -0
  135. package/dist/Voicemail/WxCallBackendConnector.js +540 -0
  136. package/dist/Voicemail/WxCallBackendConnector.js.map +1 -0
  137. package/dist/Voicemail/WxCallBackendConnector.test.js +942 -0
  138. package/dist/Voicemail/WxCallBackendConnector.test.js.map +1 -0
  139. package/dist/Voicemail/constants.js +66 -0
  140. package/dist/Voicemail/constants.js.map +1 -0
  141. package/dist/Voicemail/types.js +7 -0
  142. package/dist/Voicemail/types.js.map +1 -0
  143. package/dist/Voicemail/voicemailFixture.js +559 -0
  144. package/dist/Voicemail/voicemailFixture.js.map +1 -0
  145. package/dist/api.js +134 -0
  146. package/dist/api.js.map +1 -0
  147. package/dist/common/Utils.js +1264 -0
  148. package/dist/common/Utils.js.map +1 -0
  149. package/dist/common/Utils.test.js +1227 -0
  150. package/dist/common/Utils.test.js.map +1 -0
  151. package/dist/common/constants.js +90 -0
  152. package/dist/common/constants.js.map +1 -0
  153. package/dist/common/index.js +19 -0
  154. package/dist/common/index.js.map +1 -0
  155. package/dist/common/testUtil.js +968 -0
  156. package/dist/common/testUtil.js.map +1 -0
  157. package/dist/common/types.js +75 -0
  158. package/dist/common/types.js.map +1 -0
  159. package/dist/index.js +63 -0
  160. package/dist/index.js.map +1 -0
  161. package/package.json +2 -2
@@ -0,0 +1,942 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime-corejs2/helpers/typeof");
4
+ var _Object$keys = require("@babel/runtime-corejs2/core-js/object/keys");
5
+ var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs2/core-js/object/get-own-property-symbols");
6
+ var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptor");
7
+ var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptors");
8
+ var _Object$defineProperties = require("@babel/runtime-corejs2/core-js/object/define-properties");
9
+ var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
10
+ var _WeakMap = require("@babel/runtime-corejs2/core-js/weak-map");
11
+ var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
12
+ var _stringify = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/json/stringify"));
13
+ var _regenerator = _interopRequireDefault(require("@babel/runtime-corejs2/regenerator"));
14
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
15
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
16
+ var _types = require("../Logger/types");
17
+ var _testUtil = require("../common/testUtil");
18
+ var _types2 = require("../common/types");
19
+ var _constants = require("./constants");
20
+ var _voicemailFixture = require("./voicemailFixture");
21
+ var _WxCallBackendConnector = require("./WxCallBackendConnector");
22
+ var utils = _interopRequireWildcard(require("../common/Utils"));
23
+ function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
24
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
25
+ function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
26
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
27
+ describe('Voicemail webex call Backend Connector Test case', function () {
28
+ var wxCallBackendConnector;
29
+ var webex = (0, _testUtil.getTestUtilsWebex)();
30
+ var CONTEXT = 'context';
31
+ var getSortedVoicemailListSpy;
32
+ var storeVoicemailListSpy;
33
+ var fetchVoicemailListSpy;
34
+ var messageId = _voicemailFixture.mockVoicemailBody.body.items[0].messageId;
35
+ beforeAll(function () {
36
+ wxCallBackendConnector = new _WxCallBackendConnector.WxCallBackendConnector(webex, {
37
+ level: _types.LOGGER.INFO
38
+ });
39
+ wxCallBackendConnector.init();
40
+ wxCallBackendConnector['context'] = CONTEXT;
41
+ wxCallBackendConnector.getSDKConnector();
42
+ });
43
+ beforeEach(function () {
44
+ getSortedVoicemailListSpy = jest.spyOn(utils, 'getSortedVoicemailList');
45
+ storeVoicemailListSpy = jest.spyOn(utils, 'storeVoicemailList');
46
+ fetchVoicemailListSpy = jest.spyOn(utils, 'fetchVoicemailList');
47
+ });
48
+ describe('Voicemail failure tests for webex call', function () {
49
+ var FAILURE = 'FAILURE';
50
+ var serviceErrorCodeHandlerSpy;
51
+ beforeAll(function () {
52
+ var voiceMailPayload = _voicemailFixture.mockWXCData;
53
+ webex.request.mockResolvedValueOnce(voiceMailPayload);
54
+ wxCallBackendConnector.init();
55
+ });
56
+ beforeEach(function () {
57
+ serviceErrorCodeHandlerSpy = jest.spyOn(utils, 'serviceErrorCodeHandler');
58
+ });
59
+ afterEach(function () {
60
+ expect(getSortedVoicemailListSpy).not.toBeCalled();
61
+ expect(storeVoicemailListSpy).not.toBeCalled();
62
+ expect(fetchVoicemailListSpy).not.toBeCalled();
63
+ });
64
+ it('verify failure voicemail listing when bad request occur', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
65
+ var failurePayload, response, responseDetails;
66
+ return _regenerator.default.wrap(function _callee$(_context) {
67
+ while (1) switch (_context.prev = _context.next) {
68
+ case 0:
69
+ failurePayload = {
70
+ statusCode: 400
71
+ };
72
+ webex.request.mockRejectedValueOnce(failurePayload);
73
+ _context.next = 4;
74
+ return wxCallBackendConnector.getVoicemailList(0, 20, _types2.SORT.DESC, true);
75
+ case 4:
76
+ response = _context.sent;
77
+ responseDetails = {
78
+ statusCode: 400,
79
+ data: {
80
+ error: '400 Bad request'
81
+ },
82
+ message: FAILURE
83
+ };
84
+ expect(response).toStrictEqual(responseDetails);
85
+ expect(response.message).toBe(FAILURE);
86
+ expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith({
87
+ statusCode: 400
88
+ }, {
89
+ file: 'WxCallBackendConnector',
90
+ method: 'getVoicemailList'
91
+ });
92
+ case 9:
93
+ case "end":
94
+ return _context.stop();
95
+ }
96
+ }, _callee);
97
+ })));
98
+ it('verify failure voicemailMarkAsRead when bad request occur', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
99
+ var failurePayload, responseDetails, response;
100
+ return _regenerator.default.wrap(function _callee2$(_context2) {
101
+ while (1) switch (_context2.prev = _context2.next) {
102
+ case 0:
103
+ failurePayload = {
104
+ statusCode: 400
105
+ };
106
+ webex.request.mockRejectedValue(failurePayload);
107
+ responseDetails = {
108
+ statusCode: 400,
109
+ data: {
110
+ error: '400 Bad request'
111
+ },
112
+ message: FAILURE
113
+ };
114
+ _context2.next = 5;
115
+ return wxCallBackendConnector.voicemailMarkAsRead(messageId.$);
116
+ case 5:
117
+ response = _context2.sent;
118
+ expect(response).toStrictEqual(responseDetails);
119
+ expect(response.message).toBe(FAILURE);
120
+ expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith({
121
+ statusCode: 400
122
+ }, {
123
+ file: 'WxCallBackendConnector',
124
+ method: 'voicemailMarkAsRead'
125
+ });
126
+ case 9:
127
+ case "end":
128
+ return _context2.stop();
129
+ }
130
+ }, _callee2);
131
+ })));
132
+ it('verify failure voicemailMarkAsUnread when bad request occur', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
133
+ var failurePayload, responseDetails, response;
134
+ return _regenerator.default.wrap(function _callee3$(_context3) {
135
+ while (1) switch (_context3.prev = _context3.next) {
136
+ case 0:
137
+ failurePayload = {
138
+ statusCode: 400
139
+ };
140
+ webex.request.mockRejectedValue(failurePayload);
141
+ responseDetails = {
142
+ statusCode: 400,
143
+ data: {
144
+ error: '400 Bad request'
145
+ },
146
+ message: FAILURE
147
+ };
148
+ _context3.next = 5;
149
+ return wxCallBackendConnector.voicemailMarkAsUnread(messageId.$);
150
+ case 5:
151
+ response = _context3.sent;
152
+ expect(response).toStrictEqual(responseDetails);
153
+ expect(response.message).toBe(FAILURE);
154
+ expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith({
155
+ statusCode: 400
156
+ }, {
157
+ file: 'WxCallBackendConnector',
158
+ method: 'voicemailMarkAsUnread'
159
+ });
160
+ case 9:
161
+ case "end":
162
+ return _context3.stop();
163
+ }
164
+ }, _callee3);
165
+ })));
166
+ it('verify failure delete Voicemail when bad request occur', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {
167
+ var failurePayload, responseDetails, response;
168
+ return _regenerator.default.wrap(function _callee4$(_context4) {
169
+ while (1) switch (_context4.prev = _context4.next) {
170
+ case 0:
171
+ failurePayload = {
172
+ statusCode: 400
173
+ };
174
+ webex.request.mockRejectedValue(failurePayload);
175
+ responseDetails = {
176
+ statusCode: 400,
177
+ data: {
178
+ error: '400 Bad request'
179
+ },
180
+ message: FAILURE
181
+ };
182
+ _context4.next = 5;
183
+ return wxCallBackendConnector.deleteVoicemail(messageId.$);
184
+ case 5:
185
+ response = _context4.sent;
186
+ expect(response).toStrictEqual(responseDetails);
187
+ expect(response.message).toBe(FAILURE);
188
+ expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith({
189
+ statusCode: 400
190
+ }, {
191
+ file: 'WxCallBackendConnector',
192
+ method: 'deleteVoicemail'
193
+ });
194
+ case 9:
195
+ case "end":
196
+ return _context4.stop();
197
+ }
198
+ }, _callee4);
199
+ })));
200
+ it('verify failure for get transcript when bad request occur', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5() {
201
+ var failurePayload, responseDetails, response;
202
+ return _regenerator.default.wrap(function _callee5$(_context5) {
203
+ while (1) switch (_context5.prev = _context5.next) {
204
+ case 0:
205
+ failurePayload = {
206
+ statusCode: 400
207
+ };
208
+ webex.request.mockRejectedValue(failurePayload);
209
+ responseDetails = {
210
+ statusCode: 400,
211
+ data: {
212
+ error: '400 Bad request'
213
+ },
214
+ message: FAILURE
215
+ };
216
+ _context5.next = 5;
217
+ return wxCallBackendConnector.getVMTranscript(messageId.$);
218
+ case 5:
219
+ response = _context5.sent;
220
+ expect(response).toStrictEqual(responseDetails);
221
+ expect(response === null || response === void 0 ? void 0 : response.message).toBe(FAILURE);
222
+ expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith({
223
+ statusCode: 400
224
+ }, {
225
+ file: 'WxCallBackendConnector',
226
+ method: 'getVMTranscript'
227
+ });
228
+ case 9:
229
+ case "end":
230
+ return _context5.stop();
231
+ }
232
+ }, _callee5);
233
+ })));
234
+ it('verify failure voicemail listing when user is unauthorised, possible token expiry', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6() {
235
+ var failurePayload, response, responseDetails;
236
+ return _regenerator.default.wrap(function _callee6$(_context6) {
237
+ while (1) switch (_context6.prev = _context6.next) {
238
+ case 0:
239
+ failurePayload = {
240
+ statusCode: 401
241
+ };
242
+ webex.request.mockRejectedValue(failurePayload);
243
+ _context6.next = 4;
244
+ return wxCallBackendConnector.getVoicemailList(0, 20, _types2.SORT.DESC, true);
245
+ case 4:
246
+ response = _context6.sent;
247
+ responseDetails = {
248
+ statusCode: 401,
249
+ data: {
250
+ error: 'User is unauthorised, possible token expiry'
251
+ },
252
+ message: FAILURE
253
+ };
254
+ expect(response).toStrictEqual(responseDetails);
255
+ expect(response.message).toBe(FAILURE);
256
+ expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith({
257
+ statusCode: 401
258
+ }, {
259
+ file: 'WxCallBackendConnector',
260
+ method: 'getVoicemailList'
261
+ });
262
+ case 9:
263
+ case "end":
264
+ return _context6.stop();
265
+ }
266
+ }, _callee6);
267
+ })));
268
+ it('verify failure voicemailMarkAsRead when user is unauthorised, possible token expiry', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7() {
269
+ var failurePayload, responseDetails, response;
270
+ return _regenerator.default.wrap(function _callee7$(_context7) {
271
+ while (1) switch (_context7.prev = _context7.next) {
272
+ case 0:
273
+ failurePayload = {
274
+ statusCode: 401
275
+ };
276
+ webex.request.mockRejectedValue(failurePayload);
277
+ responseDetails = {
278
+ statusCode: 401,
279
+ data: {
280
+ error: 'User is unauthorised, possible token expiry'
281
+ },
282
+ message: FAILURE
283
+ };
284
+ _context7.next = 5;
285
+ return wxCallBackendConnector.voicemailMarkAsRead(messageId.$);
286
+ case 5:
287
+ response = _context7.sent;
288
+ expect(response).toStrictEqual(responseDetails);
289
+ expect(response.message).toBe(FAILURE);
290
+ expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith({
291
+ statusCode: 401
292
+ }, {
293
+ file: 'WxCallBackendConnector',
294
+ method: 'voicemailMarkAsRead'
295
+ });
296
+ case 9:
297
+ case "end":
298
+ return _context7.stop();
299
+ }
300
+ }, _callee7);
301
+ })));
302
+ it('verify failure voicemailMarkAsUnread when user is unauthorised, possible token expiry', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8() {
303
+ var failurePayload, responseDetails, response;
304
+ return _regenerator.default.wrap(function _callee8$(_context8) {
305
+ while (1) switch (_context8.prev = _context8.next) {
306
+ case 0:
307
+ failurePayload = {
308
+ statusCode: 401
309
+ };
310
+ webex.request.mockRejectedValue(failurePayload);
311
+ responseDetails = {
312
+ statusCode: 401,
313
+ data: {
314
+ error: 'User is unauthorised, possible token expiry'
315
+ },
316
+ message: FAILURE
317
+ };
318
+ _context8.next = 5;
319
+ return wxCallBackendConnector.voicemailMarkAsUnread(messageId.$);
320
+ case 5:
321
+ response = _context8.sent;
322
+ expect(response).toStrictEqual(responseDetails);
323
+ expect(response.message).toBe(FAILURE);
324
+ expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith({
325
+ statusCode: 401
326
+ }, {
327
+ file: 'WxCallBackendConnector',
328
+ method: 'voicemailMarkAsUnread'
329
+ });
330
+ case 9:
331
+ case "end":
332
+ return _context8.stop();
333
+ }
334
+ }, _callee8);
335
+ })));
336
+ it('verify failure delete Voicemail when user is unauthorised, possible token expiry', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9() {
337
+ var failurePayload, responseDetails, response;
338
+ return _regenerator.default.wrap(function _callee9$(_context9) {
339
+ while (1) switch (_context9.prev = _context9.next) {
340
+ case 0:
341
+ failurePayload = {
342
+ statusCode: 401
343
+ };
344
+ webex.request.mockRejectedValue(failurePayload);
345
+ responseDetails = {
346
+ statusCode: 401,
347
+ data: {
348
+ error: 'User is unauthorised, possible token expiry'
349
+ },
350
+ message: FAILURE
351
+ };
352
+ _context9.next = 5;
353
+ return wxCallBackendConnector.deleteVoicemail(messageId.$);
354
+ case 5:
355
+ response = _context9.sent;
356
+ expect(response).toStrictEqual(responseDetails);
357
+ expect(response.message).toBe(FAILURE);
358
+ expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith({
359
+ statusCode: 401
360
+ }, {
361
+ file: 'WxCallBackendConnector',
362
+ method: 'deleteVoicemail'
363
+ });
364
+ case 9:
365
+ case "end":
366
+ return _context9.stop();
367
+ }
368
+ }, _callee9);
369
+ })));
370
+ it('verify failure for get transcript when user is unauthorised, possible token expiry', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10() {
371
+ var failurePayload, responseDetails, response;
372
+ return _regenerator.default.wrap(function _callee10$(_context10) {
373
+ while (1) switch (_context10.prev = _context10.next) {
374
+ case 0:
375
+ failurePayload = {
376
+ statusCode: 401
377
+ };
378
+ webex.request.mockRejectedValue(failurePayload);
379
+ responseDetails = {
380
+ statusCode: 401,
381
+ data: {
382
+ error: 'User is unauthorised, possible token expiry'
383
+ },
384
+ message: FAILURE
385
+ };
386
+ _context10.next = 5;
387
+ return wxCallBackendConnector.getVMTranscript(messageId.$);
388
+ case 5:
389
+ response = _context10.sent;
390
+ expect(response).toStrictEqual(responseDetails);
391
+ expect(response === null || response === void 0 ? void 0 : response.message).toBe(FAILURE);
392
+ expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith({
393
+ statusCode: 401
394
+ }, {
395
+ file: 'WxCallBackendConnector',
396
+ method: 'getVMTranscript'
397
+ });
398
+ case 9:
399
+ case "end":
400
+ return _context10.stop();
401
+ }
402
+ }, _callee10);
403
+ })));
404
+ it('verify failure voicemail summary when bad request occur', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee11() {
405
+ var failurePayload, response, responseDetails;
406
+ return _regenerator.default.wrap(function _callee11$(_context11) {
407
+ while (1) switch (_context11.prev = _context11.next) {
408
+ case 0:
409
+ failurePayload = {
410
+ statusCode: 400
411
+ };
412
+ webex.request.mockRejectedValueOnce(failurePayload);
413
+ _context11.next = 4;
414
+ return wxCallBackendConnector.getVoicemailSummary();
415
+ case 4:
416
+ response = _context11.sent;
417
+ responseDetails = {
418
+ statusCode: 400,
419
+ data: {
420
+ error: '400 Bad request'
421
+ },
422
+ message: FAILURE
423
+ };
424
+ expect(webex.request).toBeCalledOnceWith({
425
+ method: _types2.HTTP_METHODS.GET,
426
+ uri: _voicemailFixture.voicemailSummaryUrl
427
+ });
428
+ expect(response).toStrictEqual(responseDetails);
429
+ expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith({
430
+ statusCode: 400
431
+ }, {
432
+ file: 'WxCallBackendConnector',
433
+ method: 'getVoicemailSummary'
434
+ });
435
+ case 9:
436
+ case "end":
437
+ return _context11.stop();
438
+ }
439
+ }, _callee11);
440
+ })));
441
+ it('verify failure case for the voicemail content when api response is invalid', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee12() {
442
+ var xsiActionsEndpointUrl, response;
443
+ return _regenerator.default.wrap(function _callee12$(_context12) {
444
+ while (1) switch (_context12.prev = _context12.next) {
445
+ case 0:
446
+ webex.request.mockResolvedValueOnce({});
447
+ xsiActionsEndpointUrl = _voicemailFixture.mockWXCData.body.items[0].xsiActionsEndpoint;
448
+ _context12.next = 4;
449
+ return wxCallBackendConnector.getVoicemailContent(messageId);
450
+ case 4:
451
+ response = _context12.sent;
452
+ expect(response).toStrictEqual(_voicemailFixture.responseDetails422);
453
+ expect(webex.request).toBeCalledOnceWith({
454
+ method: _types2.HTTP_METHODS.GET,
455
+ uri: "".concat(xsiActionsEndpointUrl).concat(messageId)
456
+ });
457
+ expect(serviceErrorCodeHandlerSpy).toBeCalledOnceWith(expect.anything(), {
458
+ file: 'WxCallBackendConnector',
459
+ method: 'getVoicemailContent'
460
+ });
461
+ case 8:
462
+ case "end":
463
+ return _context12.stop();
464
+ }
465
+ }, _callee12);
466
+ })));
467
+ });
468
+ describe('Voicemail success tests for webex call', function () {
469
+ var SUCCESS = 'SUCCESS';
470
+ var EMPTY_SUCCESS_RESPONSE = {
471
+ data: {},
472
+ message: SUCCESS,
473
+ statusCode: 200
474
+ };
475
+ afterEach(function () {
476
+ jest.clearAllMocks();
477
+ });
478
+ it('verify successfully fetching voicemail summary with newMessages and newUrgentMessage', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee13() {
479
+ var mockRawRequest, mockVoicemailSummary, voicemailSummary, response, voicemailSummaryResponseInfo, responseDetails;
480
+ return _regenerator.default.wrap(function _callee13$(_context13) {
481
+ while (1) switch (_context13.prev = _context13.next) {
482
+ case 0:
483
+ mockRawRequest = {
484
+ response: "<?xml version=\"1.0\" encoding=\"UTF-8\"?><VoiceMailMessageSummary xmlns=\"http://schema.broadsoft.com/xsi\"><summary><newMessages>2</newMessages><newUrgentMessages>1</newUrgentMessages></summary></VoiceMailMessageSummary>"
485
+ };
486
+ mockVoicemailSummary = {
487
+ statusCode: 200,
488
+ rawRequest: mockRawRequest
489
+ };
490
+ voicemailSummary = mockVoicemailSummary;
491
+ webex.request.mockResolvedValueOnce(voicemailSummary);
492
+ _context13.next = 6;
493
+ return wxCallBackendConnector.getVoicemailSummary();
494
+ case 6:
495
+ response = _context13.sent;
496
+ voicemailSummaryResponseInfo = {
497
+ voicemailSummary: {
498
+ newMessages: 2,
499
+ newUrgentMessages: 1,
500
+ oldMessages: 0,
501
+ oldUrgentMessages: 0
502
+ }
503
+ };
504
+ responseDetails = {
505
+ data: voicemailSummaryResponseInfo,
506
+ message: SUCCESS,
507
+ statusCode: 200
508
+ };
509
+ expect(webex.request).toBeCalledOnceWith({
510
+ method: _types2.HTTP_METHODS.GET,
511
+ uri: _voicemailFixture.voicemailSummaryUrl
512
+ });
513
+ expect(response).toStrictEqual(responseDetails);
514
+ case 11:
515
+ case "end":
516
+ return _context13.stop();
517
+ }
518
+ }, _callee13);
519
+ })));
520
+ it('verify successfully fetching voicemail summary with oldMessages and oldUrgentMessage', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee14() {
521
+ var mockRawRequest, mockVoicemailSummary, voicemailSummary, response, voicemailSummaryResponseInfo, responseDetails;
522
+ return _regenerator.default.wrap(function _callee14$(_context14) {
523
+ while (1) switch (_context14.prev = _context14.next) {
524
+ case 0:
525
+ mockRawRequest = {
526
+ response: "<?xml version=\"1.0\" encoding=\"UTF-8\"?><VoiceMailMessageSummary xmlns=\"http://schema.broadsoft.com/xsi\"><summary><oldMessages>2</oldMessages><oldUrgentMessages>1</oldUrgentMessages></summary></VoiceMailMessageSummary>"
527
+ };
528
+ mockVoicemailSummary = {
529
+ statusCode: 200,
530
+ rawRequest: mockRawRequest
531
+ };
532
+ voicemailSummary = mockVoicemailSummary;
533
+ webex.request.mockResolvedValueOnce(voicemailSummary);
534
+ _context14.next = 6;
535
+ return wxCallBackendConnector.getVoicemailSummary();
536
+ case 6:
537
+ response = _context14.sent;
538
+ voicemailSummaryResponseInfo = {
539
+ voicemailSummary: {
540
+ newMessages: 0,
541
+ newUrgentMessages: 0,
542
+ oldMessages: 2,
543
+ oldUrgentMessages: 1
544
+ }
545
+ };
546
+ responseDetails = {
547
+ data: voicemailSummaryResponseInfo,
548
+ message: SUCCESS,
549
+ statusCode: 200
550
+ };
551
+ expect(webex.request).toBeCalledOnceWith({
552
+ method: _types2.HTTP_METHODS.GET,
553
+ uri: _voicemailFixture.voicemailSummaryUrl
554
+ });
555
+ expect(response).toStrictEqual(responseDetails);
556
+ case 11:
557
+ case "end":
558
+ return _context14.stop();
559
+ }
560
+ }, _callee14);
561
+ })));
562
+ it('verify that PENDING transcription status is passed while transcribing is in progress in the backend', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee15() {
563
+ var pending, mockPendingResponse, mockVoicemailTranscript, voicemailTranscript, response, responseDetails;
564
+ return _regenerator.default.wrap(function _callee15$(_context15) {
565
+ while (1) switch (_context15.prev = _context15.next) {
566
+ case 0:
567
+ pending = 'PENDING';
568
+ mockPendingResponse = {
569
+ response: '<?xml version="1.0" encoding="UTF-8"?><VoiceMessageTranscript xmlns="http://schema.broadsoft.com/xsi"><status>PENDING</status></VoiceMessageTranscript>'
570
+ };
571
+ mockVoicemailTranscript = _objectSpread(_objectSpread({}, _voicemailFixture.mockVoicemailTranscriptResponse), {}, {
572
+ rawRequest: mockPendingResponse
573
+ });
574
+ voicemailTranscript = mockVoicemailTranscript;
575
+ webex.request.mockResolvedValueOnce(voicemailTranscript);
576
+ _context15.next = 7;
577
+ return wxCallBackendConnector.getVMTranscript('98099432-9d81-4224-bd04-00def73cd262');
578
+ case 7:
579
+ response = _context15.sent;
580
+ responseDetails = {
581
+ data: {
582
+ voicemailTranscript: undefined
583
+ },
584
+ message: pending,
585
+ statusCode: 200
586
+ };
587
+ expect(response === null || response === void 0 ? void 0 : response.message).toBe(pending);
588
+ expect(response).toStrictEqual(responseDetails);
589
+ case 11:
590
+ case "end":
591
+ return _context15.stop();
592
+ }
593
+ }, _callee15);
594
+ })));
595
+ it('verify successfully fetching voicemail transcript', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee16() {
596
+ var ready, mockRawRequest, mockVoicemailTranscript, voicemailTranscript, response, voicemailResponseInfo, responseDetails;
597
+ return _regenerator.default.wrap(function _callee16$(_context16) {
598
+ while (1) switch (_context16.prev = _context16.next) {
599
+ case 0:
600
+ ready = 'READY';
601
+ mockRawRequest = {
602
+ response: '<?xml version="1.0" encoding="UTF-8"?><VoiceMessageTranscript xmlns="http://schema.broadsoft.com/xsi"><status>READY</status><content lang="EN">Hi, uh, testing, voice mail script, so dropping this message to be able to fetch it later.</content></VoiceMessageTranscript>'
603
+ };
604
+ mockVoicemailTranscript = _objectSpread(_objectSpread({}, _voicemailFixture.mockVoicemailTranscriptResponse), {}, {
605
+ rawRequest: mockRawRequest
606
+ });
607
+ voicemailTranscript = mockVoicemailTranscript;
608
+ webex.request.mockResolvedValueOnce(voicemailTranscript);
609
+ _context16.next = 7;
610
+ return wxCallBackendConnector.getVMTranscript('98099432-9d81-4224-bd04-00def73cd262');
611
+ case 7:
612
+ response = _context16.sent;
613
+ voicemailResponseInfo = {
614
+ voicemailTranscript: 'Hi, uh, testing, voice mail script, so dropping this message to be able to fetch it later.'
615
+ };
616
+ responseDetails = {
617
+ data: voicemailResponseInfo,
618
+ message: ready,
619
+ statusCode: 200
620
+ };
621
+ expect(response === null || response === void 0 ? void 0 : response.message).toBe(ready);
622
+ expect(response).toStrictEqual(responseDetails);
623
+ case 12:
624
+ case "end":
625
+ return _context16.stop();
626
+ }
627
+ }, _callee16);
628
+ })));
629
+ it('verify successful voicemail listing in descending order with offset 0 and limit 20', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee17() {
630
+ var voiceMailPayload, response, voicemailResponseInfo, responseDetails;
631
+ return _regenerator.default.wrap(function _callee17$(_context17) {
632
+ while (1) switch (_context17.prev = _context17.next) {
633
+ case 0:
634
+ voiceMailPayload = _voicemailFixture.getVoicemailListJsonWXC;
635
+ webex.request.mockResolvedValueOnce(voiceMailPayload);
636
+ _context17.next = 4;
637
+ return wxCallBackendConnector.getVoicemailList(0, 20, _types2.SORT.DESC, true);
638
+ case 4:
639
+ response = _context17.sent;
640
+ voicemailResponseInfo = {
641
+ voicemailList: _voicemailFixture.getDescVoicemailListJsonWXC.body.VoiceMessagingMessages.messageInfoList.messageInfo
642
+ };
643
+ responseDetails = {
644
+ data: voicemailResponseInfo,
645
+ message: _constants.NO_VOICEMAIL_MSG,
646
+ statusCode: _constants.NO_VOICEMAIL_STATUS_CODE
647
+ };
648
+ expect(response.message).toBe(_constants.NO_VOICEMAIL_MSG);
649
+ expect(response).toStrictEqual(responseDetails);
650
+ expect(getSortedVoicemailListSpy).toBeCalledOnceWith(voicemailResponseInfo.voicemailList, 'DESC');
651
+ expect(storeVoicemailListSpy).toBeCalledOnceWith(CONTEXT, voicemailResponseInfo.voicemailList);
652
+ expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 20, {
653
+ file: 'WxCallBackendConnector',
654
+ method: 'getVoicemailList'
655
+ });
656
+ case 12:
657
+ case "end":
658
+ return _context17.stop();
659
+ }
660
+ }, _callee17);
661
+ })));
662
+ it('verify successful voicemail listing in ascending order with offset 0 and limit 20', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee18() {
663
+ var voiceMailPayload, response, voicemailResponseInfo, responseDetails;
664
+ return _regenerator.default.wrap(function _callee18$(_context18) {
665
+ while (1) switch (_context18.prev = _context18.next) {
666
+ case 0:
667
+ voiceMailPayload = _voicemailFixture.getVoicemailListJsonWXC;
668
+ webex.request.mockResolvedValueOnce(voiceMailPayload);
669
+ _context18.next = 4;
670
+ return wxCallBackendConnector.getVoicemailList(0, 20, _types2.SORT.ASC, true);
671
+ case 4:
672
+ response = _context18.sent;
673
+ voicemailResponseInfo = {
674
+ voicemailList: _voicemailFixture.getAscVoicemailListJsonWXC.body.VoiceMessagingMessages.messageInfoList.messageInfo
675
+ };
676
+ responseDetails = {
677
+ data: voicemailResponseInfo,
678
+ message: _constants.NO_VOICEMAIL_MSG,
679
+ statusCode: _constants.NO_VOICEMAIL_STATUS_CODE
680
+ };
681
+ expect(response.message).toBe(_constants.NO_VOICEMAIL_MSG);
682
+ expect(response).toStrictEqual(responseDetails);
683
+ expect(getSortedVoicemailListSpy).toBeCalledOnceWith(voicemailResponseInfo.voicemailList, 'ASC');
684
+ expect(storeVoicemailListSpy).toBeCalledOnceWith(CONTEXT, voicemailResponseInfo.voicemailList);
685
+ expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 20, {
686
+ file: 'WxCallBackendConnector',
687
+ method: 'getVoicemailList'
688
+ });
689
+ case 12:
690
+ case "end":
691
+ return _context18.stop();
692
+ }
693
+ }, _callee18);
694
+ })));
695
+ it('verify successful voicemail listing in descending order with offset 0 and limit 2 with incorrect SORT param', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19() {
696
+ var voiceMailPayload, response, voicemailResponseInfo, responseDetails;
697
+ return _regenerator.default.wrap(function _callee19$(_context19) {
698
+ while (1) switch (_context19.prev = _context19.next) {
699
+ case 0:
700
+ voiceMailPayload = _voicemailFixture.getVoicemailListJsonWXC;
701
+ webex.request.mockResolvedValueOnce(voiceMailPayload);
702
+ _context19.next = 4;
703
+ return wxCallBackendConnector.getVoicemailList(0, 2, 'abcd', true);
704
+ case 4:
705
+ response = _context19.sent;
706
+ voicemailResponseInfo = {
707
+ voicemailList: _voicemailFixture.getDescVoicemailListJsonWXC.body.VoiceMessagingMessages.messageInfoList.messageInfo.slice(0, 2)
708
+ };
709
+ responseDetails = {
710
+ data: voicemailResponseInfo,
711
+ message: SUCCESS,
712
+ statusCode: 200
713
+ };
714
+ expect(response.message).toBe(SUCCESS);
715
+ expect(response).toStrictEqual(responseDetails);
716
+ expect(getSortedVoicemailListSpy).toBeCalledOnceWith(_voicemailFixture.getDescVoicemailListJsonWXC.body.VoiceMessagingMessages.messageInfoList.messageInfo, 'DESC');
717
+ expect(storeVoicemailListSpy).toBeCalledOnceWith(CONTEXT, _voicemailFixture.getDescVoicemailListJsonWXC.body.VoiceMessagingMessages.messageInfoList.messageInfo);
718
+ expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 2, {
719
+ file: 'WxCallBackendConnector',
720
+ method: 'getVoicemailList'
721
+ });
722
+ case 12:
723
+ case "end":
724
+ return _context19.stop();
725
+ }
726
+ }, _callee19);
727
+ })));
728
+ it('verify successful voicemail listing in ascending order with offset 0 and limit 4', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee20() {
729
+ var voiceMailPayload, response, voicemailResponseInfo, responseDetails;
730
+ return _regenerator.default.wrap(function _callee20$(_context20) {
731
+ while (1) switch (_context20.prev = _context20.next) {
732
+ case 0:
733
+ voiceMailPayload = _voicemailFixture.getVoicemailListJsonWXC;
734
+ webex.request.mockResolvedValueOnce(voiceMailPayload);
735
+ _context20.next = 4;
736
+ return wxCallBackendConnector.getVoicemailList(0, 4, _types2.SORT.ASC, true);
737
+ case 4:
738
+ response = _context20.sent;
739
+ voicemailResponseInfo = {
740
+ voicemailList: _voicemailFixture.getAscVoicemailListJsonWXC.body.VoiceMessagingMessages.messageInfoList.messageInfo.slice(0, 4)
741
+ };
742
+ responseDetails = {
743
+ data: voicemailResponseInfo,
744
+ message: SUCCESS,
745
+ statusCode: 200
746
+ };
747
+ expect(response.message).toBe(SUCCESS);
748
+ expect(response).toStrictEqual(responseDetails);
749
+ expect(getSortedVoicemailListSpy).toBeCalledOnceWith(_voicemailFixture.getAscVoicemailListJsonWXC.body.VoiceMessagingMessages.messageInfoList.messageInfo, 'ASC');
750
+ expect(storeVoicemailListSpy).toBeCalledOnceWith(CONTEXT, _voicemailFixture.getAscVoicemailListJsonWXC.body.VoiceMessagingMessages.messageInfoList.messageInfo);
751
+ expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 4, {
752
+ file: 'WxCallBackendConnector',
753
+ method: 'getVoicemailList'
754
+ });
755
+ case 12:
756
+ case "end":
757
+ return _context20.stop();
758
+ }
759
+ }, _callee20);
760
+ })));
761
+ it('verify empty voicemail list data', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee21() {
762
+ var response, voicemailResponseInfo, responseDetails;
763
+ return _regenerator.default.wrap(function _callee21$(_context21) {
764
+ while (1) switch (_context21.prev = _context21.next) {
765
+ case 0:
766
+ webex.request.mockResolvedValueOnce(_voicemailFixture.getEmptyVoicemailListJsonWxC);
767
+ _context21.next = 3;
768
+ return wxCallBackendConnector.getVoicemailList(0, 20, _types2.SORT.DESC, true);
769
+ case 3:
770
+ response = _context21.sent;
771
+ voicemailResponseInfo = {
772
+ voicemailList: []
773
+ };
774
+ responseDetails = {
775
+ data: voicemailResponseInfo,
776
+ message: _constants.NO_VOICEMAIL_MSG,
777
+ statusCode: _constants.NO_VOICEMAIL_STATUS_CODE
778
+ };
779
+ expect(response).toStrictEqual(responseDetails);
780
+ expect(response.message).toBe(_constants.NO_VOICEMAIL_MSG);
781
+ expect(storeVoicemailListSpy).toBeCalledOnceWith(CONTEXT, voicemailResponseInfo.voicemailList);
782
+ expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 20, {
783
+ file: 'WxCallBackendConnector',
784
+ method: 'getVoicemailList'
785
+ });
786
+ case 10:
787
+ case "end":
788
+ return _context21.stop();
789
+ }
790
+ }, _callee21);
791
+ })));
792
+ it('verify empty voicemail list data when response data is in invalid format', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee22() {
793
+ var response, voicemailResponseInfo, responseDetails;
794
+ return _regenerator.default.wrap(function _callee22$(_context22) {
795
+ while (1) switch (_context22.prev = _context22.next) {
796
+ case 0:
797
+ webex.request.mockResolvedValueOnce(_voicemailFixture.getInvalidVoicemailListJsonWxC);
798
+ _context22.next = 3;
799
+ return wxCallBackendConnector.getVoicemailList(0, 20, _types2.SORT.DESC, true);
800
+ case 3:
801
+ response = _context22.sent;
802
+ voicemailResponseInfo = {
803
+ voicemailList: [{}]
804
+ };
805
+ responseDetails = {
806
+ data: voicemailResponseInfo,
807
+ message: _constants.NO_VOICEMAIL_MSG,
808
+ statusCode: _constants.NO_VOICEMAIL_STATUS_CODE
809
+ };
810
+ expect(response).toStrictEqual(responseDetails);
811
+ expect(response.message).toBe(_constants.NO_VOICEMAIL_MSG);
812
+ expect(storeVoicemailListSpy).toBeCalledOnceWith(CONTEXT, voicemailResponseInfo.voicemailList);
813
+ expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 20, {
814
+ file: 'WxCallBackendConnector',
815
+ method: 'getVoicemailList'
816
+ });
817
+ case 10:
818
+ case "end":
819
+ return _context22.stop();
820
+ }
821
+ }, _callee22);
822
+ })));
823
+ it('verify successful fetching of voicemail list without refresh', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee23() {
824
+ var voiceMailPayload, vmEncodedList, response, voicemailResponseInfo, responseDetails;
825
+ return _regenerator.default.wrap(function _callee23$(_context23) {
826
+ while (1) switch (_context23.prev = _context23.next) {
827
+ case 0:
828
+ voiceMailPayload = _voicemailFixture.getVoicemailListJsonWXC;
829
+ webex.request.mockResolvedValueOnce(voiceMailPayload);
830
+ vmEncodedList = Buffer.from((0, _stringify.default)(_voicemailFixture.getAscVoicemailListJsonWXC.body.VoiceMessagingMessages.messageInfoList.messageInfo), 'utf8').toString('base64');
831
+ sessionStorage.setItem(CONTEXT, vmEncodedList.toString());
832
+ _context23.next = 6;
833
+ return wxCallBackendConnector.getVoicemailList(0, 4, _types2.SORT.ASC, false);
834
+ case 6:
835
+ response = _context23.sent;
836
+ voicemailResponseInfo = {
837
+ voicemailList: _voicemailFixture.getAscVoicemailListJsonWXC.body.VoiceMessagingMessages.messageInfoList.messageInfo.slice(0, 4)
838
+ };
839
+ responseDetails = {
840
+ data: voicemailResponseInfo,
841
+ message: SUCCESS,
842
+ statusCode: 200
843
+ };
844
+ expect(response.message).toBe(SUCCESS);
845
+ expect(response).toStrictEqual(responseDetails);
846
+ expect(getSortedVoicemailListSpy).not.toBeCalled();
847
+ expect(storeVoicemailListSpy).not.toBeCalled();
848
+ expect(fetchVoicemailListSpy).toBeCalledOnceWith(CONTEXT, 0, 4, {
849
+ file: 'WxCallBackendConnector',
850
+ method: 'getVoicemailList'
851
+ });
852
+ sessionStorage.removeItem(CONTEXT);
853
+ case 15:
854
+ case "end":
855
+ return _context23.stop();
856
+ }
857
+ }, _callee23);
858
+ })));
859
+ it('verify successful voicemailMarkAsRead', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee24() {
860
+ var voiceMailPayload, response;
861
+ return _regenerator.default.wrap(function _callee24$(_context24) {
862
+ while (1) switch (_context24.prev = _context24.next) {
863
+ case 0:
864
+ voiceMailPayload = _voicemailFixture.getVoicemailListJsonWXC;
865
+ webex.request.mockResolvedValueOnce(voiceMailPayload);
866
+ _context24.next = 4;
867
+ return wxCallBackendConnector.voicemailMarkAsRead(messageId.$);
868
+ case 4:
869
+ response = _context24.sent;
870
+ expect(response).toStrictEqual(EMPTY_SUCCESS_RESPONSE);
871
+ case 6:
872
+ case "end":
873
+ return _context24.stop();
874
+ }
875
+ }, _callee24);
876
+ })));
877
+ it('verify successful voicemailMarkAsUnread', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee25() {
878
+ var voiceMailPayload, response;
879
+ return _regenerator.default.wrap(function _callee25$(_context25) {
880
+ while (1) switch (_context25.prev = _context25.next) {
881
+ case 0:
882
+ voiceMailPayload = _voicemailFixture.getVoicemailListJsonWXC;
883
+ webex.request.mockResolvedValueOnce(voiceMailPayload);
884
+ _context25.next = 4;
885
+ return wxCallBackendConnector.voicemailMarkAsUnread(messageId.$);
886
+ case 4:
887
+ response = _context25.sent;
888
+ expect(response).toStrictEqual(EMPTY_SUCCESS_RESPONSE);
889
+ case 6:
890
+ case "end":
891
+ return _context25.stop();
892
+ }
893
+ }, _callee25);
894
+ })));
895
+ it('verify successful deleteVoicemail', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee26() {
896
+ var voiceMailPayload, response;
897
+ return _regenerator.default.wrap(function _callee26$(_context26) {
898
+ while (1) switch (_context26.prev = _context26.next) {
899
+ case 0:
900
+ voiceMailPayload = _voicemailFixture.getVoicemailListJsonWXC;
901
+ webex.request.mockResolvedValueOnce(voiceMailPayload);
902
+ _context26.next = 4;
903
+ return wxCallBackendConnector.deleteVoicemail(messageId.$);
904
+ case 4:
905
+ response = _context26.sent;
906
+ expect(response).toStrictEqual(EMPTY_SUCCESS_RESPONSE);
907
+ case 6:
908
+ case "end":
909
+ return _context26.stop();
910
+ }
911
+ }, _callee26);
912
+ })));
913
+ it('verify resolveContact', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee27() {
914
+ var voiceMailPayload, samplePeopleListResponse, displayInfo;
915
+ return _regenerator.default.wrap(function _callee27$(_context27) {
916
+ while (1) switch (_context27.prev = _context27.next) {
917
+ case 0:
918
+ voiceMailPayload = _voicemailFixture.getVoicemailListJsonWXC;
919
+ webex.request.mockResolvedValueOnce(voiceMailPayload);
920
+ samplePeopleListResponse = (0, _testUtil.getSamplePeopleListResponse)();
921
+ webex.people.list.mockResolvedValue(samplePeopleListResponse);
922
+ _context27.next = 6;
923
+ return wxCallBackendConnector.resolveContact({
924
+ name: {
925
+ $: 'Name'
926
+ }
927
+ });
928
+ case 6:
929
+ displayInfo = _context27.sent;
930
+ expect(displayInfo === null || displayInfo === void 0 ? void 0 : displayInfo.id).toStrictEqual(Buffer.from(samplePeopleListResponse.items[0].id, 'base64').toString('binary').split('/').pop());
931
+ expect(displayInfo === null || displayInfo === void 0 ? void 0 : displayInfo.name).toStrictEqual(samplePeopleListResponse.items[0].displayName);
932
+ expect(displayInfo === null || displayInfo === void 0 ? void 0 : displayInfo.num).toStrictEqual(samplePeopleListResponse.items[0].phoneNumbers[0].value);
933
+ expect(displayInfo === null || displayInfo === void 0 ? void 0 : displayInfo.avatarSrc).toStrictEqual(samplePeopleListResponse.items[0].avatar);
934
+ case 11:
935
+ case "end":
936
+ return _context27.stop();
937
+ }
938
+ }, _callee27);
939
+ })));
940
+ });
941
+ });
942
+ //# sourceMappingURL=WxCallBackendConnector.test.js.map