@webex/calling 3.12.0-mobius-socket.15 → 3.12.0-mobius-socket.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/CallingClient/utils/mobiusSocketMapper.test.js +211 -0
- package/dist/CallingClient/utils/mobiusSocketMapper.test.js.map +1 -0
- package/dist/CallingClient/utils/request.test.js +881 -0
- package/dist/CallingClient/utils/request.test.js.map +1 -0
- package/dist/CallingClient/utils/wsFeatureFlag.test.js +139 -0
- package/dist/CallingClient/utils/wsFeatureFlag.test.js.map +1 -0
- package/dist/Metrics/index.test.js +356 -0
- package/dist/Metrics/index.test.js.map +1 -1
- package/dist/mobius-socket/config.js +8 -8
- package/dist/mobius-socket/config.js.map +1 -1
- package/dist/mobius-socket/errors.js +2 -3
- package/dist/mobius-socket/errors.js.map +1 -1
- package/dist/mobius-socket/index.js +16 -10
- package/dist/mobius-socket/index.js.map +1 -1
- package/dist/mobius-socket/mobius-socket-events.test.js +5 -3
- package/dist/mobius-socket/mobius-socket-events.test.js.map +1 -1
- package/dist/mobius-socket/mobius-socket.js +3 -2
- package/dist/mobius-socket/mobius-socket.js.map +1 -1
- package/dist/mobius-socket/mobius-socket.test.js +6 -4
- package/dist/mobius-socket/mobius-socket.test.js.map +1 -1
- package/dist/mobius-socket/socket/constants.js.map +1 -1
- package/dist/mobius-socket/socket/index.js.map +1 -1
- package/dist/mobius-socket/socket/socket-base.js +57 -32
- package/dist/mobius-socket/socket/socket-base.js.map +1 -1
- package/dist/mobius-socket/socket/socket.js.map +1 -1
- package/dist/mobius-socket/socket/socket.shim.js +3 -13
- package/dist/mobius-socket/socket/socket.shim.js.map +1 -1
- package/dist/mobius-socket/socket/types.js +7 -0
- package/dist/mobius-socket/socket/types.js.map +1 -0
- package/dist/mobius-socket/socket.test.js +36 -36
- package/dist/mobius-socket/socket.test.js.map +1 -1
- package/dist/mobius-socket/test/mocha-helpers.js.map +1 -1
- package/dist/mobius-socket/test/promise-tick.js +2 -3
- package/dist/mobius-socket/test/promise-tick.js.map +1 -1
- package/dist/module/mobius-socket/index.js +4 -1
- package/dist/module/mobius-socket/mobius-socket.js +3 -1
- package/dist/module/mobius-socket/socket/socket-base.js +60 -29
- package/dist/module/mobius-socket/socket/socket.shim.js +3 -15
- package/dist/module/mobius-socket/socket/types.js +1 -0
- package/dist/types/mobius-socket/config.d.ts +15 -12
- package/dist/types/mobius-socket/config.d.ts.map +1 -1
- package/dist/types/mobius-socket/errors.d.ts +15 -6
- package/dist/types/mobius-socket/errors.d.ts.map +1 -1
- package/dist/types/mobius-socket/index.d.ts +14 -7
- package/dist/types/mobius-socket/index.d.ts.map +1 -1
- package/dist/types/mobius-socket/mobius-socket.d.ts +27 -43
- package/dist/types/mobius-socket/mobius-socket.d.ts.map +1 -1
- package/dist/types/mobius-socket/socket/constants.d.ts +2 -2
- package/dist/types/mobius-socket/socket/constants.d.ts.map +1 -1
- package/dist/types/mobius-socket/socket/index.d.ts +4 -1
- package/dist/types/mobius-socket/socket/index.d.ts.map +1 -1
- package/dist/types/mobius-socket/socket/socket-base.d.ts +34 -28
- package/dist/types/mobius-socket/socket/socket-base.d.ts.map +1 -1
- package/dist/types/mobius-socket/socket/socket.d.ts +4 -1
- package/dist/types/mobius-socket/socket/socket.d.ts.map +1 -1
- package/dist/types/mobius-socket/socket/socket.shim.d.ts +4 -1
- package/dist/types/mobius-socket/socket/socket.shim.d.ts.map +1 -1
- package/dist/types/mobius-socket/socket/types.d.ts +69 -0
- package/dist/types/mobius-socket/socket/types.d.ts.map +1 -0
- package/package.json +2 -2
- package/src/mobius-socket/socket/socket.shim.ts +22 -0
- package/src/mobius-socket/socket/{socket.js → socket.ts} +2 -1
- package/src/mobius-socket/socket/socket.shim.js +0 -31
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
|
|
4
|
+
var _types = require("../../common/types");
|
|
5
|
+
var _Logger = _interopRequireDefault(require("../../Logger"));
|
|
6
|
+
var _mobiusSocketMapper = require("./mobiusSocketMapper");
|
|
7
|
+
var _constants = require("./constants");
|
|
8
|
+
describe('mobiusSocketMapper', function () {
|
|
9
|
+
var warnSpy;
|
|
10
|
+
beforeEach(function () {
|
|
11
|
+
jest.clearAllMocks();
|
|
12
|
+
warnSpy = jest.spyOn(_Logger.default, 'warn');
|
|
13
|
+
});
|
|
14
|
+
describe('deriveMobiusSocketMessageType', function () {
|
|
15
|
+
describe('Supplementary services', function () {
|
|
16
|
+
it('should return CALL_HOLD for hold service URI', function () {
|
|
17
|
+
var uri = '/api/v1/calling/web/devices/device-123/services/callhold/hold';
|
|
18
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.POST);
|
|
19
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_HOLD);
|
|
20
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
21
|
+
});
|
|
22
|
+
it('should return CALL_RESUME for resume service URI', function () {
|
|
23
|
+
var uri = '/api/v1/calling/web/devices/device-123/services/callhold/resume';
|
|
24
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.POST);
|
|
25
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_RESUME);
|
|
26
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
27
|
+
});
|
|
28
|
+
it('should return CALL_TRANSFER for transfer commit service URI', function () {
|
|
29
|
+
var uri = '/api/v1/calling/web/devices/device-123/services/calltransfer/commit';
|
|
30
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.POST);
|
|
31
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_TRANSFER);
|
|
32
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
33
|
+
});
|
|
34
|
+
it('should return UNKNOWN and log warning for unrecognized supplementary service', function () {
|
|
35
|
+
var uri = '/api/v1/calling/web/devices/device-123/services/unknown/action';
|
|
36
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.POST);
|
|
37
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN);
|
|
38
|
+
expect(warnSpy).toHaveBeenCalledWith("Unrecognized supplementary service uri - uri: ".concat(uri, ", httpMethod: ").concat(_types.HTTP_METHODS.POST), {
|
|
39
|
+
file: 'mobiusSocketMapper',
|
|
40
|
+
method: 'deriveMobiusSocketMessageType'
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
describe('Call operations', function () {
|
|
45
|
+
it('should return CALL_SETUP for call setup URI', function () {
|
|
46
|
+
var uri = '/api/v1/calling/web/devices/device-123/call';
|
|
47
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.POST);
|
|
48
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_SETUP);
|
|
49
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
50
|
+
});
|
|
51
|
+
it('should return CALL_MEDIA for call media URI', function () {
|
|
52
|
+
var uri = '/api/v1/calling/web/devices/device-123/calls/call-456/media';
|
|
53
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.PATCH);
|
|
54
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_MEDIA);
|
|
55
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
56
|
+
});
|
|
57
|
+
it('should return CALL_STATUS for call status URI', function () {
|
|
58
|
+
var uri = '/api/v1/calling/web/devices/device-123/calls/call-456/status';
|
|
59
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.PATCH);
|
|
60
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_STATUS);
|
|
61
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
62
|
+
});
|
|
63
|
+
it('should return CALL_STATE for calls/{callId} with PATCH method', function () {
|
|
64
|
+
var uri = '/api/v1/calling/web/devices/device-123/calls/call-456';
|
|
65
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.PATCH);
|
|
66
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_STATE);
|
|
67
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
68
|
+
});
|
|
69
|
+
it('should return CALL_DELETE for calls/{callId} with DELETE method', function () {
|
|
70
|
+
var uri = '/api/v1/calling/web/devices/device-123/calls/call-456';
|
|
71
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.DELETE);
|
|
72
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_DELETE);
|
|
73
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
74
|
+
});
|
|
75
|
+
it('should return UNKNOWN and log warning for calls/{callId} with unrecognized HTTP method', function () {
|
|
76
|
+
var uri = '/api/v1/calling/web/devices/device-123/calls/call-456';
|
|
77
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.GET);
|
|
78
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN);
|
|
79
|
+
expect(warnSpy).toHaveBeenCalledWith("Unrecognized httpMethod for calls/{callId} - uri: ".concat(uri, ", httpMethod: ").concat(_types.HTTP_METHODS.GET), {
|
|
80
|
+
file: 'mobiusSocketMapper',
|
|
81
|
+
method: 'deriveMobiusSocketMessageType'
|
|
82
|
+
});
|
|
83
|
+
});
|
|
84
|
+
});
|
|
85
|
+
describe('Device operations', function () {
|
|
86
|
+
it('should return REGISTER for device registration URI', function () {
|
|
87
|
+
var uri = '/api/v1/calling/web/device';
|
|
88
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.POST);
|
|
89
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.REGISTER);
|
|
90
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
91
|
+
});
|
|
92
|
+
it('should return UNREGISTER for devices/{deviceId} with DELETE method', function () {
|
|
93
|
+
var uri = '/api/v1/calling/web/devices/device-123';
|
|
94
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.DELETE);
|
|
95
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.UNREGISTER);
|
|
96
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
97
|
+
});
|
|
98
|
+
it('should return DEVICE_GET for devices/{deviceId} with GET method', function () {
|
|
99
|
+
var uri = '/api/v1/calling/web/devices/device-123';
|
|
100
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.GET);
|
|
101
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_GET);
|
|
102
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
103
|
+
});
|
|
104
|
+
it('should return UNKNOWN and log warning for devices/{deviceId} with unrecognized HTTP method', function () {
|
|
105
|
+
var uri = '/api/v1/calling/web/devices/device-123';
|
|
106
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.PATCH);
|
|
107
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN);
|
|
108
|
+
expect(warnSpy).toHaveBeenCalledWith("Unrecognized httpMethod for devices/{deviceId} - uri: ".concat(uri, ", httpMethod: ").concat(_types.HTTP_METHODS.PATCH), {
|
|
109
|
+
file: 'mobiusSocketMapper',
|
|
110
|
+
method: 'deriveMobiusSocketMessageType'
|
|
111
|
+
});
|
|
112
|
+
});
|
|
113
|
+
it('should return DEVICE_STATUS for devices/{deviceId}/status URI', function () {
|
|
114
|
+
var uri = '/api/v1/calling/web/devices/device-123/status';
|
|
115
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.PATCH);
|
|
116
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_STATUS);
|
|
117
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
118
|
+
});
|
|
119
|
+
it('should return DEVICE_LIST for devices list URI without trailing ID', function () {
|
|
120
|
+
var uri = '/api/v1/calling/web/devices';
|
|
121
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.GET);
|
|
122
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_LIST);
|
|
123
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
124
|
+
});
|
|
125
|
+
it('should return DEVICE_LIST for devices list URI with query parameters', function () {
|
|
126
|
+
var uri = '/api/v1/calling/web/devices?userid=user-789';
|
|
127
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.GET);
|
|
128
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_LIST);
|
|
129
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
130
|
+
});
|
|
131
|
+
});
|
|
132
|
+
describe('Edge cases', function () {
|
|
133
|
+
it('should return UNKNOWN and log warning when uri is undefined', function () {
|
|
134
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(undefined, _types.HTTP_METHODS.GET);
|
|
135
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN);
|
|
136
|
+
expect(warnSpy).toHaveBeenCalledWith('Cannot derive Mobius socket message type: uri is empty', {
|
|
137
|
+
file: 'mobiusSocketMapper',
|
|
138
|
+
method: 'deriveMobiusSocketMessageType'
|
|
139
|
+
});
|
|
140
|
+
});
|
|
141
|
+
it('should return UNKNOWN and log warning when uri is empty string', function () {
|
|
142
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)('', _types.HTTP_METHODS.GET);
|
|
143
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN);
|
|
144
|
+
expect(warnSpy).toHaveBeenCalledWith('Cannot derive Mobius socket message type: uri is empty', {
|
|
145
|
+
file: 'mobiusSocketMapper',
|
|
146
|
+
method: 'deriveMobiusSocketMessageType'
|
|
147
|
+
});
|
|
148
|
+
});
|
|
149
|
+
it('should return UNKNOWN and log warning for completely unrecognized URI pattern', function () {
|
|
150
|
+
var uri = '/api/v1/completely/unrecognized/path';
|
|
151
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.POST);
|
|
152
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN);
|
|
153
|
+
expect(warnSpy).toHaveBeenCalledWith("Unrecognized uri pattern for Mobius socket - uri: ".concat(uri, ", httpMethod: ").concat(_types.HTTP_METHODS.POST), {
|
|
154
|
+
file: 'mobiusSocketMapper',
|
|
155
|
+
method: 'deriveMobiusSocketMessageType'
|
|
156
|
+
});
|
|
157
|
+
});
|
|
158
|
+
it('should handle URI with /calls/ in path correctly for DEVICE_STATUS (not call-related)', function () {
|
|
159
|
+
var uri = '/api/v1/calling/web/devices/device-123/status';
|
|
160
|
+
var result = (0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(uri, _types.HTTP_METHODS.PATCH);
|
|
161
|
+
expect(result).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_STATUS);
|
|
162
|
+
expect(warnSpy).not.toHaveBeenCalled();
|
|
163
|
+
});
|
|
164
|
+
it('should prioritize call sub-resources over bare call patterns', function () {
|
|
165
|
+
var mediaUri = '/api/v1/calling/web/devices/device-123/calls/call-456/media';
|
|
166
|
+
var statusUri = '/api/v1/calling/web/devices/device-123/calls/call-456/status';
|
|
167
|
+
expect((0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(mediaUri, _types.HTTP_METHODS.PATCH)).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_MEDIA);
|
|
168
|
+
expect((0, _mobiusSocketMapper.deriveMobiusSocketMessageType)(statusUri, _types.HTTP_METHODS.PATCH)).toBe(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_STATUS);
|
|
169
|
+
});
|
|
170
|
+
});
|
|
171
|
+
});
|
|
172
|
+
describe('isSupplementaryServiceMessageType', function () {
|
|
173
|
+
it('should return true for CALL_HOLD message type', function () {
|
|
174
|
+
var result = (0, _mobiusSocketMapper.isSupplementaryServiceMessageType)(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_HOLD);
|
|
175
|
+
expect(result).toBe(true);
|
|
176
|
+
});
|
|
177
|
+
it('should return true for CALL_RESUME message type', function () {
|
|
178
|
+
var result = (0, _mobiusSocketMapper.isSupplementaryServiceMessageType)(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_RESUME);
|
|
179
|
+
expect(result).toBe(true);
|
|
180
|
+
});
|
|
181
|
+
it('should return true for CALL_TRANSFER message type', function () {
|
|
182
|
+
var result = (0, _mobiusSocketMapper.isSupplementaryServiceMessageType)(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_TRANSFER);
|
|
183
|
+
expect(result).toBe(true);
|
|
184
|
+
});
|
|
185
|
+
it('should return false for REGISTER message type', function () {
|
|
186
|
+
var result = (0, _mobiusSocketMapper.isSupplementaryServiceMessageType)(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.REGISTER);
|
|
187
|
+
expect(result).toBe(false);
|
|
188
|
+
});
|
|
189
|
+
it('should return false for CALL_SETUP message type', function () {
|
|
190
|
+
var result = (0, _mobiusSocketMapper.isSupplementaryServiceMessageType)(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_SETUP);
|
|
191
|
+
expect(result).toBe(false);
|
|
192
|
+
});
|
|
193
|
+
it('should return false for CALL_STATE message type', function () {
|
|
194
|
+
var result = (0, _mobiusSocketMapper.isSupplementaryServiceMessageType)(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_STATE);
|
|
195
|
+
expect(result).toBe(false);
|
|
196
|
+
});
|
|
197
|
+
it('should return false for CALL_DELETE message type', function () {
|
|
198
|
+
var result = (0, _mobiusSocketMapper.isSupplementaryServiceMessageType)(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.CALL_DELETE);
|
|
199
|
+
expect(result).toBe(false);
|
|
200
|
+
});
|
|
201
|
+
it('should return false for DEVICE_STATUS message type', function () {
|
|
202
|
+
var result = (0, _mobiusSocketMapper.isSupplementaryServiceMessageType)(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_STATUS);
|
|
203
|
+
expect(result).toBe(false);
|
|
204
|
+
});
|
|
205
|
+
it('should return false for UNKNOWN message type', function () {
|
|
206
|
+
var result = (0, _mobiusSocketMapper.isSupplementaryServiceMessageType)(_constants.MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN);
|
|
207
|
+
expect(result).toBe(false);
|
|
208
|
+
});
|
|
209
|
+
});
|
|
210
|
+
});
|
|
211
|
+
//# sourceMappingURL=mobiusSocketMapper.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_types","require","_Logger","_interopRequireDefault","_mobiusSocketMapper","_constants","describe","warnSpy","beforeEach","jest","clearAllMocks","spyOn","log","it","uri","result","deriveMobiusSocketMessageType","HTTP_METHODS","POST","expect","toBe","MOBIUS_SOCKET_MESSAGE_TYPE","CALL_HOLD","not","toHaveBeenCalled","CALL_RESUME","CALL_TRANSFER","UNKNOWN","toHaveBeenCalledWith","concat","file","method","CALL_SETUP","PATCH","CALL_MEDIA","CALL_STATUS","CALL_STATE","DELETE","CALL_DELETE","GET","REGISTER","UNREGISTER","DEVICE_GET","DEVICE_STATUS","DEVICE_LIST","undefined","mediaUri","statusUri","isSupplementaryServiceMessageType"],"sources":["mobiusSocketMapper.test.ts"],"sourcesContent":["import {HTTP_METHODS} from '../../common/types';\nimport log from '../../Logger';\nimport {\n deriveMobiusSocketMessageType,\n isSupplementaryServiceMessageType,\n} from './mobiusSocketMapper';\nimport {MOBIUS_SOCKET_MESSAGE_TYPE} from './constants';\n\ndescribe('mobiusSocketMapper', () => {\n let warnSpy: jest.SpyInstance;\n\n beforeEach(() => {\n jest.clearAllMocks();\n warnSpy = jest.spyOn(log, 'warn');\n });\n\n describe('deriveMobiusSocketMessageType', () => {\n describe('Supplementary services', () => {\n it('should return CALL_HOLD for hold service URI', () => {\n const uri = '/api/v1/calling/web/devices/device-123/services/callhold/hold';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.POST);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.CALL_HOLD);\n expect(warnSpy).not.toHaveBeenCalled();\n });\n\n it('should return CALL_RESUME for resume service URI', () => {\n const uri = '/api/v1/calling/web/devices/device-123/services/callhold/resume';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.POST);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.CALL_RESUME);\n expect(warnSpy).not.toHaveBeenCalled();\n });\n\n it('should return CALL_TRANSFER for transfer commit service URI', () => {\n const uri = '/api/v1/calling/web/devices/device-123/services/calltransfer/commit';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.POST);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.CALL_TRANSFER);\n expect(warnSpy).not.toHaveBeenCalled();\n });\n\n it('should return UNKNOWN and log warning for unrecognized supplementary service', () => {\n const uri = '/api/v1/calling/web/devices/device-123/services/unknown/action';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.POST);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN);\n expect(warnSpy).toHaveBeenCalledWith(\n `Unrecognized supplementary service uri - uri: ${uri}, httpMethod: ${HTTP_METHODS.POST}`,\n {\n file: 'mobiusSocketMapper',\n method: 'deriveMobiusSocketMessageType',\n }\n );\n });\n });\n\n describe('Call operations', () => {\n it('should return CALL_SETUP for call setup URI', () => {\n const uri = '/api/v1/calling/web/devices/device-123/call';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.POST);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.CALL_SETUP);\n expect(warnSpy).not.toHaveBeenCalled();\n });\n\n it('should return CALL_MEDIA for call media URI', () => {\n const uri = '/api/v1/calling/web/devices/device-123/calls/call-456/media';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.PATCH);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.CALL_MEDIA);\n expect(warnSpy).not.toHaveBeenCalled();\n });\n\n it('should return CALL_STATUS for call status URI', () => {\n const uri = '/api/v1/calling/web/devices/device-123/calls/call-456/status';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.PATCH);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.CALL_STATUS);\n expect(warnSpy).not.toHaveBeenCalled();\n });\n\n it('should return CALL_STATE for calls/{callId} with PATCH method', () => {\n const uri = '/api/v1/calling/web/devices/device-123/calls/call-456';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.PATCH);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.CALL_STATE);\n expect(warnSpy).not.toHaveBeenCalled();\n });\n\n it('should return CALL_DELETE for calls/{callId} with DELETE method', () => {\n const uri = '/api/v1/calling/web/devices/device-123/calls/call-456';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.DELETE);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.CALL_DELETE);\n expect(warnSpy).not.toHaveBeenCalled();\n });\n\n it('should return UNKNOWN and log warning for calls/{callId} with unrecognized HTTP method', () => {\n const uri = '/api/v1/calling/web/devices/device-123/calls/call-456';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.GET);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN);\n expect(warnSpy).toHaveBeenCalledWith(\n `Unrecognized httpMethod for calls/{callId} - uri: ${uri}, httpMethod: ${HTTP_METHODS.GET}`,\n {\n file: 'mobiusSocketMapper',\n method: 'deriveMobiusSocketMessageType',\n }\n );\n });\n });\n\n describe('Device operations', () => {\n it('should return REGISTER for device registration URI', () => {\n const uri = '/api/v1/calling/web/device';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.POST);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.REGISTER);\n expect(warnSpy).not.toHaveBeenCalled();\n });\n\n it('should return UNREGISTER for devices/{deviceId} with DELETE method', () => {\n const uri = '/api/v1/calling/web/devices/device-123';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.DELETE);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.UNREGISTER);\n expect(warnSpy).not.toHaveBeenCalled();\n });\n\n it('should return DEVICE_GET for devices/{deviceId} with GET method', () => {\n const uri = '/api/v1/calling/web/devices/device-123';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.GET);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_GET);\n expect(warnSpy).not.toHaveBeenCalled();\n });\n\n it('should return UNKNOWN and log warning for devices/{deviceId} with unrecognized HTTP method', () => {\n const uri = '/api/v1/calling/web/devices/device-123';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.PATCH);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN);\n expect(warnSpy).toHaveBeenCalledWith(\n `Unrecognized httpMethod for devices/{deviceId} - uri: ${uri}, httpMethod: ${HTTP_METHODS.PATCH}`,\n {\n file: 'mobiusSocketMapper',\n method: 'deriveMobiusSocketMessageType',\n }\n );\n });\n\n it('should return DEVICE_STATUS for devices/{deviceId}/status URI', () => {\n const uri = '/api/v1/calling/web/devices/device-123/status';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.PATCH);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_STATUS);\n expect(warnSpy).not.toHaveBeenCalled();\n });\n\n it('should return DEVICE_LIST for devices list URI without trailing ID', () => {\n const uri = '/api/v1/calling/web/devices';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.GET);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_LIST);\n expect(warnSpy).not.toHaveBeenCalled();\n });\n\n it('should return DEVICE_LIST for devices list URI with query parameters', () => {\n const uri = '/api/v1/calling/web/devices?userid=user-789';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.GET);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_LIST);\n expect(warnSpy).not.toHaveBeenCalled();\n });\n });\n\n describe('Edge cases', () => {\n it('should return UNKNOWN and log warning when uri is undefined', () => {\n const result = deriveMobiusSocketMessageType(undefined, HTTP_METHODS.GET);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN);\n expect(warnSpy).toHaveBeenCalledWith(\n 'Cannot derive Mobius socket message type: uri is empty',\n {\n file: 'mobiusSocketMapper',\n method: 'deriveMobiusSocketMessageType',\n }\n );\n });\n\n it('should return UNKNOWN and log warning when uri is empty string', () => {\n const result = deriveMobiusSocketMessageType('', HTTP_METHODS.GET);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN);\n expect(warnSpy).toHaveBeenCalledWith(\n 'Cannot derive Mobius socket message type: uri is empty',\n {\n file: 'mobiusSocketMapper',\n method: 'deriveMobiusSocketMessageType',\n }\n );\n });\n\n it('should return UNKNOWN and log warning for completely unrecognized URI pattern', () => {\n const uri = '/api/v1/completely/unrecognized/path';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.POST);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN);\n expect(warnSpy).toHaveBeenCalledWith(\n `Unrecognized uri pattern for Mobius socket - uri: ${uri}, httpMethod: ${HTTP_METHODS.POST}`,\n {\n file: 'mobiusSocketMapper',\n method: 'deriveMobiusSocketMessageType',\n }\n );\n });\n\n it('should handle URI with /calls/ in path correctly for DEVICE_STATUS (not call-related)', () => {\n const uri = '/api/v1/calling/web/devices/device-123/status';\n const result = deriveMobiusSocketMessageType(uri, HTTP_METHODS.PATCH);\n\n expect(result).toBe(MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_STATUS);\n expect(warnSpy).not.toHaveBeenCalled();\n });\n\n it('should prioritize call sub-resources over bare call patterns', () => {\n const mediaUri = '/api/v1/calling/web/devices/device-123/calls/call-456/media';\n const statusUri = '/api/v1/calling/web/devices/device-123/calls/call-456/status';\n\n expect(deriveMobiusSocketMessageType(mediaUri, HTTP_METHODS.PATCH)).toBe(\n MOBIUS_SOCKET_MESSAGE_TYPE.CALL_MEDIA\n );\n expect(deriveMobiusSocketMessageType(statusUri, HTTP_METHODS.PATCH)).toBe(\n MOBIUS_SOCKET_MESSAGE_TYPE.CALL_STATUS\n );\n });\n });\n });\n\n describe('isSupplementaryServiceMessageType', () => {\n it('should return true for CALL_HOLD message type', () => {\n const result = isSupplementaryServiceMessageType(MOBIUS_SOCKET_MESSAGE_TYPE.CALL_HOLD);\n\n expect(result).toBe(true);\n });\n\n it('should return true for CALL_RESUME message type', () => {\n const result = isSupplementaryServiceMessageType(MOBIUS_SOCKET_MESSAGE_TYPE.CALL_RESUME);\n\n expect(result).toBe(true);\n });\n\n it('should return true for CALL_TRANSFER message type', () => {\n const result = isSupplementaryServiceMessageType(MOBIUS_SOCKET_MESSAGE_TYPE.CALL_TRANSFER);\n\n expect(result).toBe(true);\n });\n\n it('should return false for REGISTER message type', () => {\n const result = isSupplementaryServiceMessageType(MOBIUS_SOCKET_MESSAGE_TYPE.REGISTER);\n\n expect(result).toBe(false);\n });\n\n it('should return false for CALL_SETUP message type', () => {\n const result = isSupplementaryServiceMessageType(MOBIUS_SOCKET_MESSAGE_TYPE.CALL_SETUP);\n\n expect(result).toBe(false);\n });\n\n it('should return false for CALL_STATE message type', () => {\n const result = isSupplementaryServiceMessageType(MOBIUS_SOCKET_MESSAGE_TYPE.CALL_STATE);\n\n expect(result).toBe(false);\n });\n\n it('should return false for CALL_DELETE message type', () => {\n const result = isSupplementaryServiceMessageType(MOBIUS_SOCKET_MESSAGE_TYPE.CALL_DELETE);\n\n expect(result).toBe(false);\n });\n\n it('should return false for DEVICE_STATUS message type', () => {\n const result = isSupplementaryServiceMessageType(MOBIUS_SOCKET_MESSAGE_TYPE.DEVICE_STATUS);\n\n expect(result).toBe(false);\n });\n\n it('should return false for UNKNOWN message type', () => {\n const result = isSupplementaryServiceMessageType(MOBIUS_SOCKET_MESSAGE_TYPE.UNKNOWN);\n\n expect(result).toBe(false);\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
|