@webex/calling 3.0.0-next.8 → 3.0.1

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 (219) hide show
  1. package/dist/CallHistory/CallHistory.js +49 -49
  2. package/dist/CallHistory/CallHistory.js.map +1 -1
  3. package/dist/CallHistory/CallHistory.test.js +9 -0
  4. package/dist/CallHistory/CallHistory.test.js.map +1 -1
  5. package/dist/CallHistory/callHistoryFixtures.js +63 -7
  6. package/dist/CallHistory/callHistoryFixtures.js.map +1 -1
  7. package/dist/CallHistory/constants.js +9 -18
  8. package/dist/CallHistory/constants.js.map +1 -1
  9. package/dist/CallHistory/types.js.map +1 -1
  10. package/dist/CallSettings/CallSettings.js +18 -13
  11. package/dist/CallSettings/CallSettings.js.map +1 -1
  12. package/dist/CallSettings/CallSettings.test.js.map +1 -1
  13. package/dist/CallSettings/UcmBackendConnector.js +7 -8
  14. package/dist/CallSettings/UcmBackendConnector.js.map +1 -1
  15. package/dist/CallSettings/UcmBackendConnector.test.js +69 -37
  16. package/dist/CallSettings/UcmBackendConnector.test.js.map +1 -1
  17. package/dist/CallSettings/WxCallBackendConnector.js +19 -13
  18. package/dist/CallSettings/WxCallBackendConnector.js.map +1 -1
  19. package/dist/CallSettings/WxCallBackendConnector.test.js +2 -2
  20. package/dist/CallSettings/WxCallBackendConnector.test.js.map +1 -1
  21. package/dist/CallSettings/constants.js +11 -22
  22. package/dist/CallSettings/constants.js.map +1 -1
  23. package/dist/CallSettings/testFixtures.js +4 -8
  24. package/dist/CallSettings/testFixtures.js.map +1 -1
  25. package/dist/CallSettings/types.js.map +1 -1
  26. package/dist/CallingClient/CallingClient.js +134 -75
  27. package/dist/CallingClient/CallingClient.js.map +1 -1
  28. package/dist/CallingClient/CallingClient.test.js +170 -109
  29. package/dist/CallingClient/CallingClient.test.js.map +1 -1
  30. package/dist/CallingClient/callRecordFixtures.js +2 -4
  31. package/dist/CallingClient/callRecordFixtures.js.map +1 -1
  32. package/dist/CallingClient/calling/CallerId/index.js +9 -29
  33. package/dist/CallingClient/calling/CallerId/index.js.map +1 -1
  34. package/dist/CallingClient/calling/CallerId/index.test.js.map +1 -1
  35. package/dist/CallingClient/calling/CallerId/types.js.map +1 -1
  36. package/dist/CallingClient/calling/call.js +140 -80
  37. package/dist/CallingClient/calling/call.js.map +1 -1
  38. package/dist/CallingClient/calling/call.test.js +651 -409
  39. package/dist/CallingClient/calling/call.test.js.map +1 -1
  40. package/dist/CallingClient/calling/callManager.js +3 -14
  41. package/dist/CallingClient/calling/callManager.js.map +1 -1
  42. package/dist/CallingClient/calling/callManager.test.js +1 -1
  43. package/dist/CallingClient/calling/callManager.test.js.map +1 -1
  44. package/dist/CallingClient/calling/types.js +31 -33
  45. package/dist/CallingClient/calling/types.js.map +1 -1
  46. package/dist/CallingClient/callingClientFixtures.js +107 -17
  47. package/dist/CallingClient/callingClientFixtures.js.map +1 -1
  48. package/dist/CallingClient/constants.js +101 -193
  49. package/dist/CallingClient/constants.js.map +1 -1
  50. package/dist/CallingClient/line/index.js +20 -18
  51. package/dist/CallingClient/line/index.js.map +1 -1
  52. package/dist/CallingClient/line/line.test.js +13 -13
  53. package/dist/CallingClient/line/line.test.js.map +1 -1
  54. package/dist/CallingClient/line/types.js +7 -11
  55. package/dist/CallingClient/line/types.js.map +1 -1
  56. package/dist/CallingClient/registration/register.js +102 -111
  57. package/dist/CallingClient/registration/register.js.map +1 -1
  58. package/dist/CallingClient/registration/register.test.js +33 -32
  59. package/dist/CallingClient/registration/register.test.js.map +1 -1
  60. package/dist/CallingClient/registration/registerFixtures.js +5 -10
  61. package/dist/CallingClient/registration/registerFixtures.js.map +1 -1
  62. package/dist/CallingClient/registration/types.js.map +1 -1
  63. package/dist/CallingClient/types.js.map +1 -1
  64. package/dist/Contacts/ContactsClient.js +30 -19
  65. package/dist/Contacts/ContactsClient.js.map +1 -1
  66. package/dist/Contacts/ContactsClient.test.js +4 -4
  67. package/dist/Contacts/ContactsClient.test.js.map +1 -1
  68. package/dist/Contacts/constants.js +10 -18
  69. package/dist/Contacts/constants.js.map +1 -1
  70. package/dist/Contacts/contactFixtures.js +26 -52
  71. package/dist/Contacts/contactFixtures.js.map +1 -1
  72. package/dist/Contacts/types.js +29 -9
  73. package/dist/Contacts/types.js.map +1 -1
  74. package/dist/Errors/catalog/CallError.js +3 -5
  75. package/dist/Errors/catalog/CallError.js.map +1 -1
  76. package/dist/Errors/catalog/CallingDeviceError.js +4 -6
  77. package/dist/Errors/catalog/CallingDeviceError.js.map +1 -1
  78. package/dist/Errors/catalog/ExtendedError.js +2 -3
  79. package/dist/Errors/catalog/ExtendedError.js.map +1 -1
  80. package/dist/Errors/catalog/LineError.js +5 -7
  81. package/dist/Errors/catalog/LineError.js.map +1 -1
  82. package/dist/Errors/index.js +7 -0
  83. package/dist/Errors/index.js.map +1 -1
  84. package/dist/Errors/types.js +15 -20
  85. package/dist/Errors/types.js.map +1 -1
  86. package/dist/Events/impl/index.js +2 -3
  87. package/dist/Events/impl/index.js.map +1 -1
  88. package/dist/Events/types.js +44 -52
  89. package/dist/Events/types.js.map +1 -1
  90. package/dist/Logger/index.js +1 -2
  91. package/dist/Logger/index.js.map +1 -1
  92. package/dist/Logger/index.test.js.map +1 -1
  93. package/dist/Logger/types.js +9 -12
  94. package/dist/Logger/types.js.map +1 -1
  95. package/dist/Metrics/index.js +2 -4
  96. package/dist/Metrics/index.js.map +1 -1
  97. package/dist/Metrics/index.test.js +3 -3
  98. package/dist/Metrics/index.test.js.map +1 -1
  99. package/dist/Metrics/types.js +15 -20
  100. package/dist/Metrics/types.js.map +1 -1
  101. package/dist/SDKConnector/index.js +1 -2
  102. package/dist/SDKConnector/index.js.map +1 -1
  103. package/dist/SDKConnector/types.js.map +1 -1
  104. package/dist/SDKConnector/utils.js +1 -2
  105. package/dist/SDKConnector/utils.js.map +1 -1
  106. package/dist/Voicemail/BroadworksBackendConnector.js +21 -12
  107. package/dist/Voicemail/BroadworksBackendConnector.js.map +1 -1
  108. package/dist/Voicemail/BroadworksBackendConnector.test.js +2 -2
  109. package/dist/Voicemail/BroadworksBackendConnector.test.js.map +1 -1
  110. package/dist/Voicemail/UcmBackendConnector.js +19 -11
  111. package/dist/Voicemail/UcmBackendConnector.js.map +1 -1
  112. package/dist/Voicemail/UcmBackendConnector.test.js +5 -4
  113. package/dist/Voicemail/UcmBackendConnector.test.js.map +1 -1
  114. package/dist/Voicemail/Voicemail.js +35 -33
  115. package/dist/Voicemail/Voicemail.js.map +1 -1
  116. package/dist/Voicemail/Voicemail.test.js.map +1 -1
  117. package/dist/Voicemail/WxCallBackendConnector.js +18 -11
  118. package/dist/Voicemail/WxCallBackendConnector.js.map +1 -1
  119. package/dist/Voicemail/WxCallBackendConnector.test.js +4 -4
  120. package/dist/Voicemail/WxCallBackendConnector.test.js.map +1 -1
  121. package/dist/Voicemail/constants.js +29 -58
  122. package/dist/Voicemail/constants.js.map +1 -1
  123. package/dist/Voicemail/types.js.map +1 -1
  124. package/dist/Voicemail/voicemailFixture.js +35 -70
  125. package/dist/Voicemail/voicemailFixture.js.map +1 -1
  126. package/dist/api.js +13 -20
  127. package/dist/api.js.map +1 -1
  128. package/dist/common/Utils.js +18 -25
  129. package/dist/common/Utils.js.map +1 -1
  130. package/dist/common/Utils.test.js +3 -3
  131. package/dist/common/Utils.test.js.map +1 -1
  132. package/dist/common/constants.js +41 -82
  133. package/dist/common/constants.js.map +1 -1
  134. package/dist/common/testUtil.js +12 -21
  135. package/dist/common/testUtil.js.map +1 -1
  136. package/dist/common/types.js +34 -43
  137. package/dist/common/types.js.map +1 -1
  138. package/dist/index.js +246 -0
  139. package/dist/index.js.map +1 -1
  140. package/dist/module/CallHistory/CallHistory.js +7 -5
  141. package/dist/module/CallHistory/callHistoryFixtures.js +59 -0
  142. package/dist/module/CallSettings/UcmBackendConnector.js +4 -4
  143. package/dist/module/CallingClient/CallingClient.js +59 -42
  144. package/dist/module/CallingClient/calling/CallerId/index.js +3 -23
  145. package/dist/module/CallingClient/calling/call.js +69 -26
  146. package/dist/module/CallingClient/calling/callManager.js +0 -6
  147. package/dist/module/CallingClient/callingClientFixtures.js +119 -1
  148. package/dist/module/CallingClient/constants.js +8 -4
  149. package/dist/module/CallingClient/line/index.js +9 -12
  150. package/dist/module/CallingClient/line/types.js +0 -5
  151. package/dist/module/CallingClient/registration/register.js +28 -20
  152. package/dist/module/Errors/catalog/CallingDeviceError.js +2 -2
  153. package/dist/module/Errors/catalog/LineError.js +2 -2
  154. package/dist/module/Errors/index.js +1 -0
  155. package/dist/module/Events/types.js +2 -0
  156. package/dist/module/common/Utils.js +14 -19
  157. package/dist/module/common/testUtil.js +2 -1
  158. package/dist/module/common/types.js +6 -5
  159. package/dist/module/index.js +9 -0
  160. package/dist/types/CallHistory/CallHistory.d.ts +2 -1
  161. package/dist/types/CallHistory/CallHistory.d.ts.map +1 -1
  162. package/dist/types/CallHistory/callHistoryFixtures.d.ts +1 -0
  163. package/dist/types/CallHistory/callHistoryFixtures.d.ts.map +1 -1
  164. package/dist/types/CallSettings/UcmBackendConnector.d.ts +1 -1
  165. package/dist/types/CallSettings/UcmBackendConnector.d.ts.map +1 -1
  166. package/dist/types/CallSettings/types.d.ts +1 -0
  167. package/dist/types/CallSettings/types.d.ts.map +1 -1
  168. package/dist/types/CallingClient/CallingClient.d.ts +2 -0
  169. package/dist/types/CallingClient/CallingClient.d.ts.map +1 -1
  170. package/dist/types/CallingClient/calling/CallerId/index.d.ts.map +1 -1
  171. package/dist/types/CallingClient/calling/CallerId/types.d.ts.map +1 -1
  172. package/dist/types/CallingClient/calling/call.d.ts +2 -0
  173. package/dist/types/CallingClient/calling/call.d.ts.map +1 -1
  174. package/dist/types/CallingClient/calling/callManager.d.ts +0 -1
  175. package/dist/types/CallingClient/calling/callManager.d.ts.map +1 -1
  176. package/dist/types/CallingClient/calling/types.d.ts +30 -30
  177. package/dist/types/CallingClient/calling/types.d.ts.map +1 -1
  178. package/dist/types/CallingClient/callingClientFixtures.d.ts +69 -1
  179. package/dist/types/CallingClient/callingClientFixtures.d.ts.map +1 -1
  180. package/dist/types/CallingClient/constants.d.ts +7 -3
  181. package/dist/types/CallingClient/constants.d.ts.map +1 -1
  182. package/dist/types/CallingClient/line/index.d.ts +6 -6
  183. package/dist/types/CallingClient/line/index.d.ts.map +1 -1
  184. package/dist/types/CallingClient/line/types.d.ts +11 -23
  185. package/dist/types/CallingClient/line/types.d.ts.map +1 -1
  186. package/dist/types/CallingClient/registration/register.d.ts +3 -3
  187. package/dist/types/CallingClient/registration/register.d.ts.map +1 -1
  188. package/dist/types/CallingClient/registration/types.d.ts +14 -14
  189. package/dist/types/CallingClient/registration/types.d.ts.map +1 -1
  190. package/dist/types/CallingClient/types.d.ts +6 -4
  191. package/dist/types/CallingClient/types.d.ts.map +1 -1
  192. package/dist/types/Contacts/ContactsClient.d.ts +1 -1
  193. package/dist/types/Errors/catalog/CallingDeviceError.d.ts +4 -4
  194. package/dist/types/Errors/catalog/CallingDeviceError.d.ts.map +1 -1
  195. package/dist/types/Errors/catalog/LineError.d.ts +4 -4
  196. package/dist/types/Errors/catalog/LineError.d.ts.map +1 -1
  197. package/dist/types/Errors/index.d.ts +1 -0
  198. package/dist/types/Errors/index.d.ts.map +1 -1
  199. package/dist/types/Errors/types.d.ts +2 -3
  200. package/dist/types/Errors/types.d.ts.map +1 -1
  201. package/dist/types/Events/types.d.ts +28 -5
  202. package/dist/types/Events/types.d.ts.map +1 -1
  203. package/dist/types/SDKConnector/types.d.ts +2 -1
  204. package/dist/types/SDKConnector/types.d.ts.map +1 -1
  205. package/dist/types/Voicemail/UcmBackendConnector.d.ts +1 -1
  206. package/dist/types/Voicemail/Voicemail.d.ts.map +1 -1
  207. package/dist/types/Voicemail/WxCallBackendConnector.d.ts +1 -1
  208. package/dist/types/Voicemail/types.d.ts +10 -10
  209. package/dist/types/Voicemail/types.d.ts.map +1 -1
  210. package/dist/types/api.d.ts +4 -5
  211. package/dist/types/api.d.ts.map +1 -1
  212. package/dist/types/common/Utils.d.ts.map +1 -1
  213. package/dist/types/common/testUtil.d.ts +1 -0
  214. package/dist/types/common/testUtil.d.ts.map +1 -1
  215. package/dist/types/common/types.d.ts +3 -2
  216. package/dist/types/common/types.d.ts.map +1 -1
  217. package/dist/types/index.d.ts +13 -0
  218. package/dist/types/index.d.ts.map +1 -1
  219. package/package.json +3 -3
@@ -12,7 +12,8 @@ var _stringify = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/
12
12
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/asyncToGenerator"));
13
13
  var MediaSDK = _interopRequireWildcard(require("@webex/internal-media-core"));
14
14
  var _types = require("../../Errors/types");
15
- var Utils = _interopRequireWildcard(require("../../common/Utils"));
15
+ var _Utils = _interopRequireWildcard(require("../../common/Utils"));
16
+ var Utils = _Utils;
16
17
  var _types2 = require("../../Events/types");
17
18
  var _constants = require("../constants");
18
19
  var _types3 = require("../../common/types");
@@ -23,8 +24,8 @@ var _testUtil = require("../../common/testUtil");
23
24
  var _callManager = require("./callManager");
24
25
  var _Logger = _interopRequireDefault(require("../../Logger"));
25
26
  var _Errors = require("../../Errors");
26
- 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); }
27
- 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; }
27
+ function _getRequireWildcardCache(e) { if ("function" != typeof _WeakMap) return null; var r = new _WeakMap(), t = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
28
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? _Object$getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? _Object$defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
28
29
  /* eslint-disable @typescript-eslint/no-explicit-any */
29
30
  /* eslint-disable dot-notation */
30
31
  /* eslint-disable @typescript-eslint/no-shadow */
@@ -143,10 +144,53 @@ describe('Call Tests', function () {
143
144
  var call = (0, _call.createCall)(activeUrl, webex, dest, _types3.CallDirection.OUTBOUND, deviceId, mockLineId, deleteCallFromCollection, defaultServiceIndicator);
144
145
  expect(call).toBeTruthy();
145
146
  });
146
- it('delete call object when ending the call', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
147
- var callManager, mockStream, localAudioStream, call;
147
+ it('should log a warning when sending a digit fails', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
148
+ var tone, errorMessage, mockMediaConnection, callManager, call, realMediaConnection, logWarnSpy;
148
149
  return _regenerator.default.wrap(function _callee$(_context) {
149
150
  while (1) switch (_context.prev = _context.next) {
151
+ case 0:
152
+ tone = '1';
153
+ errorMessage = 'Failed to send digit'; // Mock the mediaConnection object
154
+ mockMediaConnection = {
155
+ insertDTMF: jest.fn(function () {
156
+ throw new Error(errorMessage);
157
+ })
158
+ };
159
+ callManager = (0, _callManager.getCallManager)(webex, defaultServiceIndicator);
160
+ call = callManager.createCall(dest, _types3.CallDirection.OUTBOUND, deviceId, mockLineId);
161
+ realMediaConnection = call.mediaConnection; // Set the mock mediaConnection object
162
+ call.mediaConnection = mockMediaConnection;
163
+
164
+ // Spy on the log.warn method
165
+ logWarnSpy = jest.spyOn(_Logger.default, 'warn'); // Call the sendDigit method
166
+ call.sendDigit(tone);
167
+
168
+ // Expect the log.warn method to be called with the error message
169
+ expect(logWarnSpy).toHaveBeenLastCalledWith("Unable to send digit on call: ".concat(errorMessage), {
170
+ file: 'call',
171
+ method: 'sendDigit'
172
+ });
173
+
174
+ // Restore the real mediaConnection object
175
+ call.mediaConnection = realMediaConnection;
176
+ call.end();
177
+ _context.next = 14;
178
+ return (0, _Utils.waitForMsecs)(50);
179
+ case 14:
180
+ // Need to add a small delay for Promise and callback to finish.
181
+
182
+ /* After call ends, call manager should have 0 record */
183
+ expect((0, _keys.default)(callManager.getActiveCalls()).length).toBe(0);
184
+ case 15:
185
+ case "end":
186
+ return _context.stop();
187
+ }
188
+ }, _callee);
189
+ })));
190
+ it('delete call object when ending the call', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
191
+ var callManager, mockStream, localAudioStream, call;
192
+ return _regenerator.default.wrap(function _callee2$(_context2) {
193
+ while (1) switch (_context2.prev = _context2.next) {
150
194
  case 0:
151
195
  webex.request.mockReturnValue({
152
196
  statusCode: 200,
@@ -162,7 +206,8 @@ describe('Call Tests', function () {
162
206
  mockStream = {
163
207
  outputStream: {
164
208
  getAudioTracks: jest.fn().mockReturnValue([mockTrack])
165
- }
209
+ },
210
+ on: jest.fn()
166
211
  };
167
212
  localAudioStream = mockStream;
168
213
  call = callManager.createCall(dest, _types3.CallDirection.OUTBOUND, deviceId, mockLineId);
@@ -176,8 +221,8 @@ describe('Call Tests', function () {
176
221
  expect(mockTrack.enabled).toEqual(true);
177
222
  expect(call.isMuted()).toEqual(false);
178
223
  call.end();
179
- _context.next = 16;
180
- return (0, Utils.waitForMsecs)(50);
224
+ _context2.next = 16;
225
+ return (0, _Utils.waitForMsecs)(50);
181
226
  case 16:
182
227
  // Need to add a small delay for Promise and callback to finish.
183
228
  expect(parseMediaQualityStatisticsMock).toHaveBeenCalledTimes(1);
@@ -189,14 +234,14 @@ describe('Call Tests', function () {
189
234
  expect((0, _keys.default)(callManager.getActiveCalls()).length).toBe(0);
190
235
  case 21:
191
236
  case "end":
192
- return _context.stop();
237
+ return _context2.stop();
193
238
  }
194
- }, _callee);
239
+ }, _callee2);
195
240
  })));
196
- it('Check whether media requests succeed or not', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2() {
241
+ it('Check whether media requests succeed or not', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
197
242
  var mediaResponse, call, response;
198
- return _regenerator.default.wrap(function _callee2$(_context2) {
199
- while (1) switch (_context2.prev = _context2.next) {
243
+ return _regenerator.default.wrap(function _callee3$(_context3) {
244
+ while (1) switch (_context3.prev = _context3.next) {
200
245
  case 0:
201
246
  webex.request.mockReturnValue({
202
247
  statusCode: 200,
@@ -219,47 +264,47 @@ describe('Call Tests', function () {
219
264
  }
220
265
  };
221
266
  call = callManager.createCall(dest, _types3.CallDirection.INBOUND, deviceId, mockLineId);
222
- _context2.next = 5;
267
+ _context3.next = 5;
223
268
  return call['postMedia']({});
224
269
  case 5:
225
- response = _context2.sent;
270
+ response = _context3.sent;
226
271
  expect(response.body).toStrictEqual(mediaResponse.body);
227
272
  case 7:
228
273
  case "end":
229
- return _context2.stop();
274
+ return _context3.stop();
230
275
  }
231
- }, _callee2);
276
+ }, _callee3);
232
277
  })));
233
- it('check whether callerId midcall event is serviced or not', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3() {
278
+ it('check whether callerId midcall event is serviced or not', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {
234
279
  var call;
235
- return _regenerator.default.wrap(function _callee3$(_context3) {
236
- while (1) switch (_context3.prev = _context3.next) {
280
+ return _regenerator.default.wrap(function _callee4$(_context4) {
281
+ while (1) switch (_context4.prev = _context4.next) {
237
282
  case 0:
238
283
  call = callManager.createCall(dest, _types3.CallDirection.OUTBOUND, deviceId, mockLineId);
239
284
  call.handleMidCallEvent(dummyMidCallEvent);
240
- _context3.next = 4;
241
- return (0, Utils.waitForMsecs)(50);
285
+ _context4.next = 4;
286
+ return (0, _Utils.waitForMsecs)(50);
242
287
  case 4:
243
288
  expect(call.getCallerInfo().name).toStrictEqual('Bob Marley');
244
289
  expect(call.getCallerInfo().num).toStrictEqual('5010');
245
290
  expect(call.getCallerInfo().avatarSrc).toBeFalsy();
246
291
  case 7:
247
292
  case "end":
248
- return _context3.stop();
293
+ return _context4.stop();
249
294
  }
250
- }, _callee3);
295
+ }, _callee4);
251
296
  })));
252
- it('check whether call midcall event is serviced or not', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4() {
297
+ it('check whether call midcall event is serviced or not', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5() {
253
298
  var call, logSpy, corelationId;
254
- return _regenerator.default.wrap(function _callee4$(_context4) {
255
- while (1) switch (_context4.prev = _context4.next) {
299
+ return _regenerator.default.wrap(function _callee5$(_context5) {
300
+ while (1) switch (_context5.prev = _context5.next) {
256
301
  case 0:
257
302
  call = callManager.createCall(dest, _types3.CallDirection.OUTBOUND, deviceId, mockLineId);
258
303
  dummyMidCallEvent.eventType = 'callState';
259
304
  logSpy = jest.spyOn(_Logger.default, 'log');
260
305
  call.handleMidCallEvent(dummyMidCallEvent);
261
- _context4.next = 6;
262
- return (0, Utils.waitForMsecs)(50);
306
+ _context5.next = 6;
307
+ return (0, _Utils.waitForMsecs)(50);
263
308
  case 6:
264
309
  corelationId = call.getCorrelationId();
265
310
  expect(logSpy).toHaveBeenLastCalledWith("Received Midcall call event for correlationId : ".concat(corelationId), {
@@ -268,39 +313,39 @@ describe('Call Tests', function () {
268
313
  });
269
314
  case 8:
270
315
  case "end":
271
- return _context4.stop();
316
+ return _context5.stop();
272
317
  }
273
- }, _callee4);
318
+ }, _callee5);
274
319
  })));
275
- it('check call stats for active call', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5() {
320
+ it('check call stats for active call', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6() {
276
321
  var call, callRtpStats;
277
- return _regenerator.default.wrap(function _callee5$(_context5) {
278
- while (1) switch (_context5.prev = _context5.next) {
322
+ return _regenerator.default.wrap(function _callee6$(_context6) {
323
+ while (1) switch (_context6.prev = _context6.next) {
279
324
  case 0:
280
325
  call = callManager.createCall(dest, _types3.CallDirection.OUTBOUND, deviceId, mockLineId);
281
- _context5.prev = 1;
282
- _context5.next = 4;
326
+ _context6.prev = 1;
327
+ _context6.next = 4;
283
328
  return call.getCallRtpStats();
284
329
  case 4:
285
- callRtpStats = _context5.sent;
286
- _context5.next = 10;
330
+ callRtpStats = _context6.sent;
331
+ _context6.next = 10;
287
332
  break;
288
333
  case 7:
289
- _context5.prev = 7;
290
- _context5.t0 = _context5["catch"](1);
291
- console.error(_context5.t0);
334
+ _context6.prev = 7;
335
+ _context6.t0 = _context6["catch"](1);
336
+ console.error(_context6.t0);
292
337
  case 10:
293
338
  expect(callRtpStats).toStrictEqual(disconnectStats);
294
339
  case 11:
295
340
  case "end":
296
- return _context5.stop();
341
+ return _context6.stop();
297
342
  }
298
- }, _callee5, null, [[1, 7]]);
343
+ }, _callee6, null, [[1, 7]]);
299
344
  })));
300
- it('dial functionality tests for coverage', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6() {
345
+ it('dial functionality tests for coverage', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7() {
301
346
  var mockStream, localAudioStream, warnSpy, call;
302
- return _regenerator.default.wrap(function _callee6$(_context6) {
303
- while (1) switch (_context6.prev = _context6.next) {
347
+ return _regenerator.default.wrap(function _callee7$(_context7) {
348
+ while (1) switch (_context7.prev = _context7.next) {
304
349
  case 0:
305
350
  mockStream = {
306
351
  outputStream: {
@@ -325,14 +370,14 @@ describe('Call Tests', function () {
325
370
  });
326
371
  case 12:
327
372
  case "end":
328
- return _context6.stop();
373
+ return _context7.stop();
329
374
  }
330
- }, _callee6);
375
+ }, _callee7);
331
376
  })));
332
- it('answer functionality tests for coverage', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7() {
377
+ it('answer functionality tests for coverage', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8() {
333
378
  var mockStream, localAudioStream, warnSpy, call;
334
- return _regenerator.default.wrap(function _callee7$(_context7) {
335
- while (1) switch (_context7.prev = _context7.next) {
379
+ return _regenerator.default.wrap(function _callee8$(_context8) {
380
+ while (1) switch (_context8.prev = _context8.next) {
336
381
  case 0:
337
382
  mockStream = {
338
383
  outputStream: {
@@ -359,10 +404,139 @@ describe('Call Tests', function () {
359
404
  expect(call['callStateMachine'].state.value).toBe('S_SEND_CALL_CONNECT');
360
405
  case 12:
361
406
  case "end":
362
- return _context7.stop();
407
+ return _context8.stop();
363
408
  }
364
- }, _callee7);
409
+ }, _callee8);
410
+ })));
411
+ it('answer fails if localAudioTrack is empty', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9() {
412
+ var mockStream, localAudioStream, warnSpy, call;
413
+ return _regenerator.default.wrap(function _callee9$(_context9) {
414
+ while (1) switch (_context9.prev = _context9.next) {
415
+ case 0:
416
+ mockStream = {
417
+ outputStream: {
418
+ getAudioTracks: jest.fn().mockReturnValue([])
419
+ },
420
+ on: jest.fn()
421
+ };
422
+ localAudioStream = mockStream;
423
+ webex.request.mockReturnValue({
424
+ statusCode: 200,
425
+ body: {
426
+ device: {
427
+ deviceId: '8a67806f-fc4d-446b-a131-31e71ea5b010',
428
+ correlationId: '8a67806f-fc4d-446b-a131-31e71ea5b011'
429
+ },
430
+ callId: '8a67806f-fc4d-446b-a131-31e71ea5b020'
431
+ }
432
+ });
433
+ warnSpy = jest.spyOn(_Logger.default, 'warn');
434
+ call = (0, _call.createCall)(activeUrl, webex, dest, _types3.CallDirection.OUTBOUND, deviceId, mockLineId, deleteCallFromCollection, defaultServiceIndicator);
435
+ call.answer(localAudioStream);
436
+ _context9.next = 8;
437
+ return (0, _Utils.waitForMsecs)(50);
438
+ case 8:
439
+ expect(warnSpy).toBeCalledTimes(2);
440
+ expect(warnSpy).toBeCalledWith("Did not find a local track while answering the call ".concat(call.getCorrelationId()), {
441
+ file: 'call',
442
+ method: 'answer'
443
+ });
444
+ expect(call['callStateMachine'].state.value).toBe('S_CALL_CLEARED');
445
+ expect(call['mediaStateMachine'].state.value).toBe('S_ROAP_IDLE');
446
+ expect(call.getDisconnectReason().code).toBe(_types5.DisconnectCode.MEDIA_INACTIVITY);
447
+ expect(call.getDisconnectReason().cause).toBe(_types5.DisconnectCause.MEDIA_INACTIVITY);
448
+ expect(webex.request.mock.calls[0][0].body.metrics).toStrictEqual(disconnectStats);
449
+ case 15:
450
+ case "end":
451
+ return _context9.stop();
452
+ }
453
+ }, _callee9);
454
+ })));
455
+ it('dial fails if localAudioTrack is empty', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10() {
456
+ var mockStream, localAudioStream, warnSpy, call;
457
+ return _regenerator.default.wrap(function _callee10$(_context10) {
458
+ while (1) switch (_context10.prev = _context10.next) {
459
+ case 0:
460
+ mockStream = {
461
+ outputStream: {
462
+ getAudioTracks: jest.fn().mockReturnValue([])
463
+ },
464
+ on: jest.fn()
465
+ };
466
+ localAudioStream = mockStream;
467
+ warnSpy = jest.spyOn(_Logger.default, 'warn');
468
+ call = (0, _call.createCall)(activeUrl, webex, dest, _types3.CallDirection.OUTBOUND, deviceId, mockLineId, deleteCallFromCollection, defaultServiceIndicator);
469
+ call.dial(localAudioStream);
470
+ _context10.next = 7;
471
+ return (0, _Utils.waitForMsecs)(50);
472
+ case 7:
473
+ expect(warnSpy).toBeCalledTimes(1);
474
+ expect(warnSpy).toBeCalledWith("Did not find a local track while dialing the call ".concat(call.getCorrelationId()), {
475
+ file: 'call',
476
+ method: 'dial'
477
+ });
478
+ expect(call['callStateMachine'].state.value).toBe('S_IDLE');
479
+ expect(call['mediaStateMachine'].state.value).toBe('S_ROAP_IDLE');
480
+ expect(webex.request).not.toBeCalledOnceWith();
481
+ case 12:
482
+ case "end":
483
+ return _context10.stop();
484
+ }
485
+ }, _callee10);
365
486
  })));
487
+ it('update media after call creation with valid stream', function () {
488
+ var callManager = (0, _callManager.getCallManager)(webex, defaultServiceIndicator);
489
+ var mockStream = {
490
+ outputStream: {
491
+ getAudioTracks: jest.fn().mockReturnValue([mockTrack])
492
+ },
493
+ on: jest.fn()
494
+ };
495
+ var localAudioStream = mockStream;
496
+ var call = callManager.createCall(dest, _types3.CallDirection.OUTBOUND, deviceId, mockLineId);
497
+ call.dial(localAudioStream);
498
+ expect(mockTrack.enabled).toEqual(true);
499
+ var mockTrack2 = {
500
+ enabled: true
501
+ };
502
+ var mockStream2 = {
503
+ outputStream: {
504
+ getAudioTracks: jest.fn().mockReturnValue([mockTrack2])
505
+ },
506
+ on: jest.fn()
507
+ };
508
+ var localAudioStream2 = mockStream2;
509
+ call.updateMedia(localAudioStream2);
510
+ expect(call['mediaConnection'].updateLocalTracks).toBeCalledOnceWith({
511
+ audio: mockTrack2
512
+ });
513
+ });
514
+ it('update media with invalid stream', function () {
515
+ var callManager = (0, _callManager.getCallManager)(webex, defaultServiceIndicator);
516
+ var warnSpy = jest.spyOn(_Logger.default, 'warn');
517
+ var mockStream = {
518
+ outputStream: {
519
+ getAudioTracks: jest.fn().mockReturnValue([mockTrack])
520
+ },
521
+ on: jest.fn()
522
+ };
523
+ var localAudioStream = mockStream;
524
+ var call = callManager.createCall(dest, _types3.CallDirection.OUTBOUND, deviceId, mockLineId);
525
+ call.dial(localAudioStream);
526
+ expect(mockTrack.enabled).toEqual(true);
527
+ var errorStream = {
528
+ outputStream: {
529
+ getAudioTracks: jest.fn().mockReturnValue([])
530
+ }
531
+ };
532
+ var localAudioStream2 = errorStream;
533
+ call.updateMedia(localAudioStream2);
534
+ expect(call['mediaConnection'].updateLocalTracks).not.toBeCalled();
535
+ expect(warnSpy).toBeCalledOnceWith("Did not find a local track while updating media for call ".concat(call.getCorrelationId(), ". Will not update media"), {
536
+ file: 'call',
537
+ method: 'updateMedia'
538
+ });
539
+ });
366
540
  });
367
541
  describe('State Machine handler tests', function () {
368
542
  var deviceId = '55dfb53f-bed2-36da-8e85-cee7f02aa68e';
@@ -393,10 +567,10 @@ describe('State Machine handler tests', function () {
393
567
 
394
568
  // afterEach(() => call.removeAllListeners());
395
569
 
396
- it('successful session refresh', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee8() {
570
+ it('successful session refresh', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee11() {
397
571
  var statusPayload, dummyEvent, funcSpy, logSpy;
398
- return _regenerator.default.wrap(function _callee8$(_context8) {
399
- while (1) switch (_context8.prev = _context8.next) {
572
+ return _regenerator.default.wrap(function _callee11$(_context11) {
573
+ while (1) switch (_context11.prev = _context11.next) {
400
574
  case 0:
401
575
  statusPayload = {
402
576
  statusCode: 200,
@@ -416,7 +590,7 @@ describe('State Machine handler tests', function () {
416
590
  /* This is to flush all the promises from the Promise queue so that
417
591
  * Jest.fakeTimers can advance time and also clear the promise Queue
418
592
  */
419
- _context8.next = 11;
593
+ _context11.next = 11;
420
594
  return (0, _testUtil.flushPromises)(3);
421
595
  case 11:
422
596
  expect(setInterval).toHaveBeenCalledTimes(1);
@@ -427,14 +601,14 @@ describe('State Machine handler tests', function () {
427
601
  });
428
602
  case 14:
429
603
  case "end":
430
- return _context8.stop();
604
+ return _context11.stop();
431
605
  }
432
- }, _callee8);
606
+ }, _callee11);
433
607
  })));
434
- it('session refresh failure', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee9() {
608
+ it('session refresh failure', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee12() {
435
609
  var statusPayload, funcSpy;
436
- return _regenerator.default.wrap(function _callee9$(_context9) {
437
- while (1) switch (_context9.prev = _context9.next) {
610
+ return _regenerator.default.wrap(function _callee12$(_context12) {
611
+ while (1) switch (_context12.prev = _context12.next) {
438
612
  case 0:
439
613
  expect.assertions(4);
440
614
  statusPayload = {
@@ -458,24 +632,24 @@ describe('State Machine handler tests', function () {
458
632
  /* This is to flush all the promises from the Promise queue so that
459
633
  * Jest.fakeTimers can advance time and also clear the promise Queue
460
634
  */
461
- _context9.next = 11;
635
+ _context12.next = 11;
462
636
  return _promise.default.resolve();
463
637
  case 11:
464
- _context9.next = 13;
638
+ _context12.next = 13;
465
639
  return _promise.default.resolve();
466
640
  case 13:
467
641
  expect(clearInterval).toHaveBeenCalledTimes(1);
468
642
  expect(funcSpy).toBeCalledTimes(1);
469
643
  case 15:
470
644
  case "end":
471
- return _context9.stop();
645
+ return _context12.stop();
472
646
  }
473
- }, _callee9);
647
+ }, _callee12);
474
648
  })));
475
- it('state changes during successful incoming call', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee10() {
649
+ it('state changes during successful incoming call', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee13() {
476
650
  var statusPayload, dummyEvent, postMediaSpy, deleteSpy, dummyOkEvent;
477
- return _regenerator.default.wrap(function _callee10$(_context10) {
478
- while (1) switch (_context10.prev = _context10.next) {
651
+ return _regenerator.default.wrap(function _callee13$(_context13) {
652
+ while (1) switch (_context13.prev = _context13.next) {
479
653
  case 0:
480
654
  statusPayload = {
481
655
  statusCode: 200,
@@ -531,14 +705,14 @@ describe('State Machine handler tests', function () {
531
705
  expect(call['callStateMachine'].state.value).toBe('S_RECV_CALL_DISCONNECT');
532
706
  case 27:
533
707
  case "end":
534
- return _context10.stop();
708
+ return _context13.stop();
535
709
  }
536
- }, _callee10);
710
+ }, _callee13);
537
711
  })));
538
- it('state changes during unsuccessful incoming call due to no offer', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee11() {
712
+ it('state changes during unsuccessful incoming call due to no offer', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee14() {
539
713
  var statusPayload, dummyEvent;
540
- return _regenerator.default.wrap(function _callee11$(_context11) {
541
- while (1) switch (_context11.prev = _context11.next) {
714
+ return _regenerator.default.wrap(function _callee14$(_context14) {
715
+ while (1) switch (_context14.prev = _context14.next) {
542
716
  case 0:
543
717
  call['direction'] = _types3.CallDirection.INBOUND;
544
718
  statusPayload = {
@@ -556,7 +730,7 @@ describe('State Machine handler tests', function () {
556
730
  webex.request.mockReturnValue(statusPayload);
557
731
  call.sendCallStateMachineEvt(dummyEvent);
558
732
  expect(call['callStateMachine'].state.value).toBe('S_SEND_CALL_PROGRESS');
559
- _context11.next = 8;
733
+ _context14.next = 8;
560
734
  return call['handleOutgoingCallConnect']({
561
735
  type: 'E_SEND_CALL_CONNECT'
562
736
  });
@@ -570,14 +744,14 @@ describe('State Machine handler tests', function () {
570
744
  expect(call['callStateMachine'].state.value).toBe('S_RECV_CALL_DISCONNECT');
571
745
  case 12:
572
746
  case "end":
573
- return _context11.stop();
747
+ return _context14.stop();
574
748
  }
575
- }, _callee11);
749
+ }, _callee14);
576
750
  })));
577
- it('state changes during unsuccessful incoming call due error in call connect', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee12() {
751
+ it('state changes during unsuccessful incoming call due error in call connect', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee15() {
578
752
  var warnSpy, stateMachineSpy, statusPayload, roapMessage;
579
- return _regenerator.default.wrap(function _callee12$(_context12) {
580
- while (1) switch (_context12.prev = _context12.next) {
753
+ return _regenerator.default.wrap(function _callee15$(_context15) {
754
+ while (1) switch (_context15.prev = _context15.next) {
581
755
  case 0:
582
756
  warnSpy = jest.spyOn(_Logger.default, 'warn');
583
757
  stateMachineSpy = jest.spyOn(call, 'sendCallStateMachineEvt');
@@ -603,7 +777,7 @@ describe('State Machine handler tests', function () {
603
777
  webex.request.mockRejectedValueOnce({
604
778
  statusCode: 403
605
779
  }).mockResolvedValue(statusPayload);
606
- _context12.next = 12;
780
+ _context15.next = 12;
607
781
  return call['handleOutgoingCallConnect']({
608
782
  type: 'E_SEND_CALL_CONNECT'
609
783
  });
@@ -611,23 +785,16 @@ describe('State Machine handler tests', function () {
611
785
  expect(call['callStateMachine'].state.value).toBe('S_UNKNOWN');
612
786
  expect(stateMachineSpy).toBeCalledTimes(3);
613
787
  expect(warnSpy).toBeCalledTimes(4);
614
- warnSpy.mockClear();
615
- /* Try sending a dtmf which shouldn't work as call is not connected. */
616
- call.sendDigit('1');
617
- expect(warnSpy).toBeCalledOnceWith("Can't send DTMF as call is not yet connected", {
618
- file: 'call',
619
- method: 'sendDigit'
620
- });
621
- case 18:
788
+ case 15:
622
789
  case "end":
623
- return _context12.stop();
790
+ return _context15.stop();
624
791
  }
625
- }, _callee12);
792
+ }, _callee15);
626
793
  })));
627
- it('state changes during successful outgoing call', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee13() {
794
+ it('state changes during successful outgoing call', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee16() {
628
795
  var statusPayload, dummyEvent, postMediaSpy, dummyOkEvent;
629
- return _regenerator.default.wrap(function _callee13$(_context13) {
630
- while (1) switch (_context13.prev = _context13.next) {
796
+ return _regenerator.default.wrap(function _callee16$(_context16) {
797
+ while (1) switch (_context16.prev = _context16.next) {
631
798
  case 0:
632
799
  statusPayload = {
633
800
  statusCode: 200,
@@ -701,14 +868,89 @@ describe('State Machine handler tests', function () {
701
868
  expect(call['callStateMachine'].state.value).toBe('S_SEND_CALL_DISCONNECT');
702
869
  case 40:
703
870
  case "end":
704
- return _context13.stop();
871
+ return _context16.stop();
705
872
  }
706
- }, _callee13);
873
+ }, _callee16);
874
+ })));
875
+ it('outgoing call where we receive connect directly after setup. Media established before connect. test call and media state changes', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee17() {
876
+ var statusPayload, dummySetupEvent, dummyConnectEvent, dummyOfferEvent, dummyAnswerEvent, dummyOkEvent, postMediaSpy;
877
+ return _regenerator.default.wrap(function _callee17$(_context17) {
878
+ while (1) switch (_context17.prev = _context17.next) {
879
+ case 0:
880
+ statusPayload = {
881
+ statusCode: 200,
882
+ body: mockStatusBody
883
+ };
884
+ dummySetupEvent = {
885
+ type: 'E_SEND_CALL_SETUP',
886
+ data: undefined
887
+ };
888
+ dummyConnectEvent = {
889
+ type: 'E_RECV_CALL_CONNECT',
890
+ data: undefined
891
+ };
892
+ dummyOfferEvent = {
893
+ type: 'E_SEND_ROAP_OFFER',
894
+ data: undefined
895
+ };
896
+ dummyAnswerEvent = {
897
+ type: 'E_RECV_ROAP_ANSWER',
898
+ data: {
899
+ seq: 1,
900
+ messageType: 'ANSWER',
901
+ sdp: 'sdp'
902
+ }
903
+ };
904
+ dummyOkEvent = {
905
+ type: 'E_ROAP_OK',
906
+ data: {
907
+ received: false,
908
+ message: {
909
+ seq: 1,
910
+ messageType: 'OK'
911
+ }
912
+ }
913
+ };
914
+ postMediaSpy = jest.spyOn(call, 'postMedia');
915
+ webex.request.mockReturnValue(statusPayload);
916
+ call.sendCallStateMachineEvt(dummySetupEvent);
917
+ expect(call['callStateMachine'].state.value).toBe('S_SEND_CALL_SETUP');
918
+ call.sendMediaStateMachineEvt(dummyOfferEvent);
919
+
920
+ /**
921
+ * Since the event doesn't have any data above, we should request media sdk for an offer here.
922
+ * The below event is expected to be called again my mediaSdk.
923
+ */
924
+ dummyOfferEvent.data = {
925
+ seq: 1,
926
+ messageType: 'OFFER',
927
+ sdp: 'sdp'
928
+ };
929
+ call.sendMediaStateMachineEvt(dummyOfferEvent);
930
+ expect(_testUtil.mediaConnection.initiateOffer).toHaveBeenCalledTimes(1);
931
+ expect(postMediaSpy).toHaveBeenLastCalledWith(dummyOfferEvent.data);
932
+ call.sendMediaStateMachineEvt(dummyAnswerEvent);
933
+ expect(_testUtil.mediaConnection.roapMessageReceived).toHaveBeenLastCalledWith(dummyAnswerEvent.data);
934
+ call.sendMediaStateMachineEvt(dummyOkEvent);
935
+ expect(postMediaSpy).toHaveBeenLastCalledWith(dummyOkEvent.data.message);
936
+ expect(call['mediaStateMachine'].state.value).toBe('S_ROAP_OK');
937
+ call.sendCallStateMachineEvt(dummyConnectEvent);
938
+ expect(call['callStateMachine'].state.value).toBe('S_CALL_ESTABLISHED');
939
+ expect(call.isConnected()).toBe(true);
940
+ call.sendCallStateMachineEvt({
941
+ type: 'E_SEND_CALL_DISCONNECT'
942
+ });
943
+ expect(call['callStateMachine'].state.value).toBe('S_SEND_CALL_DISCONNECT');
944
+ case 25:
945
+ case "end":
946
+ return _context17.stop();
947
+ }
948
+ }, _callee17);
707
949
  })));
708
- it('state changes during successful outgoing call with early media', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee14() {
950
+ it('state changes during successful outgoing call with early media', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee18() {
709
951
  var statusPayload, dummyEvent;
710
- return _regenerator.default.wrap(function _callee14$(_context14) {
711
- while (1) switch (_context14.prev = _context14.next) {
952
+ return _regenerator.default.wrap(function _callee18$(_context18) {
953
+ while (1) switch (_context18.prev = _context18.next) {
712
954
  case 0:
713
955
  statusPayload = {
714
956
  statusCode: 200,
@@ -747,14 +989,14 @@ describe('State Machine handler tests', function () {
747
989
  expect(call['callStateMachine'].state.value).toBe('S_RECV_CALL_DISCONNECT');
748
990
  case 17:
749
991
  case "end":
750
- return _context14.stop();
992
+ return _context18.stop();
751
993
  }
752
- }, _callee14);
994
+ }, _callee18);
753
995
  })));
754
- it('state changes during unsuccessful outgoing call due to error in call setup', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee15() {
996
+ it('state changes during unsuccessful outgoing call due to error in call setup', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19() {
755
997
  var statusPayload, dummyEvent;
756
- return _regenerator.default.wrap(function _callee15$(_context15) {
757
- while (1) switch (_context15.prev = _context15.next) {
998
+ return _regenerator.default.wrap(function _callee19$(_context19) {
999
+ while (1) switch (_context19.prev = _context19.next) {
758
1000
  case 0:
759
1001
  statusPayload = {
760
1002
  statusCode: 403,
@@ -770,20 +1012,20 @@ describe('State Machine handler tests', function () {
770
1012
  };
771
1013
  webex.request.mockRejectedValueOnce(statusPayload);
772
1014
  call.sendCallStateMachineEvt(dummyEvent);
773
- _context15.next = 6;
1015
+ _context19.next = 6;
774
1016
  return (0, _testUtil.flushPromises)(3);
775
1017
  case 6:
776
1018
  expect(call['callStateMachine'].state.value).toBe('S_UNKNOWN');
777
1019
  case 7:
778
1020
  case "end":
779
- return _context15.stop();
1021
+ return _context19.stop();
780
1022
  }
781
- }, _callee15);
1023
+ }, _callee19);
782
1024
  })));
783
- it('state changes during unsuccessful outgoing call due to error in media ok', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee16() {
1025
+ it('state changes during unsuccessful outgoing call due to error in media ok', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee20() {
784
1026
  var statusPayload, dummyEvent;
785
- return _regenerator.default.wrap(function _callee16$(_context16) {
786
- while (1) switch (_context16.prev = _context16.next) {
1027
+ return _regenerator.default.wrap(function _callee20$(_context20) {
1028
+ while (1) switch (_context20.prev = _context20.next) {
787
1029
  case 0:
788
1030
  statusPayload = {
789
1031
  statusCode: 403,
@@ -800,10 +1042,10 @@ describe('State Machine handler tests', function () {
800
1042
  call['earlyMedia'] = true;
801
1043
  call['mediaStateMachine'].state.value = 'S_RECV_ROAP_ANSWER';
802
1044
  webex.request.mockRejectedValue(statusPayload);
803
- _context16.next = 8;
1045
+ _context20.next = 8;
804
1046
  return call['handleRoapEstablished']({}, dummyEvent);
805
1047
  case 8:
806
- _context16.next = 10;
1048
+ _context20.next = 10;
807
1049
  return (0, _testUtil.flushPromises)(2);
808
1050
  case 10:
809
1051
  expect(call.isConnected()).toBe(false);
@@ -811,14 +1053,14 @@ describe('State Machine handler tests', function () {
811
1053
  expect(call['callStateMachine'].state.value).toBe('S_UNKNOWN');
812
1054
  case 13:
813
1055
  case "end":
814
- return _context16.stop();
1056
+ return _context20.stop();
815
1057
  }
816
- }, _callee16);
1058
+ }, _callee20);
817
1059
  })));
818
- it('state changes during unsuccessful outgoing call since no sdp in offer', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee17() {
1060
+ it('state changes during unsuccessful outgoing call since no sdp in offer', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee21() {
819
1061
  var statusPayload, dummyEvent;
820
- return _regenerator.default.wrap(function _callee17$(_context17) {
821
- while (1) switch (_context17.prev = _context17.next) {
1062
+ return _regenerator.default.wrap(function _callee21$(_context21) {
1063
+ while (1) switch (_context21.prev = _context21.next) {
822
1064
  case 0:
823
1065
  statusPayload = {
824
1066
  statusCode: 403,
@@ -841,14 +1083,14 @@ describe('State Machine handler tests', function () {
841
1083
  expect(_testUtil.mediaConnection.initiateOffer).toBeCalledOnceWith();
842
1084
  case 8:
843
1085
  case "end":
844
- return _context17.stop();
1086
+ return _context21.stop();
845
1087
  }
846
- }, _callee17);
1088
+ }, _callee21);
847
1089
  })));
848
- it('Outgoing Roap offer retry-after error case during midcall', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee18() {
1090
+ it('Outgoing Roap offer retry-after error case during midcall', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee22() {
849
1091
  var statusPayload, funcSpy, stateMachineSpy, dummyEvent;
850
- return _regenerator.default.wrap(function _callee18$(_context18) {
851
- while (1) switch (_context18.prev = _context18.next) {
1092
+ return _regenerator.default.wrap(function _callee22$(_context22) {
1093
+ while (1) switch (_context22.prev = _context22.next) {
852
1094
  case 0:
853
1095
  statusPayload = {
854
1096
  statusCode: 503,
@@ -870,7 +1112,7 @@ describe('State Machine handler tests', function () {
870
1112
  }
871
1113
  };
872
1114
  call['connected'] = true;
873
- _context18.next = 8;
1115
+ _context22.next = 8;
874
1116
  return call['handleOutgoingRoapOffer']({}, dummyEvent);
875
1117
  case 8:
876
1118
  jest.advanceTimersByTime(1005);
@@ -882,14 +1124,14 @@ describe('State Machine handler tests', function () {
882
1124
  expect(stateMachineSpy).toBeCalledOnceWith(dummyEvent);
883
1125
  case 13:
884
1126
  case "end":
885
- return _context18.stop();
1127
+ return _context22.stop();
886
1128
  }
887
- }, _callee18);
1129
+ }, _callee22);
888
1130
  })));
889
- it('Outgoing Roap offer retry-after error case during call establishment', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee19() {
1131
+ it('Outgoing Roap offer retry-after error case during call establishment', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee23() {
890
1132
  var statusPayload, funcSpy, stateMachineSpy, dummyEvent;
891
- return _regenerator.default.wrap(function _callee19$(_context19) {
892
- while (1) switch (_context19.prev = _context19.next) {
1133
+ return _regenerator.default.wrap(function _callee23$(_context23) {
1134
+ while (1) switch (_context23.prev = _context23.next) {
893
1135
  case 0:
894
1136
  statusPayload = {
895
1137
  statusCode: 503,
@@ -911,7 +1153,7 @@ describe('State Machine handler tests', function () {
911
1153
  }
912
1154
  };
913
1155
  call['connected'] = false;
914
- _context19.next = 8;
1156
+ _context23.next = 8;
915
1157
  return call['handleOutgoingRoapOffer']({}, dummyEvent);
916
1158
  case 8:
917
1159
  jest.advanceTimersByTime(1005);
@@ -922,14 +1164,14 @@ describe('State Machine handler tests', function () {
922
1164
  expect(stateMachineSpy).not.toBeCalled();
923
1165
  case 12:
924
1166
  case "end":
925
- return _context19.stop();
1167
+ return _context23.stop();
926
1168
  }
927
- }, _callee19);
1169
+ }, _callee23);
928
1170
  })));
929
- it('Outgoing Roap Answer retry-after error case during midcall', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee20() {
1171
+ it('Outgoing Roap Answer retry-after error case during midcall', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee24() {
930
1172
  var statusPayload, funcSpy, stateMachineSpy, dummyEvent;
931
- return _regenerator.default.wrap(function _callee20$(_context20) {
932
- while (1) switch (_context20.prev = _context20.next) {
1173
+ return _regenerator.default.wrap(function _callee24$(_context24) {
1174
+ while (1) switch (_context24.prev = _context24.next) {
933
1175
  case 0:
934
1176
  statusPayload = {
935
1177
  statusCode: 503,
@@ -951,7 +1193,7 @@ describe('State Machine handler tests', function () {
951
1193
  };
952
1194
  call['connected'] = true;
953
1195
  call['mediaStateMachine'].state.value = 'S_RECV_ROAP_OFFER';
954
- _context20.next = 9;
1196
+ _context24.next = 9;
955
1197
  return call['handleOutgoingRoapAnswer']({}, dummyEvent);
956
1198
  case 9:
957
1199
  jest.advanceTimersByTime(1005);
@@ -963,14 +1205,14 @@ describe('State Machine handler tests', function () {
963
1205
  expect(stateMachineSpy).toBeCalledOnceWith(dummyEvent);
964
1206
  case 14:
965
1207
  case "end":
966
- return _context20.stop();
1208
+ return _context24.stop();
967
1209
  }
968
- }, _callee20);
1210
+ }, _callee24);
969
1211
  })));
970
- it('Outgoing Roap answer retry-after error case during call establishment', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee21() {
1212
+ it('Outgoing Roap answer retry-after error case during call establishment', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee25() {
971
1213
  var statusPayload, funcSpy, stateMachineSpy, dummyEvent;
972
- return _regenerator.default.wrap(function _callee21$(_context21) {
973
- while (1) switch (_context21.prev = _context21.next) {
1214
+ return _regenerator.default.wrap(function _callee25$(_context25) {
1215
+ while (1) switch (_context25.prev = _context25.next) {
974
1216
  case 0:
975
1217
  statusPayload = {
976
1218
  statusCode: 503,
@@ -991,7 +1233,7 @@ describe('State Machine handler tests', function () {
991
1233
  }
992
1234
  };
993
1235
  call['connected'] = false;
994
- _context21.next = 8;
1236
+ _context25.next = 8;
995
1237
  return call['handleOutgoingRoapAnswer']({}, dummyEvent);
996
1238
  case 8:
997
1239
  jest.advanceTimersByTime(1005);
@@ -1003,14 +1245,14 @@ describe('State Machine handler tests', function () {
1003
1245
  expect(stateMachineSpy).not.toBeCalled();
1004
1246
  case 13:
1005
1247
  case "end":
1006
- return _context21.stop();
1248
+ return _context25.stop();
1007
1249
  }
1008
- }, _callee21);
1250
+ }, _callee25);
1009
1251
  })));
1010
- it('ROAP error during mid call', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee22() {
1252
+ it('ROAP error during mid call', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee26() {
1011
1253
  var statusPayload, warnSpy, stateMachineSpy, funcSpy, errorEvent;
1012
- return _regenerator.default.wrap(function _callee22$(_context22) {
1013
- while (1) switch (_context22.prev = _context22.next) {
1254
+ return _regenerator.default.wrap(function _callee26$(_context26) {
1255
+ while (1) switch (_context26.prev = _context26.next) {
1014
1256
  case 0:
1015
1257
  statusPayload = {
1016
1258
  statusCode: 200,
@@ -1035,14 +1277,14 @@ describe('State Machine handler tests', function () {
1035
1277
  expect(stateMachineSpy).not.toHaveBeenCalled();
1036
1278
  case 11:
1037
1279
  case "end":
1038
- return _context22.stop();
1280
+ return _context26.stop();
1039
1281
  }
1040
- }, _callee22);
1282
+ }, _callee26);
1041
1283
  })));
1042
- it('ROAP ok retry-after during mid call', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee23() {
1284
+ it('ROAP ok retry-after during mid call', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee27() {
1043
1285
  var statusPayload, funcSpy, stateMachineSpy, dummyEvent;
1044
- return _regenerator.default.wrap(function _callee23$(_context23) {
1045
- while (1) switch (_context23.prev = _context23.next) {
1286
+ return _regenerator.default.wrap(function _callee27$(_context27) {
1287
+ while (1) switch (_context27.prev = _context27.next) {
1046
1288
  case 0:
1047
1289
  statusPayload = {
1048
1290
  statusCode: 503,
@@ -1064,7 +1306,7 @@ describe('State Machine handler tests', function () {
1064
1306
  };
1065
1307
  call['connected'] = true;
1066
1308
  call['mediaStateMachine'].state.value = 'S_RECV_ROAP_ANSWER';
1067
- _context23.next = 9;
1309
+ _context27.next = 9;
1068
1310
  return call['handleRoapEstablished']({}, dummyEvent);
1069
1311
  case 9:
1070
1312
  jest.advanceTimersByTime(1005);
@@ -1076,14 +1318,14 @@ describe('State Machine handler tests', function () {
1076
1318
  expect(stateMachineSpy).toBeCalledOnceWith(dummyEvent);
1077
1319
  case 14:
1078
1320
  case "end":
1079
- return _context23.stop();
1321
+ return _context27.stop();
1080
1322
  }
1081
- }, _callee23);
1323
+ }, _callee27);
1082
1324
  })));
1083
- it('Unable to communicate roap error with mobius', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee24() {
1325
+ it('Unable to communicate roap error with mobius', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee28() {
1084
1326
  var statusPayload, stateMachineSpy, funcSpy, errorEvent;
1085
- return _regenerator.default.wrap(function _callee24$(_context24) {
1086
- while (1) switch (_context24.prev = _context24.next) {
1327
+ return _regenerator.default.wrap(function _callee28$(_context28) {
1328
+ while (1) switch (_context28.prev = _context28.next) {
1087
1329
  case 0:
1088
1330
  statusPayload = {
1089
1331
  statusCode: 403,
@@ -1106,14 +1348,14 @@ describe('State Machine handler tests', function () {
1106
1348
  expect(stateMachineSpy).not.toHaveBeenCalled();
1107
1349
  case 9:
1108
1350
  case "end":
1109
- return _context24.stop();
1351
+ return _context28.stop();
1110
1352
  }
1111
- }, _callee24);
1353
+ }, _callee28);
1112
1354
  })));
1113
- it('ROAP error during call establishment', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee25() {
1355
+ it('ROAP error during call establishment', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee29() {
1114
1356
  var statusPayload, warnSpy, stateMachineSpy, funcSpy, errorEvent;
1115
- return _regenerator.default.wrap(function _callee25$(_context25) {
1116
- while (1) switch (_context25.prev = _context25.next) {
1357
+ return _regenerator.default.wrap(function _callee29$(_context29) {
1358
+ while (1) switch (_context29.prev = _context29.next) {
1117
1359
  case 0:
1118
1360
  statusPayload = {
1119
1361
  statusCode: 200,
@@ -1131,7 +1373,7 @@ describe('State Machine handler tests', function () {
1131
1373
  }
1132
1374
  };
1133
1375
  call['connected'] = false;
1134
- _context25.next = 8;
1376
+ _context29.next = 8;
1135
1377
  return call['handleRoapError']({}, errorEvent);
1136
1378
  case 8:
1137
1379
  expect(funcSpy).toBeCalledOnceWith(errorEvent.data);
@@ -1147,14 +1389,14 @@ describe('State Machine handler tests', function () {
1147
1389
  });
1148
1390
  case 11:
1149
1391
  case "end":
1150
- return _context25.stop();
1392
+ return _context29.stop();
1151
1393
  }
1152
- }, _callee25);
1394
+ }, _callee29);
1153
1395
  })));
1154
- it('state changes during successful incoming call with out of order events', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee26() {
1396
+ it('state changes during successful incoming call with out of order events', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee30() {
1155
1397
  var statusPayload, dummyEvent, postMediaSpy, dummyOkEvent, dummyOfferEvent;
1156
- return _regenerator.default.wrap(function _callee26$(_context26) {
1157
- while (1) switch (_context26.prev = _context26.next) {
1398
+ return _regenerator.default.wrap(function _callee30$(_context30) {
1399
+ while (1) switch (_context30.prev = _context30.next) {
1158
1400
  case 0:
1159
1401
  statusPayload = {
1160
1402
  statusCode: 200,
@@ -1187,7 +1429,7 @@ describe('State Machine handler tests', function () {
1187
1429
  seq: 1,
1188
1430
  messageType: 'ANSWER'
1189
1431
  };
1190
- _context26.next = 17;
1432
+ _context30.next = 17;
1191
1433
  return call.sendMediaStateMachineEvt(dummyEvent);
1192
1434
  case 17:
1193
1435
  expect(postMediaSpy).toBeCalledOnceWith(dummyEvent.data);
@@ -1209,7 +1451,7 @@ describe('State Machine handler tests', function () {
1209
1451
  seq: 2,
1210
1452
  messageType: 'OFFER_REQUEST'
1211
1453
  };
1212
- _context26.next = 23;
1454
+ _context30.next = 23;
1213
1455
  return call.sendMediaStateMachineEvt(dummyEvent);
1214
1456
  case 23:
1215
1457
  expect(call['receivedRoapOKSeq']).toBe(0);
@@ -1259,7 +1501,7 @@ describe('State Machine handler tests', function () {
1259
1501
  };
1260
1502
  call.sendCallStateMachineEvt(dummyEvent);
1261
1503
  dummyEvent.type = 'E_RECV_ROAP_OFFER';
1262
- _context26.next = 49;
1504
+ _context30.next = 49;
1263
1505
  return call.sendMediaStateMachineEvt(dummyEvent);
1264
1506
  case 49:
1265
1507
  expect(_testUtil.mediaConnection.roapMessageReceived).toHaveBeenLastCalledWith(dummyEvent.data);
@@ -1268,7 +1510,7 @@ describe('State Machine handler tests', function () {
1268
1510
  seq: 3,
1269
1511
  messageType: 'ANSWER'
1270
1512
  };
1271
- _context26.next = 54;
1513
+ _context30.next = 54;
1272
1514
  return call.sendMediaStateMachineEvt(dummyEvent);
1273
1515
  case 54:
1274
1516
  expect(postMediaSpy).toHaveBeenLastCalledWith(dummyEvent.data);
@@ -1287,7 +1529,7 @@ describe('State Machine handler tests', function () {
1287
1529
  messageType: 'OK'
1288
1530
  }
1289
1531
  };
1290
- _context26.next = 63;
1532
+ _context30.next = 63;
1291
1533
  return call.sendMediaStateMachineEvt(dummyOkEvent);
1292
1534
  case 63:
1293
1535
  expect(_testUtil.mediaConnection.roapMessageReceived).toHaveBeenNthCalledWith(6, dummyOkEvent.data.message);
@@ -1302,14 +1544,14 @@ describe('State Machine handler tests', function () {
1302
1544
  expect(postMediaSpy).toHaveBeenLastCalledWith(dummyEvent.data);
1303
1545
  case 70:
1304
1546
  case "end":
1305
- return _context26.stop();
1547
+ return _context30.stop();
1306
1548
  }
1307
- }, _callee26);
1549
+ }, _callee30);
1308
1550
  })));
1309
- it('successfully handles out of order events when ROAP OK is received while executing outgoingRoapAnswer', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee27() {
1551
+ it('successfully handles out of order events when ROAP OK is received while executing outgoingRoapAnswer', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee31() {
1310
1552
  var mockStatusBody, statusPayload, dummyEvent, postMediaSpy, dummyOkEvent, dummyOfferEvent;
1311
- return _regenerator.default.wrap(function _callee27$(_context27) {
1312
- while (1) switch (_context27.prev = _context27.next) {
1553
+ return _regenerator.default.wrap(function _callee31$(_context31) {
1554
+ while (1) switch (_context31.prev = _context31.next) {
1313
1555
  case 0:
1314
1556
  mockStatusBody = {
1315
1557
  device: {
@@ -1349,7 +1591,7 @@ describe('State Machine handler tests', function () {
1349
1591
  seq: 1,
1350
1592
  messageType: 'ANSWER'
1351
1593
  };
1352
- _context27.next = 18;
1594
+ _context31.next = 18;
1353
1595
  return call.sendMediaStateMachineEvt(dummyEvent);
1354
1596
  case 18:
1355
1597
  expect(postMediaSpy).toBeCalledOnceWith(dummyEvent.data);
@@ -1371,7 +1613,7 @@ describe('State Machine handler tests', function () {
1371
1613
  seq: 2,
1372
1614
  messageType: 'OFFER_REQUEST'
1373
1615
  };
1374
- _context27.next = 24;
1616
+ _context31.next = 24;
1375
1617
  return call.sendMediaStateMachineEvt(dummyEvent);
1376
1618
  case 24:
1377
1619
  expect(call['receivedRoapOKSeq']).toBe(0);
@@ -1421,7 +1663,7 @@ describe('State Machine handler tests', function () {
1421
1663
  };
1422
1664
  call.sendCallStateMachineEvt(dummyEvent);
1423
1665
  dummyEvent.type = 'E_RECV_ROAP_OFFER';
1424
- _context27.next = 50;
1666
+ _context31.next = 50;
1425
1667
  return call.sendMediaStateMachineEvt(dummyEvent);
1426
1668
  case 50:
1427
1669
  expect(_testUtil.mediaConnection.roapMessageReceived).toHaveBeenLastCalledWith(dummyEvent.data);
@@ -1430,7 +1672,7 @@ describe('State Machine handler tests', function () {
1430
1672
  seq: 3,
1431
1673
  messageType: 'ANSWER'
1432
1674
  };
1433
- _context27.next = 55;
1675
+ _context31.next = 55;
1434
1676
  return call.sendMediaStateMachineEvt(dummyEvent);
1435
1677
  case 55:
1436
1678
  expect(postMediaSpy).toHaveBeenLastCalledWith(dummyEvent.data);
@@ -1447,7 +1689,7 @@ describe('State Machine handler tests', function () {
1447
1689
  }
1448
1690
  };
1449
1691
  call.sendMediaStateMachineEvt(dummyEvent);
1450
- _context27.next = 62;
1692
+ _context31.next = 62;
1451
1693
  return call.sendMediaStateMachineEvt(dummyOkEvent);
1452
1694
  case 62:
1453
1695
  expect(call['receivedRoapOKSeq']).toBe(3);
@@ -1463,14 +1705,14 @@ describe('State Machine handler tests', function () {
1463
1705
  expect(postMediaSpy).toHaveBeenLastCalledWith(dummyEvent.data);
1464
1706
  case 70:
1465
1707
  case "end":
1466
- return _context27.stop();
1708
+ return _context31.stop();
1467
1709
  }
1468
- }, _callee27);
1710
+ }, _callee31);
1469
1711
  })));
1470
- it('handle hold event successfully when media received after progress but before connect', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee28() {
1712
+ it('handle hold event successfully when media received after progress but before connect', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee32() {
1471
1713
  var statusPayload, dummyEvent, postMediaSpy, infoSpy, dummyOkEvent;
1472
- return _regenerator.default.wrap(function _callee28$(_context28) {
1473
- while (1) switch (_context28.prev = _context28.next) {
1714
+ return _regenerator.default.wrap(function _callee32$(_context32) {
1715
+ while (1) switch (_context32.prev = _context32.next) {
1474
1716
  case 0:
1475
1717
  statusPayload = {
1476
1718
  statusCode: 200,
@@ -1537,9 +1779,9 @@ describe('State Machine handler tests', function () {
1537
1779
  });
1538
1780
  case 33:
1539
1781
  case "end":
1540
- return _context28.stop();
1782
+ return _context32.stop();
1541
1783
  }
1542
- }, _callee28);
1784
+ }, _callee32);
1543
1785
  })));
1544
1786
  });
1545
1787
  describe('Supplementary Services tests', function () {
@@ -1598,10 +1840,10 @@ describe('Supplementary Services tests', function () {
1598
1840
  beforeEach(function () {
1599
1841
  call.removeAllListeners();
1600
1842
  });
1601
- it('Handle successful Call hold case without delayed http response', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee30() {
1843
+ it('Handle successful Call hold case without delayed http response', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee34() {
1602
1844
  var responsePayload, warnSpy, roapEvent;
1603
- return _regenerator.default.wrap(function _callee30$(_context30) {
1604
- while (1) switch (_context30.prev = _context30.next) {
1845
+ return _regenerator.default.wrap(function _callee34$(_context34) {
1846
+ while (1) switch (_context34.prev = _context34.next) {
1605
1847
  case 0:
1606
1848
  expect.assertions(7);
1607
1849
  responsePayload = {
@@ -1614,25 +1856,25 @@ describe('Supplementary Services tests', function () {
1614
1856
  warnSpy = jest.spyOn(_Logger.default, 'warn');
1615
1857
  call['held'] = false;
1616
1858
  call.on(_types2.CALL_EVENT_KEYS.HELD, /*#__PURE__*/function () {
1617
- var _ref30 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee29(correlationId) {
1618
- return _regenerator.default.wrap(function _callee29$(_context29) {
1619
- while (1) switch (_context29.prev = _context29.next) {
1859
+ var _ref34 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee33(correlationId) {
1860
+ return _regenerator.default.wrap(function _callee33$(_context33) {
1861
+ while (1) switch (_context33.prev = _context33.next) {
1620
1862
  case 0:
1621
1863
  expect(correlationId).toStrictEqual(call.getCorrelationId());
1622
1864
  case 1:
1623
1865
  case "end":
1624
- return _context29.stop();
1866
+ return _context33.stop();
1625
1867
  }
1626
- }, _callee29);
1868
+ }, _callee33);
1627
1869
  }));
1628
1870
  return function (_x) {
1629
- return _ref30.apply(this, arguments);
1871
+ return _ref34.apply(this, arguments);
1630
1872
  };
1631
1873
  }());
1632
- _context30.next = 10;
1874
+ _context34.next = 10;
1633
1875
  return call.doHoldResume();
1634
1876
  case 10:
1635
- _context30.next = 12;
1877
+ _context34.next = 12;
1636
1878
  return (0, _testUtil.flushPromises)(2);
1637
1879
  case 12:
1638
1880
  expect(setTimeout).toHaveBeenCalledTimes(1);
@@ -1648,11 +1890,11 @@ describe('Supplementary Services tests', function () {
1648
1890
  call['handleIncomingRoapOffer']({}, dummyEvent);
1649
1891
  roapEvent = JSON.parse((0, _stringify.default)(dummyEvent));
1650
1892
  roapEvent.data.type = 'ANSWER';
1651
- _context30.next = 20;
1893
+ _context34.next = 20;
1652
1894
  return call['handleOutgoingRoapAnswer']({}, dummyEvent);
1653
1895
  case 20:
1654
1896
  roapEvent.data.type = 'OK';
1655
- _context30.next = 23;
1897
+ _context34.next = 23;
1656
1898
  return call['handleRoapEstablished']({}, dummyEvent);
1657
1899
  case 23:
1658
1900
  expect(clearTimeout).toHaveBeenCalledTimes(1);
@@ -1667,14 +1909,14 @@ describe('Supplementary Services tests', function () {
1667
1909
  });
1668
1910
  case 28:
1669
1911
  case "end":
1670
- return _context30.stop();
1912
+ return _context34.stop();
1671
1913
  }
1672
- }, _callee30);
1914
+ }, _callee34);
1673
1915
  })));
1674
- it('Handle successful Call hold case with delayed http response', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee32() {
1916
+ it('Handle successful Call hold case with delayed http response', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee36() {
1675
1917
  var responsePayload, warnSpy, roapEvent;
1676
- return _regenerator.default.wrap(function _callee32$(_context32) {
1677
- while (1) switch (_context32.prev = _context32.next) {
1918
+ return _regenerator.default.wrap(function _callee36$(_context36) {
1919
+ while (1) switch (_context36.prev = _context36.next) {
1678
1920
  case 0:
1679
1921
  expect.assertions(8);
1680
1922
  responsePayload = {
@@ -1687,26 +1929,26 @@ describe('Supplementary Services tests', function () {
1687
1929
  warnSpy = jest.spyOn(_Logger.default, 'warn');
1688
1930
  call['held'] = false;
1689
1931
  call.on(_types2.CALL_EVENT_KEYS.HELD, /*#__PURE__*/function () {
1690
- var _ref32 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee31(correlationId) {
1691
- return _regenerator.default.wrap(function _callee31$(_context31) {
1692
- while (1) switch (_context31.prev = _context31.next) {
1932
+ var _ref36 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee35(correlationId) {
1933
+ return _regenerator.default.wrap(function _callee35$(_context35) {
1934
+ while (1) switch (_context35.prev = _context35.next) {
1693
1935
  case 0:
1694
1936
  expect(correlationId).toStrictEqual(call.getCorrelationId());
1695
1937
  case 1:
1696
1938
  case "end":
1697
- return _context31.stop();
1939
+ return _context35.stop();
1698
1940
  }
1699
- }, _callee31);
1941
+ }, _callee35);
1700
1942
  }));
1701
1943
  return function (_x2) {
1702
- return _ref32.apply(this, arguments);
1944
+ return _ref36.apply(this, arguments);
1703
1945
  };
1704
1946
  }());
1705
1947
  call.doHoldResume();
1706
- _context32.next = 11;
1948
+ _context36.next = 11;
1707
1949
  return _promise.default.resolve();
1708
1950
  case 11:
1709
- _context32.next = 13;
1951
+ _context36.next = 13;
1710
1952
  return _promise.default.resolve();
1711
1953
  case 13:
1712
1954
  expect(setTimeout).not.toHaveBeenCalled();
@@ -1722,11 +1964,11 @@ describe('Supplementary Services tests', function () {
1722
1964
  call['handleIncomingRoapOffer']({}, dummyEvent);
1723
1965
  roapEvent = JSON.parse((0, _stringify.default)(dummyEvent));
1724
1966
  roapEvent.data.type = 'ANSWER';
1725
- _context32.next = 22;
1967
+ _context36.next = 22;
1726
1968
  return call['handleOutgoingRoapAnswer']({}, dummyEvent);
1727
1969
  case 22:
1728
1970
  roapEvent.data.type = 'OK';
1729
- _context32.next = 25;
1971
+ _context36.next = 25;
1730
1972
  return call['handleRoapEstablished']({}, dummyEvent);
1731
1973
  case 25:
1732
1974
  expect(clearTimeout).not.toHaveBeenCalled();
@@ -1741,14 +1983,14 @@ describe('Supplementary Services tests', function () {
1741
1983
  });
1742
1984
  case 30:
1743
1985
  case "end":
1744
- return _context32.stop();
1986
+ return _context36.stop();
1745
1987
  }
1746
- }, _callee32);
1988
+ }, _callee36);
1747
1989
  })));
1748
- it('Handle failure Call Hold case during signalling', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee34() {
1990
+ it('Handle failure Call Hold case during signalling', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee38() {
1749
1991
  var responsePayload;
1750
- return _regenerator.default.wrap(function _callee34$(_context34) {
1751
- while (1) switch (_context34.prev = _context34.next) {
1992
+ return _regenerator.default.wrap(function _callee38$(_context38) {
1993
+ while (1) switch (_context38.prev = _context38.next) {
1752
1994
  case 0:
1753
1995
  expect.assertions(4);
1754
1996
  responsePayload = {
@@ -1758,26 +2000,26 @@ describe('Supplementary Services tests', function () {
1758
2000
  jest.spyOn(webex, 'request').mockRejectedValue(responsePayload);
1759
2001
  call['held'] = false;
1760
2002
  call.on(_types2.CALL_EVENT_KEYS.HOLD_ERROR, /*#__PURE__*/function () {
1761
- var _ref34 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee33(errObj) {
1762
- return _regenerator.default.wrap(function _callee33$(_context33) {
1763
- while (1) switch (_context33.prev = _context33.next) {
2003
+ var _ref38 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee37(errObj) {
2004
+ return _regenerator.default.wrap(function _callee37$(_context37) {
2005
+ while (1) switch (_context37.prev = _context37.next) {
1764
2006
  case 0:
1765
2007
  expect(errObj.type).toStrictEqual(_types.ERROR_TYPE.SERVICE_UNAVAILABLE);
1766
2008
  expect(errObj.message).toStrictEqual('An unknown error occurred. Wait a moment and try again.');
1767
2009
  case 2:
1768
2010
  case "end":
1769
- return _context33.stop();
2011
+ return _context37.stop();
1770
2012
  }
1771
- }, _callee33);
2013
+ }, _callee37);
1772
2014
  }));
1773
2015
  return function (_x3) {
1774
- return _ref34.apply(this, arguments);
2016
+ return _ref38.apply(this, arguments);
1775
2017
  };
1776
2018
  }());
1777
- _context34.next = 7;
2019
+ _context38.next = 7;
1778
2020
  return call.doHoldResume();
1779
2021
  case 7:
1780
- _context34.next = 9;
2022
+ _context38.next = 9;
1781
2023
  return (0, _testUtil.flushPromises)(2);
1782
2024
  case 9:
1783
2025
  expect(call.isHeld()).toStrictEqual(false);
@@ -1787,14 +2029,14 @@ describe('Supplementary Services tests', function () {
1787
2029
  expect(call['callStateMachine'].state.value).toStrictEqual('S_CALL_ESTABLISHED');
1788
2030
  case 11:
1789
2031
  case "end":
1790
- return _context34.stop();
2032
+ return _context38.stop();
1791
2033
  }
1792
- }, _callee34);
2034
+ }, _callee38);
1793
2035
  })));
1794
- it('Handle failure Call Hold case during offer/answer exchange', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee36() {
2036
+ it('Handle failure Call Hold case during offer/answer exchange', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee40() {
1795
2037
  var responsePayload, rejectPayload, roapEvent;
1796
- return _regenerator.default.wrap(function _callee36$(_context36) {
1797
- while (1) switch (_context36.prev = _context36.next) {
2038
+ return _regenerator.default.wrap(function _callee40$(_context40) {
2039
+ while (1) switch (_context40.prev = _context40.next) {
1798
2040
  case 0:
1799
2041
  expect.assertions(5);
1800
2042
  responsePayload = {
@@ -1808,24 +2050,24 @@ describe('Supplementary Services tests', function () {
1808
2050
  jest.spyOn(webex, 'request').mockResolvedValueOnce(responsePayload).mockRejectedValueOnce(rejectPayload);
1809
2051
  call['held'] = false;
1810
2052
  call.on(_types2.CALL_EVENT_KEYS.HOLD_ERROR, /*#__PURE__*/function () {
1811
- var _ref36 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee35(errObj) {
1812
- return _regenerator.default.wrap(function _callee35$(_context35) {
1813
- while (1) switch (_context35.prev = _context35.next) {
2053
+ var _ref40 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee39(errObj) {
2054
+ return _regenerator.default.wrap(function _callee39$(_context39) {
2055
+ while (1) switch (_context39.prev = _context39.next) {
1814
2056
  case 0:
1815
2057
  expect(errObj.type).toStrictEqual(_types.ERROR_TYPE.SERVICE_UNAVAILABLE);
1816
2058
  expect(errObj.message).toStrictEqual('An unknown error occurred. Wait a moment and try again.');
1817
2059
  case 2:
1818
2060
  case "end":
1819
- return _context35.stop();
2061
+ return _context39.stop();
1820
2062
  }
1821
- }, _callee35);
2063
+ }, _callee39);
1822
2064
  }));
1823
2065
  return function (_x4) {
1824
- return _ref36.apply(this, arguments);
2066
+ return _ref40.apply(this, arguments);
1825
2067
  };
1826
2068
  }());
1827
2069
  call.doHoldResume();
1828
- _context36.next = 9;
2070
+ _context40.next = 9;
1829
2071
  return (0, _testUtil.flushPromises)(2);
1830
2072
  case 9:
1831
2073
  /* the Call State should transition to S_CALL_ESTABLISHED
@@ -1835,7 +2077,7 @@ describe('Supplementary Services tests', function () {
1835
2077
  roapEvent = JSON.parse((0, _stringify.default)(dummyEvent));
1836
2078
  /* We are intentionally failing the ROAP ANSWER */
1837
2079
  roapEvent.data.type = 'ANSWER';
1838
- _context36.next = 15;
2080
+ _context40.next = 15;
1839
2081
  return call['handleOutgoingRoapAnswer']({}, dummyEvent);
1840
2082
  case 15:
1841
2083
  expect(call.isHeld()).toStrictEqual(false);
@@ -1843,14 +2085,14 @@ describe('Supplementary Services tests', function () {
1843
2085
  expect(call['callStateMachine'].state.value).toStrictEqual('S_CALL_ESTABLISHED');
1844
2086
  case 17:
1845
2087
  case "end":
1846
- return _context36.stop();
2088
+ return _context40.stop();
1847
2089
  }
1848
- }, _callee36);
2090
+ }, _callee40);
1849
2091
  })));
1850
- it('Handle failure Call Hold case during roap ok out', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee37() {
2092
+ it('Handle failure Call Hold case during roap ok out', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee41() {
1851
2093
  var responsePayload, warnSpy, roapEvent;
1852
- return _regenerator.default.wrap(function _callee37$(_context37) {
1853
- while (1) switch (_context37.prev = _context37.next) {
2094
+ return _regenerator.default.wrap(function _callee41$(_context41) {
2095
+ while (1) switch (_context41.prev = _context41.next) {
1854
2096
  case 0:
1855
2097
  responsePayload = {
1856
2098
  statusCode: 200,
@@ -1861,10 +2103,10 @@ describe('Supplementary Services tests', function () {
1861
2103
  jest.spyOn(global, 'clearTimeout');
1862
2104
  warnSpy = jest.spyOn(_Logger.default, 'warn');
1863
2105
  call['held'] = false;
1864
- _context37.next = 8;
2106
+ _context41.next = 8;
1865
2107
  return call.doHoldResume();
1866
2108
  case 8:
1867
- _context37.next = 10;
2109
+ _context41.next = 10;
1868
2110
  return (0, _testUtil.flushPromises)(2);
1869
2111
  case 10:
1870
2112
  expect(setTimeout).toHaveBeenCalledTimes(1);
@@ -1879,38 +2121,38 @@ describe('Supplementary Services tests', function () {
1879
2121
  call['handleIncomingRoapOffer']({}, dummyEvent);
1880
2122
  roapEvent = JSON.parse((0, _stringify.default)(dummyEvent));
1881
2123
  roapEvent.data.type = 'ANSWER';
1882
- _context37.next = 17;
2124
+ _context41.next = 17;
1883
2125
  return call['handleOutgoingRoapAnswer']({}, dummyEvent);
1884
2126
  case 17:
1885
2127
  jest.spyOn(webex, 'request').mockRejectedValue({
1886
2128
  statusCode: 403
1887
2129
  });
1888
2130
  roapEvent.data.type = 'OK';
1889
- _context37.next = 21;
2131
+ _context41.next = 21;
1890
2132
  return call['handleRoapEstablished']({}, dummyEvent);
1891
2133
  case 21:
1892
2134
  /* this is for coverage */
1893
2135
  call['callStateMachine'].state.value = 'S_CALL_HOLD';
1894
- _context37.next = 24;
2136
+ _context41.next = 24;
1895
2137
  return call['handleRoapEstablished']({}, dummyEvent);
1896
2138
  case 24:
1897
2139
  expect(call.isHeld()).toStrictEqual(false);
1898
2140
  /* We should return back to call established state */
1899
2141
  expect(call['callStateMachine'].state.value).toStrictEqual('S_CALL_ESTABLISHED');
1900
- expect(warnSpy).toHaveBeenCalledWith('MediaOk failed with Mobius', {
2142
+ expect(warnSpy).toHaveBeenCalledWith('Failed to process MediaOk request', {
1901
2143
  file: 'call',
1902
2144
  method: 'handleRoapEstablished'
1903
2145
  });
1904
2146
  case 27:
1905
2147
  case "end":
1906
- return _context37.stop();
2148
+ return _context41.stop();
1907
2149
  }
1908
- }, _callee37);
2150
+ }, _callee41);
1909
2151
  })));
1910
- it('Handle failure Call resume case during roap ok out', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee38() {
2152
+ it('Handle failure Call resume case during roap ok out', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee42() {
1911
2153
  var responsePayload, warnSpy, roapEvent;
1912
- return _regenerator.default.wrap(function _callee38$(_context38) {
1913
- while (1) switch (_context38.prev = _context38.next) {
2154
+ return _regenerator.default.wrap(function _callee42$(_context42) {
2155
+ while (1) switch (_context42.prev = _context42.next) {
1914
2156
  case 0:
1915
2157
  responsePayload = {
1916
2158
  statusCode: 200,
@@ -1921,10 +2163,10 @@ describe('Supplementary Services tests', function () {
1921
2163
  jest.spyOn(global, 'clearTimeout');
1922
2164
  warnSpy = jest.spyOn(_Logger.default, 'warn');
1923
2165
  call['held'] = true;
1924
- _context38.next = 8;
2166
+ _context42.next = 8;
1925
2167
  return call.doHoldResume();
1926
2168
  case 8:
1927
- _context38.next = 10;
2169
+ _context42.next = 10;
1928
2170
  return (0, _testUtil.flushPromises)(2);
1929
2171
  case 10:
1930
2172
  expect(setTimeout).toHaveBeenCalledTimes(1);
@@ -1939,33 +2181,33 @@ describe('Supplementary Services tests', function () {
1939
2181
  call['handleIncomingRoapOffer']({}, dummyEvent);
1940
2182
  roapEvent = JSON.parse((0, _stringify.default)(dummyEvent));
1941
2183
  roapEvent.data.type = 'ANSWER';
1942
- _context38.next = 17;
2184
+ _context42.next = 17;
1943
2185
  return call['handleOutgoingRoapAnswer']({}, dummyEvent);
1944
2186
  case 17:
1945
2187
  jest.spyOn(webex, 'request').mockRejectedValue({
1946
2188
  statusCode: 403
1947
2189
  });
1948
2190
  roapEvent.data.type = 'OK';
1949
- _context38.next = 21;
2191
+ _context42.next = 21;
1950
2192
  return call['handleRoapEstablished']({}, dummyEvent);
1951
2193
  case 21:
1952
2194
  expect(call.isHeld()).toStrictEqual(true);
1953
2195
  /* We should return back to call established state */
1954
2196
  expect(call['callStateMachine'].state.value).toStrictEqual('S_CALL_ESTABLISHED');
1955
- expect(warnSpy).toHaveBeenCalledWith('MediaOk failed with Mobius', {
2197
+ expect(warnSpy).toHaveBeenCalledWith('Failed to process MediaOk request', {
1956
2198
  file: 'call',
1957
2199
  method: 'handleRoapEstablished'
1958
2200
  });
1959
2201
  case 24:
1960
2202
  case "end":
1961
- return _context38.stop();
2203
+ return _context42.stop();
1962
2204
  }
1963
- }, _callee38);
2205
+ }, _callee42);
1964
2206
  })));
1965
- it('Handle Call hold case where successful Held response does not come', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee40() {
2207
+ it('Handle Call hold case where successful Held response does not come', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee44() {
1966
2208
  var responsePayload, roapEvent;
1967
- return _regenerator.default.wrap(function _callee40$(_context40) {
1968
- while (1) switch (_context40.prev = _context40.next) {
2209
+ return _regenerator.default.wrap(function _callee44$(_context44) {
2210
+ while (1) switch (_context44.prev = _context44.next) {
1969
2211
  case 0:
1970
2212
  expect.assertions(5);
1971
2213
  responsePayload = {
@@ -1975,25 +2217,25 @@ describe('Supplementary Services tests', function () {
1975
2217
  jest.spyOn(webex, 'request').mockResolvedValue(responsePayload);
1976
2218
  call['held'] = false;
1977
2219
  call.on(_types2.CALL_EVENT_KEYS.HOLD_ERROR, /*#__PURE__*/function () {
1978
- var _ref40 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee39(errObj) {
1979
- return _regenerator.default.wrap(function _callee39$(_context39) {
1980
- while (1) switch (_context39.prev = _context39.next) {
2220
+ var _ref44 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee43(errObj) {
2221
+ return _regenerator.default.wrap(function _callee43$(_context43) {
2222
+ while (1) switch (_context43.prev = _context43.next) {
1981
2223
  case 0:
1982
2224
  expect(errObj.type).toStrictEqual(_types.ERROR_TYPE.TIMEOUT);
1983
2225
  expect(errObj.message).toStrictEqual('An error occurred while placing the call on hold. Wait a moment and try again.');
1984
2226
  case 2:
1985
2227
  case "end":
1986
- return _context39.stop();
2228
+ return _context43.stop();
1987
2229
  }
1988
- }, _callee39);
2230
+ }, _callee43);
1989
2231
  }));
1990
2232
  return function (_x5) {
1991
- return _ref40.apply(this, arguments);
2233
+ return _ref44.apply(this, arguments);
1992
2234
  };
1993
2235
  }());
1994
2236
  jest.runAllTimers();
1995
2237
  call.doHoldResume();
1996
- _context40.next = 9;
2238
+ _context44.next = 9;
1997
2239
  return (0, _testUtil.flushPromises)(2);
1998
2240
  case 9:
1999
2241
  /* At this point, the Call State should be S_CALL_HOLD
@@ -2006,11 +2248,11 @@ describe('Supplementary Services tests', function () {
2006
2248
  call['handleIncomingRoapOffer']({}, dummyEvent);
2007
2249
  roapEvent = JSON.parse((0, _stringify.default)(dummyEvent));
2008
2250
  roapEvent.data.type = 'ANSWER';
2009
- _context40.next = 15;
2251
+ _context44.next = 15;
2010
2252
  return call['handleOutgoingRoapAnswer']({}, dummyEvent);
2011
2253
  case 15:
2012
2254
  roapEvent.data.type = 'OK';
2013
- _context40.next = 18;
2255
+ _context44.next = 18;
2014
2256
  return call['handleRoapEstablished']({}, dummyEvent);
2015
2257
  case 18:
2016
2258
  /* Advancing timer by 12 seconds so that it gets timed out */
@@ -2022,14 +2264,14 @@ describe('Supplementary Services tests', function () {
2022
2264
  expect(call['callStateMachine'].state.value).toStrictEqual('S_CALL_ESTABLISHED');
2023
2265
  case 21:
2024
2266
  case "end":
2025
- return _context40.stop();
2267
+ return _context44.stop();
2026
2268
  }
2027
- }, _callee40);
2269
+ }, _callee44);
2028
2270
  })));
2029
- it('Handle successful Call Resume case without delayed http response', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee42() {
2271
+ it('Handle successful Call Resume case without delayed http response', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee46() {
2030
2272
  var responsePayload, warnSpy, roapEvent;
2031
- return _regenerator.default.wrap(function _callee42$(_context42) {
2032
- while (1) switch (_context42.prev = _context42.next) {
2273
+ return _regenerator.default.wrap(function _callee46$(_context46) {
2274
+ while (1) switch (_context46.prev = _context46.next) {
2033
2275
  case 0:
2034
2276
  expect.assertions(7);
2035
2277
  responsePayload = {
@@ -2042,25 +2284,25 @@ describe('Supplementary Services tests', function () {
2042
2284
  warnSpy = jest.spyOn(_Logger.default, 'warn');
2043
2285
  call['held'] = true;
2044
2286
  call.on(_types2.CALL_EVENT_KEYS.RESUMED, /*#__PURE__*/function () {
2045
- var _ref42 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee41(correlationId) {
2046
- return _regenerator.default.wrap(function _callee41$(_context41) {
2047
- while (1) switch (_context41.prev = _context41.next) {
2287
+ var _ref46 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee45(correlationId) {
2288
+ return _regenerator.default.wrap(function _callee45$(_context45) {
2289
+ while (1) switch (_context45.prev = _context45.next) {
2048
2290
  case 0:
2049
2291
  expect(correlationId).toStrictEqual(call.getCorrelationId());
2050
2292
  case 1:
2051
2293
  case "end":
2052
- return _context41.stop();
2294
+ return _context45.stop();
2053
2295
  }
2054
- }, _callee41);
2296
+ }, _callee45);
2055
2297
  }));
2056
2298
  return function (_x6) {
2057
- return _ref42.apply(this, arguments);
2299
+ return _ref46.apply(this, arguments);
2058
2300
  };
2059
2301
  }());
2060
- _context42.next = 10;
2302
+ _context46.next = 10;
2061
2303
  return call.doHoldResume();
2062
2304
  case 10:
2063
- _context42.next = 12;
2305
+ _context46.next = 12;
2064
2306
  return (0, _testUtil.flushPromises)(2);
2065
2307
  case 12:
2066
2308
  expect(setTimeout).toHaveBeenCalledTimes(1);
@@ -2076,11 +2318,11 @@ describe('Supplementary Services tests', function () {
2076
2318
  call['handleIncomingRoapOffer']({}, dummyEvent);
2077
2319
  roapEvent = JSON.parse((0, _stringify.default)(dummyEvent));
2078
2320
  roapEvent.data.type = 'ANSWER';
2079
- _context42.next = 20;
2321
+ _context46.next = 20;
2080
2322
  return call['handleOutgoingRoapAnswer']({}, dummyEvent);
2081
2323
  case 20:
2082
2324
  roapEvent.data.type = 'OK';
2083
- _context42.next = 23;
2325
+ _context46.next = 23;
2084
2326
  return call['handleRoapEstablished']({}, dummyEvent);
2085
2327
  case 23:
2086
2328
  expect(clearTimeout).toHaveBeenCalledTimes(1);
@@ -2095,14 +2337,14 @@ describe('Supplementary Services tests', function () {
2095
2337
  });
2096
2338
  case 28:
2097
2339
  case "end":
2098
- return _context42.stop();
2340
+ return _context46.stop();
2099
2341
  }
2100
- }, _callee42);
2342
+ }, _callee46);
2101
2343
  })));
2102
- it('Handle successful Call Resume case with delayed http response', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee44() {
2344
+ it('Handle successful Call Resume case with delayed http response', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee48() {
2103
2345
  var responsePayload, warnSpy, roapEvent;
2104
- return _regenerator.default.wrap(function _callee44$(_context44) {
2105
- while (1) switch (_context44.prev = _context44.next) {
2346
+ return _regenerator.default.wrap(function _callee48$(_context48) {
2347
+ while (1) switch (_context48.prev = _context48.next) {
2106
2348
  case 0:
2107
2349
  expect.assertions(7);
2108
2350
  responsePayload = {
@@ -2115,26 +2357,26 @@ describe('Supplementary Services tests', function () {
2115
2357
  warnSpy = jest.spyOn(_Logger.default, 'warn');
2116
2358
  call['held'] = true;
2117
2359
  call.on(_types2.CALL_EVENT_KEYS.RESUMED, /*#__PURE__*/function () {
2118
- var _ref44 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee43(correlationId) {
2119
- return _regenerator.default.wrap(function _callee43$(_context43) {
2120
- while (1) switch (_context43.prev = _context43.next) {
2360
+ var _ref48 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee47(correlationId) {
2361
+ return _regenerator.default.wrap(function _callee47$(_context47) {
2362
+ while (1) switch (_context47.prev = _context47.next) {
2121
2363
  case 0:
2122
2364
  expect(correlationId).toStrictEqual(call.getCorrelationId());
2123
2365
  case 1:
2124
2366
  case "end":
2125
- return _context43.stop();
2367
+ return _context47.stop();
2126
2368
  }
2127
- }, _callee43);
2369
+ }, _callee47);
2128
2370
  }));
2129
2371
  return function (_x7) {
2130
- return _ref44.apply(this, arguments);
2372
+ return _ref48.apply(this, arguments);
2131
2373
  };
2132
2374
  }());
2133
2375
  call.doHoldResume();
2134
- _context44.next = 11;
2376
+ _context48.next = 11;
2135
2377
  return _promise.default.resolve();
2136
2378
  case 11:
2137
- _context44.next = 13;
2379
+ _context48.next = 13;
2138
2380
  return _promise.default.resolve();
2139
2381
  case 13:
2140
2382
  expect(setTimeout).not.toHaveBeenCalled();
@@ -2150,11 +2392,11 @@ describe('Supplementary Services tests', function () {
2150
2392
  call['handleIncomingRoapOffer']({}, dummyEvent);
2151
2393
  roapEvent = JSON.parse((0, _stringify.default)(dummyEvent));
2152
2394
  roapEvent.data.type = 'ANSWER';
2153
- _context44.next = 21;
2395
+ _context48.next = 21;
2154
2396
  return call['handleOutgoingRoapAnswer']({}, dummyEvent);
2155
2397
  case 21:
2156
2398
  roapEvent.data.type = 'OK';
2157
- _context44.next = 24;
2399
+ _context48.next = 24;
2158
2400
  return call['handleRoapEstablished']({}, dummyEvent);
2159
2401
  case 24:
2160
2402
  expect(clearTimeout).not.toHaveBeenCalled();
@@ -2169,14 +2411,14 @@ describe('Supplementary Services tests', function () {
2169
2411
  });
2170
2412
  case 29:
2171
2413
  case "end":
2172
- return _context44.stop();
2414
+ return _context48.stop();
2173
2415
  }
2174
- }, _callee44);
2416
+ }, _callee48);
2175
2417
  })));
2176
- it('Handle failure Call Resume case during signalling', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee46() {
2418
+ it('Handle failure Call Resume case during signalling', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee50() {
2177
2419
  var responsePayload;
2178
- return _regenerator.default.wrap(function _callee46$(_context46) {
2179
- while (1) switch (_context46.prev = _context46.next) {
2420
+ return _regenerator.default.wrap(function _callee50$(_context50) {
2421
+ while (1) switch (_context50.prev = _context50.next) {
2180
2422
  case 0:
2181
2423
  expect.assertions(4);
2182
2424
  responsePayload = {
@@ -2186,26 +2428,26 @@ describe('Supplementary Services tests', function () {
2186
2428
  jest.spyOn(webex, 'request').mockRejectedValue(responsePayload);
2187
2429
  call['held'] = true;
2188
2430
  call.on(_types2.CALL_EVENT_KEYS.RESUME_ERROR, /*#__PURE__*/function () {
2189
- var _ref46 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee45(errObj) {
2190
- return _regenerator.default.wrap(function _callee45$(_context45) {
2191
- while (1) switch (_context45.prev = _context45.next) {
2431
+ var _ref50 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee49(errObj) {
2432
+ return _regenerator.default.wrap(function _callee49$(_context49) {
2433
+ while (1) switch (_context49.prev = _context49.next) {
2192
2434
  case 0:
2193
2435
  expect(errObj.type).toStrictEqual(_types.ERROR_TYPE.SERVICE_UNAVAILABLE);
2194
2436
  expect(errObj.message).toStrictEqual('An unknown error occurred. Wait a moment and try again.');
2195
2437
  case 2:
2196
2438
  case "end":
2197
- return _context45.stop();
2439
+ return _context49.stop();
2198
2440
  }
2199
- }, _callee45);
2441
+ }, _callee49);
2200
2442
  }));
2201
2443
  return function (_x8) {
2202
- return _ref46.apply(this, arguments);
2444
+ return _ref50.apply(this, arguments);
2203
2445
  };
2204
2446
  }());
2205
- _context46.next = 7;
2447
+ _context50.next = 7;
2206
2448
  return call.doHoldResume();
2207
2449
  case 7:
2208
- _context46.next = 9;
2450
+ _context50.next = 9;
2209
2451
  return (0, _testUtil.flushPromises)(2);
2210
2452
  case 9:
2211
2453
  expect(call.isHeld()).toStrictEqual(true);
@@ -2216,14 +2458,14 @@ describe('Supplementary Services tests', function () {
2216
2458
  expect(call['callStateMachine'].state.value).toStrictEqual('S_CALL_ESTABLISHED');
2217
2459
  case 11:
2218
2460
  case "end":
2219
- return _context46.stop();
2461
+ return _context50.stop();
2220
2462
  }
2221
- }, _callee46);
2463
+ }, _callee50);
2222
2464
  })));
2223
- it('Handle failure Call Resume case during offer/answer exchange', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee48() {
2465
+ it('Handle failure Call Resume case during offer/answer exchange', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee52() {
2224
2466
  var responsePayload, rejectPayload, roapEvent;
2225
- return _regenerator.default.wrap(function _callee48$(_context48) {
2226
- while (1) switch (_context48.prev = _context48.next) {
2467
+ return _regenerator.default.wrap(function _callee52$(_context52) {
2468
+ while (1) switch (_context52.prev = _context52.next) {
2227
2469
  case 0:
2228
2470
  expect.assertions(5);
2229
2471
  responsePayload = {
@@ -2237,24 +2479,24 @@ describe('Supplementary Services tests', function () {
2237
2479
  jest.spyOn(webex, 'request').mockResolvedValueOnce(responsePayload).mockRejectedValueOnce(rejectPayload);
2238
2480
  call['held'] = true;
2239
2481
  call.on(_types2.CALL_EVENT_KEYS.RESUME_ERROR, /*#__PURE__*/function () {
2240
- var _ref48 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee47(errObj) {
2241
- return _regenerator.default.wrap(function _callee47$(_context47) {
2242
- while (1) switch (_context47.prev = _context47.next) {
2482
+ var _ref52 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee51(errObj) {
2483
+ return _regenerator.default.wrap(function _callee51$(_context51) {
2484
+ while (1) switch (_context51.prev = _context51.next) {
2243
2485
  case 0:
2244
2486
  expect(errObj.type).toStrictEqual(_types.ERROR_TYPE.SERVICE_UNAVAILABLE);
2245
2487
  expect(errObj.message).toStrictEqual('An unknown error occurred. Wait a moment and try again.');
2246
2488
  case 2:
2247
2489
  case "end":
2248
- return _context47.stop();
2490
+ return _context51.stop();
2249
2491
  }
2250
- }, _callee47);
2492
+ }, _callee51);
2251
2493
  }));
2252
2494
  return function (_x9) {
2253
- return _ref48.apply(this, arguments);
2495
+ return _ref52.apply(this, arguments);
2254
2496
  };
2255
2497
  }());
2256
2498
  call.doHoldResume();
2257
- _context48.next = 9;
2499
+ _context52.next = 9;
2258
2500
  return (0, _testUtil.flushPromises)(2);
2259
2501
  case 9:
2260
2502
  /* At this point , the Call State should transition to S_CALL_ESTABLISHED
@@ -2265,7 +2507,7 @@ describe('Supplementary Services tests', function () {
2265
2507
  roapEvent = JSON.parse((0, _stringify.default)(dummyEvent));
2266
2508
  /* We are intentionally failing the ROAP ANSWER */
2267
2509
  roapEvent.data.type = 'ANSWER';
2268
- _context48.next = 15;
2510
+ _context52.next = 15;
2269
2511
  return call['handleOutgoingRoapAnswer']({}, dummyEvent);
2270
2512
  case 15:
2271
2513
  expect(call.isHeld()).toStrictEqual(true);
@@ -2273,14 +2515,14 @@ describe('Supplementary Services tests', function () {
2273
2515
  expect(call['callStateMachine'].state.value).toStrictEqual('S_CALL_ESTABLISHED');
2274
2516
  case 17:
2275
2517
  case "end":
2276
- return _context48.stop();
2518
+ return _context52.stop();
2277
2519
  }
2278
- }, _callee48);
2520
+ }, _callee52);
2279
2521
  })));
2280
- it('Handle Call resume case where successful response does not come', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee50() {
2522
+ it('Handle Call resume case where successful response does not come', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee54() {
2281
2523
  var responsePayload, roapEvent;
2282
- return _regenerator.default.wrap(function _callee50$(_context50) {
2283
- while (1) switch (_context50.prev = _context50.next) {
2524
+ return _regenerator.default.wrap(function _callee54$(_context54) {
2525
+ while (1) switch (_context54.prev = _context54.next) {
2284
2526
  case 0:
2285
2527
  expect.assertions(5);
2286
2528
  responsePayload = {
@@ -2290,24 +2532,24 @@ describe('Supplementary Services tests', function () {
2290
2532
  jest.spyOn(webex, 'request').mockResolvedValue(responsePayload);
2291
2533
  call['held'] = true;
2292
2534
  call.on(_types2.CALL_EVENT_KEYS.RESUME_ERROR, /*#__PURE__*/function () {
2293
- var _ref50 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee49(errObj) {
2294
- return _regenerator.default.wrap(function _callee49$(_context49) {
2295
- while (1) switch (_context49.prev = _context49.next) {
2535
+ var _ref54 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee53(errObj) {
2536
+ return _regenerator.default.wrap(function _callee53$(_context53) {
2537
+ while (1) switch (_context53.prev = _context53.next) {
2296
2538
  case 0:
2297
2539
  expect(errObj.type).toStrictEqual(_types.ERROR_TYPE.TIMEOUT);
2298
2540
  expect(errObj.message).toStrictEqual('An error occurred while resuming the call. Wait a moment and try again.');
2299
2541
  case 2:
2300
2542
  case "end":
2301
- return _context49.stop();
2543
+ return _context53.stop();
2302
2544
  }
2303
- }, _callee49);
2545
+ }, _callee53);
2304
2546
  }));
2305
2547
  return function (_x10) {
2306
- return _ref50.apply(this, arguments);
2548
+ return _ref54.apply(this, arguments);
2307
2549
  };
2308
2550
  }());
2309
2551
  call.doHoldResume();
2310
- _context50.next = 8;
2552
+ _context54.next = 8;
2311
2553
  return (0, _testUtil.flushPromises)(2);
2312
2554
  case 8:
2313
2555
  /* At this point ,the Call State should be S_CALL_RESUME
@@ -2320,11 +2562,11 @@ describe('Supplementary Services tests', function () {
2320
2562
  call['handleIncomingRoapOffer']({}, dummyEvent);
2321
2563
  roapEvent = JSON.parse((0, _stringify.default)(dummyEvent));
2322
2564
  roapEvent.data.type = 'ANSWER';
2323
- _context50.next = 14;
2565
+ _context54.next = 14;
2324
2566
  return call['handleOutgoingRoapAnswer']({}, dummyEvent);
2325
2567
  case 14:
2326
2568
  roapEvent.data.type = 'OK';
2327
- _context50.next = 17;
2569
+ _context54.next = 17;
2328
2570
  return call['handleRoapEstablished']({}, dummyEvent);
2329
2571
  case 17:
2330
2572
  /* Advancing timer by 12 seconds so that it gets timed out */
@@ -2334,9 +2576,9 @@ describe('Supplementary Services tests', function () {
2334
2576
  expect(call['callStateMachine'].state.value).toStrictEqual('S_CALL_ESTABLISHED');
2335
2577
  case 20:
2336
2578
  case "end":
2337
- return _context50.stop();
2579
+ return _context54.stop();
2338
2580
  }
2339
- }, _callee50);
2581
+ }, _callee54);
2340
2582
  })));
2341
2583
  });
2342
2584
  describe('Call transfer tests', function () {
@@ -2368,10 +2610,10 @@ describe('Supplementary Services tests', function () {
2368
2610
  secondCall.removeAllListeners(_types2.CALL_EVENT_KEYS.CALL_ERROR);
2369
2611
  secondCall['held'] = false;
2370
2612
  });
2371
- it('Handle successful consult transfer case ', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee53() {
2613
+ it('Handle successful consult transfer case ', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee57() {
2372
2614
  var responsePayload, requestSpy, warnSpy, infoSpy, metricSpy;
2373
- return _regenerator.default.wrap(function _callee53$(_context53) {
2374
- while (1) switch (_context53.prev = _context53.next) {
2615
+ return _regenerator.default.wrap(function _callee57$(_context57) {
2616
+ while (1) switch (_context57.prev = _context57.next) {
2375
2617
  case 0:
2376
2618
  expect.assertions(9);
2377
2619
  responsePayload = {
@@ -2383,41 +2625,41 @@ describe('Supplementary Services tests', function () {
2383
2625
  infoSpy = jest.spyOn(_Logger.default, 'info');
2384
2626
  metricSpy = jest.spyOn(call['metricManager'], 'submitCallMetric');
2385
2627
  call.on(_types2.CALL_EVENT_KEYS.DISCONNECT, /*#__PURE__*/function () {
2386
- var _ref52 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee51(correlationId) {
2387
- return _regenerator.default.wrap(function _callee51$(_context51) {
2388
- while (1) switch (_context51.prev = _context51.next) {
2628
+ var _ref56 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee55(correlationId) {
2629
+ return _regenerator.default.wrap(function _callee55$(_context55) {
2630
+ while (1) switch (_context55.prev = _context55.next) {
2389
2631
  case 0:
2390
2632
  expect(correlationId).toStrictEqual(call.getCorrelationId());
2391
2633
  case 1:
2392
2634
  case "end":
2393
- return _context51.stop();
2635
+ return _context55.stop();
2394
2636
  }
2395
- }, _callee51);
2637
+ }, _callee55);
2396
2638
  }));
2397
2639
  return function (_x11) {
2398
- return _ref52.apply(this, arguments);
2640
+ return _ref56.apply(this, arguments);
2399
2641
  };
2400
2642
  }());
2401
2643
  secondCall.on(_types2.CALL_EVENT_KEYS.DISCONNECT, /*#__PURE__*/function () {
2402
- var _ref53 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee52(correlationId) {
2403
- return _regenerator.default.wrap(function _callee52$(_context52) {
2404
- while (1) switch (_context52.prev = _context52.next) {
2644
+ var _ref57 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee56(correlationId) {
2645
+ return _regenerator.default.wrap(function _callee56$(_context56) {
2646
+ while (1) switch (_context56.prev = _context56.next) {
2405
2647
  case 0:
2406
2648
  expect(correlationId).toStrictEqual(secondCall.getCorrelationId());
2407
2649
  case 1:
2408
2650
  case "end":
2409
- return _context52.stop();
2651
+ return _context56.stop();
2410
2652
  }
2411
- }, _callee52);
2653
+ }, _callee56);
2412
2654
  }));
2413
2655
  return function (_x12) {
2414
- return _ref53.apply(this, arguments);
2656
+ return _ref57.apply(this, arguments);
2415
2657
  };
2416
2658
  }());
2417
- _context53.next = 10;
2659
+ _context57.next = 10;
2418
2660
  return call.completeTransfer(_types5.TransferType.CONSULT, secondCall.getCallId(), undefined);
2419
2661
  case 10:
2420
- _context53.next = 12;
2662
+ _context57.next = 12;
2421
2663
  return (0, _testUtil.flushPromises)(2);
2422
2664
  case 12:
2423
2665
  expect(requestSpy).toBeCalled();
@@ -2437,14 +2679,14 @@ describe('Supplementary Services tests', function () {
2437
2679
  expect(warnSpy).not.toHaveBeenCalledWith("Consult Transfer failed for correlationId ".concat(call.getCorrelationId()), transferLoggingContext);
2438
2680
  case 21:
2439
2681
  case "end":
2440
- return _context53.stop();
2682
+ return _context57.stop();
2441
2683
  }
2442
- }, _callee53);
2684
+ }, _callee57);
2443
2685
  })));
2444
- it('Handle successful blind transfer case ', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee55() {
2686
+ it('Handle successful blind transfer case ', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee59() {
2445
2687
  var responsePayload, requestSpy, warnSpy, infoSpy, metricSpy;
2446
- return _regenerator.default.wrap(function _callee55$(_context55) {
2447
- while (1) switch (_context55.prev = _context55.next) {
2688
+ return _regenerator.default.wrap(function _callee59$(_context59) {
2689
+ while (1) switch (_context59.prev = _context59.next) {
2448
2690
  case 0:
2449
2691
  expect.assertions(7);
2450
2692
  responsePayload = {
@@ -2456,25 +2698,25 @@ describe('Supplementary Services tests', function () {
2456
2698
  infoSpy = jest.spyOn(_Logger.default, 'info');
2457
2699
  metricSpy = jest.spyOn(call['metricManager'], 'submitCallMetric');
2458
2700
  call.on(_types2.CALL_EVENT_KEYS.DISCONNECT, /*#__PURE__*/function () {
2459
- var _ref55 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee54(correlationId) {
2460
- return _regenerator.default.wrap(function _callee54$(_context54) {
2461
- while (1) switch (_context54.prev = _context54.next) {
2701
+ var _ref59 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee58(correlationId) {
2702
+ return _regenerator.default.wrap(function _callee58$(_context58) {
2703
+ while (1) switch (_context58.prev = _context58.next) {
2462
2704
  case 0:
2463
2705
  expect(correlationId).toStrictEqual(call.getCorrelationId());
2464
2706
  case 1:
2465
2707
  case "end":
2466
- return _context54.stop();
2708
+ return _context58.stop();
2467
2709
  }
2468
- }, _callee54);
2710
+ }, _callee58);
2469
2711
  }));
2470
2712
  return function (_x13) {
2471
- return _ref55.apply(this, arguments);
2713
+ return _ref59.apply(this, arguments);
2472
2714
  };
2473
2715
  }());
2474
- _context55.next = 9;
2716
+ _context59.next = 9;
2475
2717
  return call.completeTransfer(_types5.TransferType.BLIND, undefined, transfereeNumber);
2476
2718
  case 9:
2477
- _context55.next = 11;
2719
+ _context59.next = 11;
2478
2720
  return (0, _testUtil.flushPromises)(2);
2479
2721
  case 11:
2480
2722
  expect(requestSpy).toBeCalled();
@@ -2490,14 +2732,14 @@ describe('Supplementary Services tests', function () {
2490
2732
  expect(warnSpy).not.toHaveBeenCalledWith("Blind Transfer failed for correlationId ".concat(call.getCorrelationId()), transferLoggingContext);
2491
2733
  case 18:
2492
2734
  case "end":
2493
- return _context55.stop();
2735
+ return _context59.stop();
2494
2736
  }
2495
- }, _callee55);
2737
+ }, _callee59);
2496
2738
  })));
2497
- it('Handle unsuccessful blind transfer case', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee56() {
2739
+ it('Handle unsuccessful blind transfer case', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee60() {
2498
2740
  var responsePayload, emitSpy, requestSpy, warnSpy, metricSpy;
2499
- return _regenerator.default.wrap(function _callee56$(_context56) {
2500
- while (1) switch (_context56.prev = _context56.next) {
2741
+ return _regenerator.default.wrap(function _callee60$(_context60) {
2742
+ while (1) switch (_context60.prev = _context60.next) {
2501
2743
  case 0:
2502
2744
  responsePayload = {
2503
2745
  statusCode: 403,
@@ -2507,10 +2749,10 @@ describe('Supplementary Services tests', function () {
2507
2749
  requestSpy = jest.spyOn(webex, 'request').mockRejectedValue(responsePayload);
2508
2750
  warnSpy = jest.spyOn(_Logger.default, 'warn');
2509
2751
  metricSpy = jest.spyOn(call['metricManager'], 'submitCallMetric');
2510
- _context56.next = 7;
2752
+ _context60.next = 7;
2511
2753
  return call.completeTransfer(_types5.TransferType.BLIND, undefined, transfereeNumber);
2512
2754
  case 7:
2513
- _context56.next = 9;
2755
+ _context60.next = 9;
2514
2756
  return (0, _testUtil.flushPromises)(1);
2515
2757
  case 9:
2516
2758
  expect(requestSpy).toBeCalled();
@@ -2526,14 +2768,14 @@ describe('Supplementary Services tests', function () {
2526
2768
  expect(metricSpy).toHaveBeenCalledWith(_types4.METRIC_EVENT.CALL_ERROR, _types4.TRANSFER_ACTION.BLIND, _types4.METRIC_TYPE.BEHAVIORAL, call.getCallId(), call.getCorrelationId(), expect.any(_Errors.CallError));
2527
2769
  case 16:
2528
2770
  case "end":
2529
- return _context56.stop();
2771
+ return _context60.stop();
2530
2772
  }
2531
- }, _callee56);
2773
+ }, _callee60);
2532
2774
  })));
2533
- it('Handle unsuccessful consult transfer case', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee57() {
2775
+ it('Handle unsuccessful consult transfer case', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee61() {
2534
2776
  var responsePayload, emitSpy, requestSpy, warnSpy, metricSpy;
2535
- return _regenerator.default.wrap(function _callee57$(_context57) {
2536
- while (1) switch (_context57.prev = _context57.next) {
2777
+ return _regenerator.default.wrap(function _callee61$(_context61) {
2778
+ while (1) switch (_context61.prev = _context61.next) {
2537
2779
  case 0:
2538
2780
  responsePayload = {
2539
2781
  statusCode: 403,
@@ -2543,10 +2785,10 @@ describe('Supplementary Services tests', function () {
2543
2785
  requestSpy = jest.spyOn(webex, 'request').mockRejectedValue(responsePayload);
2544
2786
  warnSpy = jest.spyOn(_Logger.default, 'warn');
2545
2787
  metricSpy = jest.spyOn(call['metricManager'], 'submitCallMetric');
2546
- _context57.next = 7;
2788
+ _context61.next = 7;
2547
2789
  return call.completeTransfer(_types5.TransferType.CONSULT, secondCall.getCallId(), undefined);
2548
2790
  case 7:
2549
- _context57.next = 9;
2791
+ _context61.next = 9;
2550
2792
  return (0, _testUtil.flushPromises)(2);
2551
2793
  case 9:
2552
2794
  expect(requestSpy).toBeCalled();
@@ -2563,18 +2805,18 @@ describe('Supplementary Services tests', function () {
2563
2805
  expect(metricSpy).toHaveBeenCalledWith(_types4.METRIC_EVENT.CALL_ERROR, _types4.TRANSFER_ACTION.CONSULT, _types4.METRIC_TYPE.BEHAVIORAL, call.getCallId(), call.getCorrelationId(), expect.any(_Errors.CallError));
2564
2806
  case 17:
2565
2807
  case "end":
2566
- return _context57.stop();
2808
+ return _context61.stop();
2567
2809
  }
2568
- }, _callee57);
2810
+ }, _callee61);
2569
2811
  })));
2570
- it('Handle blind transfer with undefined transferTarget', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee58() {
2812
+ it('Handle blind transfer with undefined transferTarget', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee62() {
2571
2813
  var requestSpy, warnSpy;
2572
- return _regenerator.default.wrap(function _callee58$(_context58) {
2573
- while (1) switch (_context58.prev = _context58.next) {
2814
+ return _regenerator.default.wrap(function _callee62$(_context62) {
2815
+ while (1) switch (_context62.prev = _context62.next) {
2574
2816
  case 0:
2575
2817
  requestSpy = jest.spyOn(webex, 'request');
2576
2818
  warnSpy = jest.spyOn(_Logger.default, 'warn');
2577
- _context58.next = 4;
2819
+ _context62.next = 4;
2578
2820
  return call.completeTransfer(_types5.TransferType.BLIND, undefined, undefined);
2579
2821
  case 4:
2580
2822
  /* We should be in CALL_ESTABLISHED state */
@@ -2585,18 +2827,18 @@ describe('Supplementary Services tests', function () {
2585
2827
  expect(warnSpy).toBeCalledOnceWith("Invalid information received, transfer failed for correlationId: ".concat(call.getCorrelationId()), transferLoggingContext);
2586
2828
  case 9:
2587
2829
  case "end":
2588
- return _context58.stop();
2830
+ return _context62.stop();
2589
2831
  }
2590
- }, _callee58);
2832
+ }, _callee62);
2591
2833
  })));
2592
- it('Handle consult transfer with undefined transferCallId', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee59() {
2834
+ it('Handle consult transfer with undefined transferCallId', /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee63() {
2593
2835
  var requestSpy, warnSpy;
2594
- return _regenerator.default.wrap(function _callee59$(_context59) {
2595
- while (1) switch (_context59.prev = _context59.next) {
2836
+ return _regenerator.default.wrap(function _callee63$(_context63) {
2837
+ while (1) switch (_context63.prev = _context63.next) {
2596
2838
  case 0:
2597
2839
  requestSpy = jest.spyOn(webex, 'request');
2598
2840
  warnSpy = jest.spyOn(_Logger.default, 'warn');
2599
- _context59.next = 4;
2841
+ _context63.next = 4;
2600
2842
  return call.completeTransfer(_types5.TransferType.CONSULT, undefined, undefined);
2601
2843
  case 4:
2602
2844
  /* We should be in CALL_ESTABLISHED state */
@@ -2607,9 +2849,9 @@ describe('Supplementary Services tests', function () {
2607
2849
  expect(warnSpy).toBeCalledOnceWith("Invalid information received, transfer failed for correlationId: ".concat(call.getCorrelationId()), transferLoggingContext);
2608
2850
  case 9:
2609
2851
  case "end":
2610
- return _context59.stop();
2852
+ return _context63.stop();
2611
2853
  }
2612
- }, _callee59);
2854
+ }, _callee63);
2613
2855
  })));
2614
2856
  });
2615
2857
  });