softphone-vendor-headsets 1.0.1 → 2.0.0-develop.8
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/1.softhphone-vendor-headsets.js +1 -1
- package/dist/1.softhphone-vendor-headsets.js.map +1 -1
- package/dist/2.softhphone-vendor-headsets.js +1 -1
- package/dist/2.softhphone-vendor-headsets.js.map +1 -1
- package/dist/3.softhphone-vendor-headsets.js +1 -1
- package/dist/3.softhphone-vendor-headsets.js.map +1 -1
- package/dist/deploy-info.json +3 -723
- package/dist/softhphone-vendor-headsets.js +4 -19
- package/dist/softhphone-vendor-headsets.js.map +1 -1
- package/package.json +82 -88
- package/dist/cjs/src/config/i18n.d.ts +0 -2
- package/dist/cjs/src/config/i18n.js +0 -27
- package/dist/cjs/src/config/i18n.js.map +0 -1
- package/dist/cjs/src/library/index.d.ts +0 -9
- package/dist/cjs/src/library/index.js +0 -26
- package/dist/cjs/src/library/index.js.map +0 -1
- package/dist/cjs/src/library/services/headset.d.ts +0 -41
- package/dist/cjs/src/library/services/headset.js +0 -181
- package/dist/cjs/src/library/services/headset.js.map +0 -1
- package/dist/cjs/src/library/services/headset.test.d.ts +0 -1
- package/dist/cjs/src/library/services/headset.test.js +0 -487
- package/dist/cjs/src/library/services/headset.test.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-commands.d.ts +0 -13
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-commands.js +0 -18
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-commands.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-event-translation.d.ts +0 -12
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-event-translation.js +0 -16
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-event-translation.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-requested-events.d.ts +0 -5
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-requested-events.js +0 -10
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-requested-events.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome.d.ts +0 -38
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome.js +0 -251
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome.test.d.ts +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome.test.js +0 -573
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome.test.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-commands.d.ts +0 -13
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-commands.js +0 -18
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-commands.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-commands.d.ts +0 -6
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-commands.js +0 -11
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-commands.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-heaset-state.d.ts +0 -4
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-heaset-state.js +0 -3
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-heaset-state.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-types.d.ts +0 -23
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-types.js +0 -13
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-types.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.d.ts +0 -45
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.js +0 -236
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.test.d.ts +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.test.js +0 -567
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.test.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra.d.ts +0 -48
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra.js +0 -341
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra.test.d.ts +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra.test.js +0 -844
- package/dist/cjs/src/library/services/vendor-implementations/jabra/jabra.test.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-call-events.d.ts +0 -37
- package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-call-events.js +0 -51
- package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-call-events.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-call-events.test.d.ts +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-call-events.test.js +0 -111
- package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-call-events.test.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-test-responses.d.ts +0 -260
- package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-test-responses.js +0 -273
- package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics-test-responses.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics.d.ts +0 -58
- package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics.js +0 -374
- package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics.test.d.ts +0 -2
- package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics.test.js +0 -796
- package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics.test.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser-event-types.d.ts +0 -5
- package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser-event-types.js +0 -10
- package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser-event-types.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser-events.d.ts +0 -21
- package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser-events.js +0 -26
- package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser-events.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser-payload.d.ts +0 -16
- package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser-payload.js +0 -3
- package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser-payload.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser.d.ts +0 -44
- package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser.js +0 -303
- package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser.test.d.ts +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser.test.js +0 -801
- package/dist/cjs/src/library/services/vendor-implementations/sennheiser/sennheiser.test.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/vendor-implementation.d.ts +0 -69
- package/dist/cjs/src/library/services/vendor-implementations/vendor-implementation.js +0 -99
- package/dist/cjs/src/library/services/vendor-implementations/vendor-implementation.js.map +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/vendor-implemntation.test.d.ts +0 -1
- package/dist/cjs/src/library/services/vendor-implementations/vendor-implemntation.test.js +0 -106
- package/dist/cjs/src/library/services/vendor-implementations/vendor-implemntation.test.js.map +0 -1
- package/dist/cjs/src/library/test-utils.test.d.ts +0 -16
- package/dist/cjs/src/library/test-utils.test.js +0 -40
- package/dist/cjs/src/library/test-utils.test.js.map +0 -1
- package/dist/cjs/src/library/types/call-info.d.ts +0 -4
- package/dist/cjs/src/library/types/call-info.js +0 -3
- package/dist/cjs/src/library/types/call-info.js.map +0 -1
- package/dist/cjs/src/library/types/consumed-headset-events.d.ts +0 -45
- package/dist/cjs/src/library/types/consumed-headset-events.js +0 -18
- package/dist/cjs/src/library/types/consumed-headset-events.js.map +0 -1
- package/dist/cjs/src/library/types/device-info.d.ts +0 -8
- package/dist/cjs/src/library/types/device-info.js +0 -3
- package/dist/cjs/src/library/types/device-info.js.map +0 -1
- package/dist/cjs/src/library/types/emitted-headset-events.d.ts +0 -31
- package/dist/cjs/src/library/types/emitted-headset-events.js +0 -3
- package/dist/cjs/src/library/types/emitted-headset-events.js.map +0 -1
- package/dist/cjs/src/library/types/jabra-request.d.ts +0 -3
- package/dist/cjs/src/library/types/jabra-request.js +0 -3
- package/dist/cjs/src/library/types/jabra-request.js.map +0 -1
- package/dist/cjs/src/library/utils.d.ts +0 -14
- package/dist/cjs/src/library/utils.js +0 -80
- package/dist/cjs/src/library/utils.js.map +0 -1
- package/dist/cjs/src/library/utils.test.d.ts +0 -1
- package/dist/cjs/src/library/utils.test.js +0 -46
- package/dist/cjs/src/library/utils.test.js.map +0 -1
- package/dist/cjs/src/mocks/call.d.ts +0 -11
- package/dist/cjs/src/mocks/call.js +0 -54
- package/dist/cjs/src/mocks/call.js.map +0 -1
- package/dist/cjs/src/mocks/device-service.d.ts +0 -8
- package/dist/cjs/src/mocks/device-service.js +0 -43
- package/dist/cjs/src/mocks/device-service.js.map +0 -1
- package/dist/cjs/src/setupTests.d.ts +0 -1
- package/dist/cjs/src/setupTests.js +0 -8
- package/dist/cjs/src/setupTests.js.map +0 -1
- package/dist/es/src/config/i18n.d.ts +0 -2
- package/dist/es/src/config/i18n.js +0 -22
- package/dist/es/src/config/i18n.js.map +0 -1
- package/dist/es/src/library/index.d.ts +0 -9
- package/dist/es/src/library/index.js +0 -10
- package/dist/es/src/library/index.js.map +0 -1
- package/dist/es/src/library/services/headset.d.ts +0 -41
- package/dist/es/src/library/services/headset.js +0 -175
- package/dist/es/src/library/services/headset.js.map +0 -1
- package/dist/es/src/library/services/headset.test.d.ts +0 -1
- package/dist/es/src/library/services/headset.test.js +0 -482
- package/dist/es/src/library/services/headset.test.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-commands.d.ts +0 -13
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-commands.js +0 -15
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-commands.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-event-translation.d.ts +0 -12
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-event-translation.js +0 -13
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-event-translation.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-requested-events.d.ts +0 -5
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-requested-events.js +0 -7
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome-requested-events.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome.d.ts +0 -38
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome.js +0 -248
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome.test.d.ts +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome.test.js +0 -568
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-chrome/jabra-chrome.test.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-commands.d.ts +0 -13
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-commands.js +0 -15
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-commands.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-commands.d.ts +0 -6
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-commands.js +0 -8
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-commands.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-heaset-state.d.ts +0 -4
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-heaset-state.js +0 -2
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-heaset-state.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-types.d.ts +0 -23
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-types.js +0 -10
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native-types.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.d.ts +0 -45
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.js +0 -233
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.test.d.ts +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.test.js +0 -543
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra-native/jabra-native.test.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra.d.ts +0 -48
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra.js +0 -338
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra.test.d.ts +0 -1
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra.test.js +0 -839
- package/dist/es/src/library/services/vendor-implementations/jabra/jabra.test.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-call-events.d.ts +0 -37
- package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-call-events.js +0 -48
- package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-call-events.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-call-events.test.d.ts +0 -1
- package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-call-events.test.js +0 -109
- package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-call-events.test.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-test-responses.d.ts +0 -260
- package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-test-responses.js +0 -271
- package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics-test-responses.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics.d.ts +0 -58
- package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics.js +0 -368
- package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics.test.d.ts +0 -2
- package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics.test.js +0 -791
- package/dist/es/src/library/services/vendor-implementations/plantronics/plantronics.test.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser-event-types.d.ts +0 -5
- package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser-event-types.js +0 -7
- package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser-event-types.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser-events.d.ts +0 -21
- package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser-events.js +0 -23
- package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser-events.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser-payload.d.ts +0 -16
- package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser-payload.js +0 -2
- package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser-payload.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser.d.ts +0 -44
- package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser.js +0 -281
- package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser.test.d.ts +0 -1
- package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser.test.js +0 -777
- package/dist/es/src/library/services/vendor-implementations/sennheiser/sennheiser.test.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/vendor-implementation.d.ts +0 -69
- package/dist/es/src/library/services/vendor-implementations/vendor-implementation.js +0 -95
- package/dist/es/src/library/services/vendor-implementations/vendor-implementation.js.map +0 -1
- package/dist/es/src/library/services/vendor-implementations/vendor-implemntation.test.d.ts +0 -1
- package/dist/es/src/library/services/vendor-implementations/vendor-implemntation.test.js +0 -104
- package/dist/es/src/library/services/vendor-implementations/vendor-implemntation.test.js.map +0 -1
- package/dist/es/src/library/test-utils.test.d.ts +0 -16
- package/dist/es/src/library/test-utils.test.js +0 -36
- package/dist/es/src/library/test-utils.test.js.map +0 -1
- package/dist/es/src/library/types/call-info.d.ts +0 -4
- package/dist/es/src/library/types/call-info.js +0 -2
- package/dist/es/src/library/types/call-info.js.map +0 -1
- package/dist/es/src/library/types/consumed-headset-events.d.ts +0 -45
- package/dist/es/src/library/types/consumed-headset-events.js +0 -15
- package/dist/es/src/library/types/consumed-headset-events.js.map +0 -1
- package/dist/es/src/library/types/device-info.d.ts +0 -8
- package/dist/es/src/library/types/device-info.js +0 -2
- package/dist/es/src/library/types/device-info.js.map +0 -1
- package/dist/es/src/library/types/emitted-headset-events.d.ts +0 -31
- package/dist/es/src/library/types/emitted-headset-events.js +0 -2
- package/dist/es/src/library/types/emitted-headset-events.js.map +0 -1
- package/dist/es/src/library/types/jabra-request.d.ts +0 -3
- package/dist/es/src/library/types/jabra-request.js +0 -2
- package/dist/es/src/library/types/jabra-request.js.map +0 -1
- package/dist/es/src/library/utils.d.ts +0 -14
- package/dist/es/src/library/utils.js +0 -69
- package/dist/es/src/library/utils.js.map +0 -1
- package/dist/es/src/library/utils.test.d.ts +0 -1
- package/dist/es/src/library/utils.test.js +0 -44
- package/dist/es/src/library/utils.test.js.map +0 -1
- package/dist/es/src/mocks/call.d.ts +0 -11
- package/dist/es/src/mocks/call.js +0 -51
- package/dist/es/src/mocks/call.js.map +0 -1
- package/dist/es/src/mocks/device-service.d.ts +0 -8
- package/dist/es/src/mocks/device-service.js +0 -40
- package/dist/es/src/mocks/device-service.js.map +0 -1
- package/dist/es/src/setupTests.d.ts +0 -1
- package/dist/es/src/setupTests.js +0 -6
- package/dist/es/src/setupTests.js.map +0 -1
package/dist/cjs/src/library/services/vendor-implementations/plantronics/plantronics.test.js
DELETED
|
@@ -1,796 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
// import fetchJsonp from 'fetch-jsonp';
|
|
16
|
-
require("whatwg-fetch");
|
|
17
|
-
const plantronics_test_responses_1 = __importDefault(require("./plantronics-test-responses"));
|
|
18
|
-
require("regenerator-runtime");
|
|
19
|
-
const broadcast_channel_1 = require("broadcast-channel");
|
|
20
|
-
const browserama_1 = __importDefault(require("browserama"));
|
|
21
|
-
const test_utils_test_1 = require("../../../test-utils.test");
|
|
22
|
-
const plantronics_1 = __importDefault(require("./plantronics"));
|
|
23
|
-
const plantronics_call_events_1 = require("./plantronics-call-events");
|
|
24
|
-
const fetch_jsonp_1 = __importDefault(require("fetch-jsonp"));
|
|
25
|
-
jest.mock('broadcast-channel');
|
|
26
|
-
jest.mock('fetch-jsonp', () => jest.fn());
|
|
27
|
-
const mockPlantronicsHost = 'http://localhost:3000/plantronics';
|
|
28
|
-
const testDevice = {
|
|
29
|
-
ProductName: 'testDevice1',
|
|
30
|
-
};
|
|
31
|
-
const originalFetchFunction = plantronics_1.default.getInstance({ logger: console })._fetch;
|
|
32
|
-
function resetService(plantronicsService) {
|
|
33
|
-
plantronicsService.apiHost = mockPlantronicsHost;
|
|
34
|
-
plantronicsService.vendorName = 'Plantronics';
|
|
35
|
-
plantronicsService.pluginName = 'genesys-cloud-headset-library';
|
|
36
|
-
plantronicsService._deviceInfo = null;
|
|
37
|
-
plantronicsService.activePollingInterval = 2000;
|
|
38
|
-
plantronicsService.connectedDeviceInterval = 6000;
|
|
39
|
-
plantronicsService.disconnectedDeviceInterval = 2000;
|
|
40
|
-
plantronicsService.deviceIdRetryInterval = 2000;
|
|
41
|
-
plantronicsService.isActive = false;
|
|
42
|
-
plantronicsService.isConnected = false;
|
|
43
|
-
plantronicsService.isConnecting = false;
|
|
44
|
-
plantronicsService.disableEventPolling = false;
|
|
45
|
-
plantronicsService.deviceStatusTimer = null;
|
|
46
|
-
}
|
|
47
|
-
const sendScenario = function (scenario) {
|
|
48
|
-
return fetch(`${mockPlantronicsHost}/scenario`, {
|
|
49
|
-
method: 'post',
|
|
50
|
-
headers: {
|
|
51
|
-
"Content-Type": "application/json"
|
|
52
|
-
},
|
|
53
|
-
body: JSON.stringify(scenario),
|
|
54
|
-
mode: 'cors'
|
|
55
|
-
});
|
|
56
|
-
};
|
|
57
|
-
const queueCallEvents = function (scenario) {
|
|
58
|
-
return fetch(`${mockPlantronicsHost}/callEvents`, {
|
|
59
|
-
method: 'PUT',
|
|
60
|
-
headers: {
|
|
61
|
-
"Content-Type": "application/json"
|
|
62
|
-
},
|
|
63
|
-
body: JSON.stringify(scenario),
|
|
64
|
-
mode: 'cors'
|
|
65
|
-
});
|
|
66
|
-
};
|
|
67
|
-
let callbackCount = 1;
|
|
68
|
-
describe('PlantronicsService', () => {
|
|
69
|
-
let plantronicsService;
|
|
70
|
-
beforeEach(() => {
|
|
71
|
-
plantronicsService = plantronics_1.default.getInstance({ logger: console });
|
|
72
|
-
plantronicsService._fetch = (url) => {
|
|
73
|
-
const fullUrl = `${url}&callback=${callbackCount++}`;
|
|
74
|
-
return fetch(fullUrl, {
|
|
75
|
-
method: 'get',
|
|
76
|
-
headers: {
|
|
77
|
-
"Content-Type": "application/json"
|
|
78
|
-
}
|
|
79
|
-
});
|
|
80
|
-
};
|
|
81
|
-
resetService(plantronicsService);
|
|
82
|
-
});
|
|
83
|
-
afterAll(() => {
|
|
84
|
-
resetService(plantronicsService);
|
|
85
|
-
});
|
|
86
|
-
describe('instantiation', () => {
|
|
87
|
-
afterEach(() => {
|
|
88
|
-
plantronicsService = null;
|
|
89
|
-
});
|
|
90
|
-
it('should be a singleton', () => {
|
|
91
|
-
const plantronicsService2 = plantronics_1.default.getInstance({ logger: console });
|
|
92
|
-
expect(plantronicsService).not.toBeFalsy();
|
|
93
|
-
expect(plantronicsService2).not.toBeFalsy();
|
|
94
|
-
expect(plantronicsService).toBe(plantronicsService2);
|
|
95
|
-
});
|
|
96
|
-
});
|
|
97
|
-
describe('deviceName', () => {
|
|
98
|
-
it('should return the value of deviceInfo.ProductName', () => {
|
|
99
|
-
plantronicsService._deviceInfo = testDevice;
|
|
100
|
-
const result = plantronicsService.deviceName;
|
|
101
|
-
expect(result).toEqual(testDevice.ProductName);
|
|
102
|
-
});
|
|
103
|
-
it('should return undefined if _deviceInfo is undefined', () => {
|
|
104
|
-
plantronicsService._deviceInfo = undefined;
|
|
105
|
-
const result = plantronicsService.deviceName;
|
|
106
|
-
expect(result).toBeUndefined();
|
|
107
|
-
});
|
|
108
|
-
});
|
|
109
|
-
describe('apiHost', () => {
|
|
110
|
-
it('should return the expected value', () => {
|
|
111
|
-
expect(plantronicsService.apiHost).toEqual(mockPlantronicsHost);
|
|
112
|
-
});
|
|
113
|
-
});
|
|
114
|
-
describe('vendorName', () => {
|
|
115
|
-
it('should return the expected name', () => {
|
|
116
|
-
const expected = 'Plantronics';
|
|
117
|
-
expect(plantronicsService.vendorName).toEqual(expected);
|
|
118
|
-
});
|
|
119
|
-
});
|
|
120
|
-
describe('deviceLabelMatchesVendor', () => {
|
|
121
|
-
beforeEach(() => {
|
|
122
|
-
plantronicsService = plantronics_1.default.getInstance({ logger: console });
|
|
123
|
-
plantronicsService.logger = test_utils_test_1.mockLogger;
|
|
124
|
-
});
|
|
125
|
-
it('should return true when the device label contains the string "plantronics"', () => {
|
|
126
|
-
let testLabel = 'plantronics headset';
|
|
127
|
-
let result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
128
|
-
expect(result).toBe(true);
|
|
129
|
-
testLabel = 'A headset PlanTroniCs made';
|
|
130
|
-
result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
131
|
-
expect(result).toBe(true);
|
|
132
|
-
testLabel = 'A headset of Plantronics';
|
|
133
|
-
result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
134
|
-
expect(result).toBe(true);
|
|
135
|
-
});
|
|
136
|
-
it('should return false when the device label does not contain the string "plantronics"', () => {
|
|
137
|
-
let testLabel = 'standard headset';
|
|
138
|
-
let result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
139
|
-
expect(result).toBe(false);
|
|
140
|
-
testLabel = 'A headset sennheiser made';
|
|
141
|
-
result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
142
|
-
expect(result).toBe(false);
|
|
143
|
-
testLabel = 'A headset of awesome';
|
|
144
|
-
result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
145
|
-
expect(result).toBe(false);
|
|
146
|
-
});
|
|
147
|
-
it('should return true when device label contains the string "plt"', () => {
|
|
148
|
-
let testLabel = 'plt: a sandwich';
|
|
149
|
-
let result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
150
|
-
expect(result).toBe(true);
|
|
151
|
-
testLabel = 'test test PlT';
|
|
152
|
-
result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
153
|
-
expect(result).toBe(true);
|
|
154
|
-
testLabel = 'test pLt test';
|
|
155
|
-
result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
156
|
-
expect(result).toBe(true);
|
|
157
|
-
});
|
|
158
|
-
it('should return false when device label does not contain the string "plt"', () => {
|
|
159
|
-
const testLabel = 'standard headset';
|
|
160
|
-
const result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
161
|
-
expect(result).toBe(false);
|
|
162
|
-
});
|
|
163
|
-
it('should return true when the device label contains the string "(047f:"', () => {
|
|
164
|
-
let testLabel = '(047f: headset';
|
|
165
|
-
let result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
166
|
-
expect(result).toBe(true);
|
|
167
|
-
testLabel = 'A headset (047f: made';
|
|
168
|
-
result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
169
|
-
expect(result).toBe(true);
|
|
170
|
-
testLabel = 'A headset of (047f:';
|
|
171
|
-
result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
172
|
-
expect(result).toBe(true);
|
|
173
|
-
});
|
|
174
|
-
it('should return false when the device label does not contain the string "(047f:"', () => {
|
|
175
|
-
let testLabel = 'standard headset';
|
|
176
|
-
let result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
177
|
-
expect(result).toBe(false);
|
|
178
|
-
testLabel = 'A headset sennheiser made';
|
|
179
|
-
result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
180
|
-
expect(result).toBe(false);
|
|
181
|
-
testLabel = 'A headset of awesome';
|
|
182
|
-
result = plantronicsService.deviceLabelMatchesVendor(testLabel);
|
|
183
|
-
expect(result).toBe(false);
|
|
184
|
-
});
|
|
185
|
-
});
|
|
186
|
-
describe('pollForCallEvents', () => {
|
|
187
|
-
beforeEach(() => {
|
|
188
|
-
jest.useFakeTimers();
|
|
189
|
-
});
|
|
190
|
-
it('will not call getCallEventsSpy if proper flags are not met', () => {
|
|
191
|
-
const getCallEventsSpy = jest.spyOn(plantronicsService, 'getCallEvents');
|
|
192
|
-
const pollForCallEventsSpy = jest.spyOn(plantronicsService, 'pollForCallEvents');
|
|
193
|
-
jest.useFakeTimers();
|
|
194
|
-
plantronicsService.pollForCallEvents();
|
|
195
|
-
expect(getCallEventsSpy).not.toHaveBeenCalled();
|
|
196
|
-
jest.advanceTimersByTime(plantronicsService.activePollingInterval);
|
|
197
|
-
expect(pollForCallEventsSpy).toHaveBeenCalled();
|
|
198
|
-
});
|
|
199
|
-
it('will call getCallEventsSpy if proper flags are met', () => {
|
|
200
|
-
const getCallEventsSpy = jest.spyOn(plantronicsService, 'getCallEvents');
|
|
201
|
-
const pollForCallEventsSpy = jest.spyOn(plantronicsService, 'pollForCallEvents');
|
|
202
|
-
plantronicsService.isConnected = true;
|
|
203
|
-
plantronicsService.isActive = true;
|
|
204
|
-
plantronicsService.disableEventPolling = false;
|
|
205
|
-
jest.useFakeTimers();
|
|
206
|
-
plantronicsService.pollForCallEvents();
|
|
207
|
-
expect(getCallEventsSpy).toHaveBeenCalled();
|
|
208
|
-
jest.advanceTimersByTime(plantronicsService.activePollingInterval);
|
|
209
|
-
expect(pollForCallEventsSpy).toHaveBeenCalled();
|
|
210
|
-
});
|
|
211
|
-
});
|
|
212
|
-
describe('pollForDeviceStatus', () => {
|
|
213
|
-
afterEach(() => {
|
|
214
|
-
jest.useRealTimers();
|
|
215
|
-
});
|
|
216
|
-
it('will not call getDeviceStatusSpy if proper flags are not met', () => {
|
|
217
|
-
plantronicsService.isConnecting = true;
|
|
218
|
-
const getDeviceStatusSpy = jest.spyOn(plantronicsService, 'getDeviceStatus');
|
|
219
|
-
const pollForDeviceStatusSpy = jest.spyOn(plantronicsService, 'pollForDeviceStatus');
|
|
220
|
-
jest.useFakeTimers();
|
|
221
|
-
plantronicsService.pollForDeviceStatus();
|
|
222
|
-
expect(getDeviceStatusSpy).not.toHaveBeenCalled();
|
|
223
|
-
jest.advanceTimersByTime(plantronicsService.disconnectedDeviceInterval);
|
|
224
|
-
expect(pollForDeviceStatusSpy).toHaveBeenCalled();
|
|
225
|
-
});
|
|
226
|
-
it('will call getDeviceStatusSpy if proper flags are met', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
227
|
-
plantronicsService.isConnected = true;
|
|
228
|
-
plantronicsService.isConnecting = false;
|
|
229
|
-
const getDeviceStatusSpy = jest.spyOn(plantronicsService, 'getDeviceStatus');
|
|
230
|
-
const pollForDeviceStatusSpy = jest.spyOn(plantronicsService, 'pollForDeviceStatus');
|
|
231
|
-
jest.useFakeTimers();
|
|
232
|
-
plantronicsService.pollForDeviceStatus();
|
|
233
|
-
expect(getDeviceStatusSpy).toHaveBeenCalled();
|
|
234
|
-
jest.advanceTimersByTime(plantronicsService.disconnectedDeviceInterval);
|
|
235
|
-
expect(pollForDeviceStatusSpy).toHaveBeenCalled();
|
|
236
|
-
}));
|
|
237
|
-
});
|
|
238
|
-
describe('callCorrespondingFunction', () => {
|
|
239
|
-
it('will call deviceAnsweredCall', () => {
|
|
240
|
-
const deviceAnsweredCallSpy = jest.spyOn(plantronicsService, 'deviceAnsweredCall');
|
|
241
|
-
plantronicsService.callCorrespondingFunction({
|
|
242
|
-
name: 'AcceptCall',
|
|
243
|
-
code: '1',
|
|
244
|
-
event: {}
|
|
245
|
-
});
|
|
246
|
-
expect(deviceAnsweredCallSpy).toHaveBeenCalled();
|
|
247
|
-
});
|
|
248
|
-
it('will call deviceRejectedCall', () => {
|
|
249
|
-
plantronicsService.incomingConversationId = 'convoId1234';
|
|
250
|
-
const deviceRejectedCallSpy = jest.spyOn(plantronicsService, 'deviceRejectedCall');
|
|
251
|
-
plantronicsService.callCorrespondingFunction({
|
|
252
|
-
name: 'RejectCall',
|
|
253
|
-
code: '23',
|
|
254
|
-
event: {}
|
|
255
|
-
});
|
|
256
|
-
expect(deviceRejectedCallSpy).toHaveBeenCalledWith('convoId1234');
|
|
257
|
-
});
|
|
258
|
-
it('will call deviceEndedCall', () => {
|
|
259
|
-
const deviceEndedCallSpy = jest.spyOn(plantronicsService, 'deviceEndedCall');
|
|
260
|
-
plantronicsService.callCorrespondingFunction({
|
|
261
|
-
name: 'TerminateCall'
|
|
262
|
-
});
|
|
263
|
-
expect(deviceEndedCallSpy).toHaveBeenCalled();
|
|
264
|
-
});
|
|
265
|
-
it('will call _checkIsActiveTask', () => {
|
|
266
|
-
const _checkIsActiveTaskSpy = jest.spyOn(plantronicsService, '_checkIsActiveTask');
|
|
267
|
-
plantronicsService.callCorrespondingFunction({
|
|
268
|
-
name: 'CallEnded'
|
|
269
|
-
});
|
|
270
|
-
expect(_checkIsActiveTaskSpy).toHaveBeenCalled();
|
|
271
|
-
});
|
|
272
|
-
it('will call deviceMuteChanged with the proper flag', () => {
|
|
273
|
-
const deviceMuteChangedSpy = jest.spyOn(plantronicsService, 'deviceMuteChanged');
|
|
274
|
-
plantronicsService.callCorrespondingFunction({
|
|
275
|
-
name: 'Mute'
|
|
276
|
-
});
|
|
277
|
-
expect(deviceMuteChangedSpy).toHaveBeenCalledWith(true, { name: 'Mute' });
|
|
278
|
-
plantronicsService.callCorrespondingFunction({
|
|
279
|
-
name: 'Unmute'
|
|
280
|
-
});
|
|
281
|
-
expect(deviceMuteChangedSpy).toHaveBeenCalledWith(false, { name: 'Unmute' });
|
|
282
|
-
});
|
|
283
|
-
it('will call deviceHoldStatusChanged with the proper flag', () => {
|
|
284
|
-
const deviceHoldStatusChangedSpy = jest.spyOn(plantronicsService, 'deviceHoldStatusChanged');
|
|
285
|
-
plantronicsService.callCorrespondingFunction({
|
|
286
|
-
name: 'HoldCall'
|
|
287
|
-
});
|
|
288
|
-
expect(deviceHoldStatusChangedSpy).toHaveBeenCalledWith(true, { name: 'HoldCall' });
|
|
289
|
-
plantronicsService.callCorrespondingFunction({
|
|
290
|
-
name: 'ResumeCall'
|
|
291
|
-
});
|
|
292
|
-
expect(deviceHoldStatusChangedSpy).toHaveBeenCalledWith(false, { name: 'ResumeCall' });
|
|
293
|
-
});
|
|
294
|
-
it('calls deviceEventLogs when no valid event was passed in', () => {
|
|
295
|
-
const deviceEventLogsSpy = jest.spyOn(plantronicsService, 'deviceEventLogs');
|
|
296
|
-
plantronicsService.callCorrespondingFunction({
|
|
297
|
-
name: 'Test'
|
|
298
|
-
});
|
|
299
|
-
expect(deviceEventLogsSpy).toHaveBeenCalled();
|
|
300
|
-
});
|
|
301
|
-
});
|
|
302
|
-
describe('check various endpoint calls', () => {
|
|
303
|
-
Object.defineProperty(window.navigator, 'hid', { get: () => ({
|
|
304
|
-
getDevices: () => { return []; }
|
|
305
|
-
}) });
|
|
306
|
-
Object.defineProperty(window.navigator, 'locks', { get: () => ({}) });
|
|
307
|
-
window.BroadcastChannel = broadcast_channel_1.BroadcastChannel;
|
|
308
|
-
it('connects properly with a clean state', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
309
|
-
yield sendScenario({
|
|
310
|
-
'/SessionManager/Register*': {
|
|
311
|
-
responses: [plantronics_test_responses_1.default.SessionManager.Register.default]
|
|
312
|
-
},
|
|
313
|
-
'/SessionManager/IsActive*': {
|
|
314
|
-
responses: [plantronics_test_responses_1.default.SessionManager.IsActive.default]
|
|
315
|
-
},
|
|
316
|
-
'/UserPreference/SetDefaultSoftPhone*': {
|
|
317
|
-
responses: [plantronics_test_responses_1.default.UserPreference.SetDefaultSoftPhone.default]
|
|
318
|
-
},
|
|
319
|
-
'/DeviceServices/Info*': {
|
|
320
|
-
responses: [plantronics_test_responses_1.default.DeviceServices.Info.default]
|
|
321
|
-
},
|
|
322
|
-
'/CallServices/CallManagerState*': {
|
|
323
|
-
responses: [plantronics_test_responses_1.default.CallServices.CallManagerState.default]
|
|
324
|
-
}
|
|
325
|
-
});
|
|
326
|
-
yield plantronicsService.connect();
|
|
327
|
-
expect(plantronicsService.isConnected).toBeTruthy();
|
|
328
|
-
expect(plantronicsService.isActive).toBeFalsy();
|
|
329
|
-
expect(plantronicsService.isConnecting).toBeFalsy();
|
|
330
|
-
}), 30000);
|
|
331
|
-
it('builds an endpoint for incoming calls', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
332
|
-
const _makeRequestTaskSpy = jest.spyOn(plantronicsService, '_makeRequestTask');
|
|
333
|
-
yield sendScenario({
|
|
334
|
-
'/CallServices/IncomingCall*': {
|
|
335
|
-
responses: [plantronics_test_responses_1.default.CallServices.IncomingCall.default]
|
|
336
|
-
},
|
|
337
|
-
'/DeviceServices/Info*': {
|
|
338
|
-
repeatResponse: plantronics_test_responses_1.default.DeviceServices.Info.default
|
|
339
|
-
}
|
|
340
|
-
});
|
|
341
|
-
let callInfo = { conversationId: 'convoId123', contactName: 'Dio Brando' };
|
|
342
|
-
const conversationIdString = `"Id":"${callInfo.conversationId}"`;
|
|
343
|
-
const contactNameString = `"Name":"${callInfo.contactName}"`;
|
|
344
|
-
const endpointParams = `?name=${plantronicsService.pluginName}&tones=Unknown&route=ToHeadset`;
|
|
345
|
-
let completeEndpoint = endpointParams;
|
|
346
|
-
completeEndpoint += encodeURI(`&callID={${encodeURI(conversationIdString)}}`);
|
|
347
|
-
completeEndpoint += encodeURI(`&contact={${encodeURI(contactNameString)}}`);
|
|
348
|
-
yield plantronicsService.incomingCall(callInfo);
|
|
349
|
-
expect(plantronicsService.isActive).toBe(true);
|
|
350
|
-
expect(_makeRequestTaskSpy).toHaveBeenCalledWith(`/CallServices/IncomingCall${completeEndpoint}`);
|
|
351
|
-
resetService(plantronicsService);
|
|
352
|
-
completeEndpoint = endpointParams;
|
|
353
|
-
completeEndpoint += encodeURI(`&callID={${encodeURI(conversationIdString)}}`);
|
|
354
|
-
callInfo = { conversationId: 'convoId123' };
|
|
355
|
-
yield plantronicsService.incomingCall(callInfo);
|
|
356
|
-
expect(plantronicsService.isActive).toBe(true);
|
|
357
|
-
expect(_makeRequestTaskSpy).toHaveBeenCalledWith(`/CallServices/IncomingCall${completeEndpoint}`);
|
|
358
|
-
resetService(plantronicsService);
|
|
359
|
-
try {
|
|
360
|
-
callInfo = { contactName: 'Dio Brando' };
|
|
361
|
-
yield plantronicsService.incomingCall(callInfo);
|
|
362
|
-
}
|
|
363
|
-
catch (err) {
|
|
364
|
-
expect(plantronicsService.isActive).toBe(false);
|
|
365
|
-
expect(err).toBeDefined();
|
|
366
|
-
}
|
|
367
|
-
}));
|
|
368
|
-
it('builds an endpoint for outgoing calls', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
369
|
-
const _makeRequestTaskSpy = jest.spyOn(plantronicsService, '_makeRequestTask');
|
|
370
|
-
yield sendScenario({
|
|
371
|
-
'/CallServices/OutgoingCall*': {
|
|
372
|
-
responses: [plantronics_test_responses_1.default.CallServices.OutgoingCall.default]
|
|
373
|
-
},
|
|
374
|
-
'/DeviceServices/Info*': {
|
|
375
|
-
repeatResponse: plantronics_test_responses_1.default.DeviceServices.Info.default
|
|
376
|
-
}
|
|
377
|
-
});
|
|
378
|
-
let callInfo = { conversationId: 'convoId123', contactName: 'Dio Brando' };
|
|
379
|
-
const conversationIdString = `"Id":"${callInfo.conversationId}"`;
|
|
380
|
-
const contactNameString = `"Name":"${callInfo.contactName}"`;
|
|
381
|
-
const endpointParams = `?name=${plantronicsService.pluginName}&tones=Unknown&route=ToHeadset`;
|
|
382
|
-
let completeEndpoint = endpointParams;
|
|
383
|
-
completeEndpoint += encodeURI(`&callID={${encodeURI(conversationIdString)}}`);
|
|
384
|
-
completeEndpoint += encodeURI(`&contact={${encodeURI(contactNameString)}}`);
|
|
385
|
-
yield plantronicsService.outgoingCall(Object.assign({}, callInfo));
|
|
386
|
-
expect(plantronicsService.isActive).toBe(true);
|
|
387
|
-
expect(_makeRequestTaskSpy).toHaveBeenCalledWith(`/CallServices/OutgoingCall${completeEndpoint}`);
|
|
388
|
-
resetService(plantronicsService);
|
|
389
|
-
completeEndpoint = endpointParams;
|
|
390
|
-
completeEndpoint += encodeURI(`&callID={${encodeURI(conversationIdString)}}`);
|
|
391
|
-
callInfo = { conversationId: 'convoId123' };
|
|
392
|
-
yield plantronicsService.outgoingCall(Object.assign({}, callInfo));
|
|
393
|
-
expect(plantronicsService.isActive).toBe(true);
|
|
394
|
-
expect(_makeRequestTaskSpy).toHaveBeenCalledWith(`/CallServices/OutgoingCall${completeEndpoint}`);
|
|
395
|
-
resetService(plantronicsService);
|
|
396
|
-
try {
|
|
397
|
-
callInfo = { contactName: 'Dio Brando' };
|
|
398
|
-
yield plantronicsService.outgoingCall(Object.assign({}, callInfo));
|
|
399
|
-
}
|
|
400
|
-
catch (err) {
|
|
401
|
-
expect(plantronicsService.isActive).toBe(false);
|
|
402
|
-
expect(err).toBeDefined();
|
|
403
|
-
}
|
|
404
|
-
}));
|
|
405
|
-
it('builds an endpoint for answering a call', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
406
|
-
const _makeRequestTaskSpy = jest.spyOn(plantronicsService, '_makeRequestTask');
|
|
407
|
-
yield sendScenario({
|
|
408
|
-
'/CallServices/AnswerCall*': {
|
|
409
|
-
responses: [plantronics_test_responses_1.default.CallServices.AnswerCall.default]
|
|
410
|
-
},
|
|
411
|
-
'/DeviceServices/Info*': {
|
|
412
|
-
repeatResponse: plantronics_test_responses_1.default.DeviceServices.Info.default
|
|
413
|
-
}
|
|
414
|
-
});
|
|
415
|
-
const conversationIdString = encodeURI(`"Id":"convoId123"`);
|
|
416
|
-
let completeEndpoint = `?name=${plantronicsService.pluginName}`;
|
|
417
|
-
completeEndpoint += encodeURI(`&callID={${conversationIdString}}`);
|
|
418
|
-
yield plantronicsService.answerCall('convoId123');
|
|
419
|
-
expect(plantronicsService.isActive).toBe(true);
|
|
420
|
-
expect(_makeRequestTaskSpy).toHaveBeenCalledWith(`/CallServices/AnswerCall${completeEndpoint}`);
|
|
421
|
-
}));
|
|
422
|
-
it('builds an endpoint for terminating a call', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
423
|
-
const _makeRequestTaskSpy = jest.spyOn(plantronicsService, '_makeRequestTask');
|
|
424
|
-
const getCallEventsSpy = jest.spyOn(plantronicsService, 'getCallEvents');
|
|
425
|
-
const _checkIsActiveTaskSpy = jest.spyOn(plantronicsService, '_checkIsActiveTask');
|
|
426
|
-
yield sendScenario({
|
|
427
|
-
'/CallServices/TerminateCall*': {
|
|
428
|
-
responses: [plantronics_test_responses_1.default.CallServices.TerminateCall.default]
|
|
429
|
-
},
|
|
430
|
-
'/DeviceServices/Info*': {
|
|
431
|
-
repeatResponse: plantronics_test_responses_1.default.DeviceServices.Info.default
|
|
432
|
-
}
|
|
433
|
-
});
|
|
434
|
-
const conversationIdString = encodeURI(`"Id":"convoId123"`);
|
|
435
|
-
let completeEndpoint = `?name=${plantronicsService.pluginName}`;
|
|
436
|
-
completeEndpoint += encodeURI(`&callID={${conversationIdString}}`);
|
|
437
|
-
yield plantronicsService.endCall('convoId123');
|
|
438
|
-
expect(_makeRequestTaskSpy).toHaveBeenCalledWith(`/CallServices/TerminateCall${completeEndpoint}`);
|
|
439
|
-
expect(getCallEventsSpy).toHaveBeenCalled();
|
|
440
|
-
expect(_checkIsActiveTaskSpy).toHaveBeenCalled();
|
|
441
|
-
}));
|
|
442
|
-
it('calls endCall an appropriate number of times for endAllCalls', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
443
|
-
const endCallSpy = jest.spyOn(plantronicsService, 'endCall');
|
|
444
|
-
yield sendScenario({
|
|
445
|
-
'/CallServices/CallManagerState*': {
|
|
446
|
-
responses: [plantronics_test_responses_1.default.CallServices.CallManagerState.callsInProgress]
|
|
447
|
-
}
|
|
448
|
-
});
|
|
449
|
-
yield plantronicsService.endAllCalls();
|
|
450
|
-
expect(endCallSpy).toHaveBeenCalledTimes(2);
|
|
451
|
-
}));
|
|
452
|
-
it('properly calls endCall in the case of call rejection', () => {
|
|
453
|
-
plantronicsService.incomingConversationId = 'convoId1234';
|
|
454
|
-
const plantronicsEndCallSpy = jest.spyOn(plantronicsService, 'endCall');
|
|
455
|
-
plantronicsService.rejectCall('convoId1234');
|
|
456
|
-
expect(plantronicsService.incomingConversationId).toBe('');
|
|
457
|
-
expect(plantronicsEndCallSpy).toHaveBeenCalledWith('convoId1234');
|
|
458
|
-
});
|
|
459
|
-
it('calls _makeRequestTask wth proper endpoint for mute', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
460
|
-
const _makeRequestTaskSpy = jest.spyOn(plantronicsService, '_makeRequestTask');
|
|
461
|
-
yield sendScenario({
|
|
462
|
-
'/CallServices/MuteCall*': {
|
|
463
|
-
responses: [plantronics_test_responses_1.default.CallServices.MuteCall.mute, plantronics_test_responses_1.default.CallServices.MuteCall.unmute]
|
|
464
|
-
}
|
|
465
|
-
});
|
|
466
|
-
yield plantronicsService.setMute(true);
|
|
467
|
-
expect(_makeRequestTaskSpy).toHaveBeenCalledWith(`/CallServices/MuteCall?name=${plantronicsService.pluginName}&muted=${true}`);
|
|
468
|
-
yield plantronicsService.setMute(false);
|
|
469
|
-
expect(_makeRequestTaskSpy).toHaveBeenCalledWith(`/CallServices/MuteCall?name=${plantronicsService.pluginName}&muted=${false}`);
|
|
470
|
-
}));
|
|
471
|
-
it('calls _makeRequestTask with proper endpoint for hold', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
472
|
-
const _makeRequestTaskSpy = jest.spyOn(plantronicsService, '_makeRequestTask');
|
|
473
|
-
yield sendScenario({
|
|
474
|
-
'/CallServices/HoldCall*': {
|
|
475
|
-
responses: [plantronics_test_responses_1.default.CallServices.HoldCall.default]
|
|
476
|
-
},
|
|
477
|
-
'/CallServices/ResumeCall*': {
|
|
478
|
-
responses: [plantronics_test_responses_1.default.CallServices.ResumeCall.default]
|
|
479
|
-
}
|
|
480
|
-
});
|
|
481
|
-
const conversationIdString = encodeURI(`"Id":"convoId123"`);
|
|
482
|
-
let completeEndpoint = `?name=${plantronicsService.pluginName}`;
|
|
483
|
-
completeEndpoint += encodeURI(`&callID={${conversationIdString}}`);
|
|
484
|
-
yield plantronicsService.setHold('convoId123', true);
|
|
485
|
-
expect(_makeRequestTaskSpy).toHaveBeenCalledWith(`/CallServices/HoldCall${completeEndpoint}`);
|
|
486
|
-
yield plantronicsService.setHold('convoId123', false);
|
|
487
|
-
expect(_makeRequestTaskSpy).toHaveBeenCalledWith(`/CallServices/ResumeCall${completeEndpoint}`);
|
|
488
|
-
}));
|
|
489
|
-
it('checkIsActiveTask', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
490
|
-
yield sendScenario({
|
|
491
|
-
'/CallServices/CallManagerState*': {
|
|
492
|
-
responses: [plantronics_test_responses_1.default.CallServices.CallManagerState.callsInProgress]
|
|
493
|
-
}
|
|
494
|
-
});
|
|
495
|
-
yield plantronicsService._checkIsActiveTask();
|
|
496
|
-
expect(plantronicsService.isActive).toBe(true);
|
|
497
|
-
}));
|
|
498
|
-
it('catches the error during _getActiveCalls', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
499
|
-
yield sendScenario({
|
|
500
|
-
'/CallServices/CallManagerState*': {
|
|
501
|
-
responses: [plantronics_test_responses_1.default.CallServices.CallManagerState.errorState]
|
|
502
|
-
}
|
|
503
|
-
});
|
|
504
|
-
plantronicsService.logger.info = jest.fn();
|
|
505
|
-
const result = yield plantronicsService._getActiveCalls();
|
|
506
|
-
expect(plantronicsService.logger.info).toHaveBeenCalledWith('Error making request for active calls', plantronics_test_responses_1.default.CallServices.CallManagerState.errorState);
|
|
507
|
-
expect(result).toStrictEqual([]);
|
|
508
|
-
}));
|
|
509
|
-
it('catches the error during getDeviceStatus', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
510
|
-
yield sendScenario({
|
|
511
|
-
'/DeviceServices/Info*': {
|
|
512
|
-
responses: [plantronics_test_responses_1.default.DeviceServices.Info.errorState]
|
|
513
|
-
}
|
|
514
|
-
});
|
|
515
|
-
plantronicsService.logger.info = jest.fn();
|
|
516
|
-
yield plantronicsService.getDeviceStatus();
|
|
517
|
-
expect(plantronicsService.logger.info).toHaveBeenCalledWith('Error making request for device status', plantronics_test_responses_1.default.DeviceServices.Info.errorState);
|
|
518
|
-
}));
|
|
519
|
-
it('handles scenarios for getCallEvents function', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
520
|
-
yield sendScenario({
|
|
521
|
-
'/CallServices/IncomingCall*': {
|
|
522
|
-
responses: [plantronics_test_responses_1.default.CallServices.IncomingCall.default]
|
|
523
|
-
},
|
|
524
|
-
'/DeviceServices/Info*': {
|
|
525
|
-
repeatResponse: plantronics_test_responses_1.default.DeviceServices.Info.default
|
|
526
|
-
}
|
|
527
|
-
});
|
|
528
|
-
plantronicsService.isActive = true;
|
|
529
|
-
plantronicsService.isConnected = true;
|
|
530
|
-
yield queueCallEvents([plantronics_call_events_1.PlantronicsCallEvents.AcceptCall, plantronics_call_events_1.PlantronicsCallEvents.CallInProgress]);
|
|
531
|
-
}));
|
|
532
|
-
});
|
|
533
|
-
describe('getCallEvents', () => {
|
|
534
|
-
it('should answer from headset', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
535
|
-
yield sendScenario({
|
|
536
|
-
'/CallServices/IncomingCall*': {
|
|
537
|
-
responses: [plantronics_test_responses_1.default.CallServices.IncomingCall.default]
|
|
538
|
-
},
|
|
539
|
-
'/DeviceServices/Info*': {
|
|
540
|
-
repeatResponse: plantronics_test_responses_1.default.DeviceServices.Info.default
|
|
541
|
-
}
|
|
542
|
-
});
|
|
543
|
-
plantronicsService.isActive = true;
|
|
544
|
-
plantronicsService.isConnected = true;
|
|
545
|
-
const deviceAnswered = test_utils_test_1.eventValidation(plantronicsService, 'deviceAnsweredCall');
|
|
546
|
-
yield queueCallEvents([plantronics_call_events_1.PlantronicsCallEvents.AcceptCall, plantronics_call_events_1.PlantronicsCallEvents.CallInProgress]);
|
|
547
|
-
yield deviceAnswered;
|
|
548
|
-
}));
|
|
549
|
-
it('should mute and unmute from headset', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
550
|
-
yield sendScenario({
|
|
551
|
-
'/CallServices/IncomingCall*': {
|
|
552
|
-
responses: [plantronics_test_responses_1.default.CallServices.IncomingCall.default]
|
|
553
|
-
},
|
|
554
|
-
'/DeviceServices/Info*': {
|
|
555
|
-
repeatResponse: plantronics_test_responses_1.default.DeviceServices.Info.default
|
|
556
|
-
}
|
|
557
|
-
});
|
|
558
|
-
plantronicsService.isActive = true;
|
|
559
|
-
plantronicsService.isConnected = true;
|
|
560
|
-
const deviceMuted = test_utils_test_1.eventValidation(plantronicsService, 'deviceMuteChanged');
|
|
561
|
-
yield queueCallEvents([plantronics_call_events_1.PlantronicsCallEvents.Mute]);
|
|
562
|
-
yield deviceMuted;
|
|
563
|
-
const deviceUnmuted = test_utils_test_1.eventValidation(plantronicsService, 'deviceMuteChanged');
|
|
564
|
-
yield queueCallEvents([plantronics_call_events_1.PlantronicsCallEvents.Unmute]);
|
|
565
|
-
yield deviceUnmuted;
|
|
566
|
-
}));
|
|
567
|
-
it('should hold and resume from the headset', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
568
|
-
yield sendScenario({
|
|
569
|
-
'/CallServices/IncomingCall*': {
|
|
570
|
-
responses: [plantronics_test_responses_1.default.CallServices.IncomingCall.default]
|
|
571
|
-
},
|
|
572
|
-
'/DeviceServices/Info*': {
|
|
573
|
-
repeatResponse: plantronics_test_responses_1.default.DeviceServices.Info.default
|
|
574
|
-
}
|
|
575
|
-
});
|
|
576
|
-
plantronicsService.isActive = true;
|
|
577
|
-
plantronicsService.isConnected = true;
|
|
578
|
-
const deviceHeld = test_utils_test_1.eventValidation(plantronicsService, 'deviceHoldStatusChanged');
|
|
579
|
-
yield queueCallEvents([plantronics_call_events_1.PlantronicsCallEvents.HoldCall]);
|
|
580
|
-
yield deviceHeld;
|
|
581
|
-
const deviceResumed = test_utils_test_1.eventValidation(plantronicsService, 'deviceHoldStatusChanged');
|
|
582
|
-
yield queueCallEvents([plantronics_call_events_1.PlantronicsCallEvents.ResumeCall]);
|
|
583
|
-
yield deviceResumed;
|
|
584
|
-
}));
|
|
585
|
-
it('should terminate the call from the headset', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
586
|
-
yield sendScenario({
|
|
587
|
-
'/CallServices/IncomingCall*': {
|
|
588
|
-
responses: [plantronics_test_responses_1.default.CallServices.IncomingCall.default]
|
|
589
|
-
},
|
|
590
|
-
'/DeviceServices/Info*': {
|
|
591
|
-
repeatResponse: plantronics_test_responses_1.default.DeviceServices.Info.default
|
|
592
|
-
}
|
|
593
|
-
});
|
|
594
|
-
plantronicsService.isActive = true;
|
|
595
|
-
plantronicsService.isConnected = true;
|
|
596
|
-
const deviceTerminated = test_utils_test_1.eventValidation(plantronicsService, 'deviceEndedCall');
|
|
597
|
-
yield queueCallEvents([plantronics_call_events_1.PlantronicsCallEvents.TerminateCall]);
|
|
598
|
-
yield deviceTerminated;
|
|
599
|
-
}));
|
|
600
|
-
it('should log an error if something goes wrong during _makeRequestTask', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
601
|
-
plantronicsService.isConnected = true;
|
|
602
|
-
plantronicsService.isActive = true;
|
|
603
|
-
plantronics_1.default['instance'] = null;
|
|
604
|
-
const loggerInfoSpy = jest.spyOn(plantronicsService.logger, 'info');
|
|
605
|
-
try {
|
|
606
|
-
plantronicsService.getCallEvents();
|
|
607
|
-
}
|
|
608
|
-
catch (err) {
|
|
609
|
-
expect(loggerInfoSpy).toHaveBeenCalledWith('Error making request for all events', err);
|
|
610
|
-
}
|
|
611
|
-
}));
|
|
612
|
-
it('should log a message if an unexpected event is received', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
613
|
-
plantronicsService.isActive = true;
|
|
614
|
-
plantronicsService.isConnected = true;
|
|
615
|
-
const loggerInfoSpy = jest.spyOn(plantronicsService.logger, 'info');
|
|
616
|
-
jest.spyOn(plantronicsService, '_makeRequestTask').mockResolvedValueOnce(plantronics_test_responses_1.default.CallServices.CallManagerState.unknownEvent);
|
|
617
|
-
yield plantronicsService.getCallEvents();
|
|
618
|
-
expect(loggerInfoSpy).toHaveBeenCalledWith('Unknown call event from headset', { event: plantronics_test_responses_1.default.CallServices.CallManagerState.unknownEvent.Result[0] });
|
|
619
|
-
}));
|
|
620
|
-
});
|
|
621
|
-
describe('connect function', () => {
|
|
622
|
-
it('handles all scenarios appropriately for Register endpoint', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
623
|
-
yield sendScenario({
|
|
624
|
-
'/SessionManager/Register*': {
|
|
625
|
-
responses: [plantronics_test_responses_1.default.SessionManager.Register.errorState]
|
|
626
|
-
}
|
|
627
|
-
});
|
|
628
|
-
return expect(plantronicsService.connect()).rejects.toEqual(plantronics_test_responses_1.default.SessionManager.Register.errorState);
|
|
629
|
-
}));
|
|
630
|
-
it('handles all scenarios appropriately for isActive endpoint', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
631
|
-
plantronicsService.logger.debug = jest.fn();
|
|
632
|
-
yield sendScenario({
|
|
633
|
-
'/SessionManager/Register*': {
|
|
634
|
-
responses: [plantronics_test_responses_1.default.SessionManager.Register.default]
|
|
635
|
-
},
|
|
636
|
-
'/SessionManager/IsActive*': {
|
|
637
|
-
responses: [plantronics_test_responses_1.default.SessionManager.IsActive.errorState]
|
|
638
|
-
}
|
|
639
|
-
});
|
|
640
|
-
try {
|
|
641
|
-
yield plantronicsService.connect();
|
|
642
|
-
}
|
|
643
|
-
catch (err) {
|
|
644
|
-
expect(plantronicsService.logger.debug).toHaveBeenCalledWith('Is Active', plantronics_test_responses_1.default.SessionManager.IsActive.errorState);
|
|
645
|
-
}
|
|
646
|
-
}));
|
|
647
|
-
it('handles all scenarios appropriately for getActiveCalls endpoint', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
648
|
-
plantronicsService.logger.info = jest.fn();
|
|
649
|
-
yield sendScenario({
|
|
650
|
-
'/SessionManager/Register*': {
|
|
651
|
-
responses: [plantronics_test_responses_1.default.SessionManager.Register.default]
|
|
652
|
-
},
|
|
653
|
-
'/SessionManager/IsActive*': {
|
|
654
|
-
responses: [plantronics_test_responses_1.default.SessionManager.IsActive.default]
|
|
655
|
-
},
|
|
656
|
-
'/UserPreference/SetDefaultSoftPhone*': {
|
|
657
|
-
responses: [plantronics_test_responses_1.default.UserPreference.SetDefaultSoftPhone.default]
|
|
658
|
-
},
|
|
659
|
-
'/DeviceServices/Info*': {
|
|
660
|
-
responses: [plantronics_test_responses_1.default.DeviceServices.Info.default]
|
|
661
|
-
},
|
|
662
|
-
'/CallServices/CallManagerState*': {
|
|
663
|
-
responses: [plantronics_test_responses_1.default.CallServices.CallManagerState.callsInProgress]
|
|
664
|
-
}
|
|
665
|
-
});
|
|
666
|
-
yield plantronicsService.connect();
|
|
667
|
-
expect(plantronicsService.isActive).toBe(true);
|
|
668
|
-
expect(plantronicsService.logger.info).toHaveBeenCalledWith('Currently active calls in the session');
|
|
669
|
-
}));
|
|
670
|
-
it('logs an error message if we are unable to connect the headset', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
671
|
-
const errorLoggerSpy = jest.spyOn(plantronicsService.logger, 'error');
|
|
672
|
-
const testIsActiveEvent = {
|
|
673
|
-
Description: 'Is Active',
|
|
674
|
-
Result: true,
|
|
675
|
-
Type: 2,
|
|
676
|
-
Type_Name: 'Bool',
|
|
677
|
-
isError: false
|
|
678
|
-
};
|
|
679
|
-
jest.spyOn(plantronicsService, '_makeRequestTask')
|
|
680
|
-
.mockResolvedValueOnce(plantronics_test_responses_1.default.SessionManager.Register.default)
|
|
681
|
-
.mockResolvedValueOnce(testIsActiveEvent)
|
|
682
|
-
.mockRejectedValueOnce({ handled: true });
|
|
683
|
-
yield plantronicsService.connect();
|
|
684
|
-
expect(errorLoggerSpy).toHaveBeenCalledWith('Unable to properly connect headset');
|
|
685
|
-
}));
|
|
686
|
-
it('returns empty array if makeRequestTask resolves to undefined', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
687
|
-
jest.spyOn(plantronicsService, '_makeRequestTask').mockResolvedValueOnce(undefined);
|
|
688
|
-
const getActiveCallsResult = yield plantronicsService._getActiveCalls();
|
|
689
|
-
expect(getActiveCallsResult).toStrictEqual([]);
|
|
690
|
-
}));
|
|
691
|
-
});
|
|
692
|
-
describe('_makeRequest function', () => {
|
|
693
|
-
beforeEach(() => {
|
|
694
|
-
Object.defineProperty(browserama_1.default, 'isFirefox', { get: () => true });
|
|
695
|
-
});
|
|
696
|
-
it('handles error from endpoint with 404 status and isRetry', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
697
|
-
plantronicsService.isConnected = true;
|
|
698
|
-
plantronicsService.isActive = true;
|
|
699
|
-
const disconnectSpy = jest.spyOn(plantronicsService, 'disconnect');
|
|
700
|
-
plantronicsService.logger.info = jest.fn();
|
|
701
|
-
const isActiveResponseWithStatus = Object.assign(Object.assign({}, plantronics_test_responses_1.default.SessionManager.IsActive.default), { status: 404, 'Type_Name': 'Error' });
|
|
702
|
-
yield sendScenario({
|
|
703
|
-
'/SessionManager/IsActive*': {
|
|
704
|
-
responses: [isActiveResponseWithStatus]
|
|
705
|
-
}
|
|
706
|
-
});
|
|
707
|
-
try {
|
|
708
|
-
yield plantronicsService._makeRequest(`/SessionManager/IsActive?name=${plantronicsService.pluginName}&active=true`, true);
|
|
709
|
-
}
|
|
710
|
-
catch (err) {
|
|
711
|
-
expect(plantronicsService.isConnected).toBe(false);
|
|
712
|
-
expect(disconnectSpy).toHaveBeenCalled();
|
|
713
|
-
expect(plantronicsService.logger.info).toHaveBeenCalledWith(err);
|
|
714
|
-
}
|
|
715
|
-
}));
|
|
716
|
-
it('handles error from endpoint with 404 status and !isRetry', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
717
|
-
plantronicsService.isConnected = true;
|
|
718
|
-
plantronicsService.isActive = true;
|
|
719
|
-
const _makeRequestTaskSpy = jest.spyOn(plantronicsService, '_makeRequestTask');
|
|
720
|
-
const isActiveResponseWithStatus = Object.assign(Object.assign({}, plantronics_test_responses_1.default.SessionManager.IsActive.default), { status: 404, 'Type_Name': 'Error' });
|
|
721
|
-
yield sendScenario({
|
|
722
|
-
'/SessionManager/IsActive*': {
|
|
723
|
-
responses: [isActiveResponseWithStatus]
|
|
724
|
-
}
|
|
725
|
-
});
|
|
726
|
-
try {
|
|
727
|
-
yield plantronicsService._makeRequestTask(`/SessionManager/IsActive?name=${plantronicsService.pluginName}&active=true`);
|
|
728
|
-
}
|
|
729
|
-
catch (err) {
|
|
730
|
-
expect(_makeRequestTaskSpy).toHaveBeenCalledWith(`/SessionManager/IsActive?name=${plantronicsService.pluginName}&active=true`, true);
|
|
731
|
-
}
|
|
732
|
-
}));
|
|
733
|
-
it('handles browersama.isFirefox true error case', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
734
|
-
plantronicsService.isConnected = true;
|
|
735
|
-
plantronicsService.isActive = true;
|
|
736
|
-
const isActiveResponseWithStatus = Object.assign(Object.assign({}, plantronics_test_responses_1.default.SessionManager.IsActive.default), { status: 418, 'Type_Name': 'Error' });
|
|
737
|
-
yield sendScenario({
|
|
738
|
-
'/SessionManager/IsActive*': {
|
|
739
|
-
responses: [isActiveResponseWithStatus]
|
|
740
|
-
}
|
|
741
|
-
});
|
|
742
|
-
try {
|
|
743
|
-
yield plantronicsService._makeRequest(`/SessionManager/IsActive?name=${plantronicsService.pluginName}&active=true`, false);
|
|
744
|
-
}
|
|
745
|
-
catch (err) {
|
|
746
|
-
expect(plantronicsService.errorCode).toBe('browser');
|
|
747
|
-
expect(plantronicsService.disableRetry).toBe(true);
|
|
748
|
-
}
|
|
749
|
-
}));
|
|
750
|
-
it('handles successful return but no plantronics instance', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
751
|
-
plantronicsService.isConnected = true;
|
|
752
|
-
plantronicsService.isActive = true;
|
|
753
|
-
plantronics_1.default['instance'] = null;
|
|
754
|
-
yield sendScenario({
|
|
755
|
-
'/SessionManager/IsActive*': {
|
|
756
|
-
responses: [plantronics_test_responses_1.default.SessionManager.IsActive.default]
|
|
757
|
-
}
|
|
758
|
-
});
|
|
759
|
-
const noInstanceError = new Error('Application destroyed.');
|
|
760
|
-
try {
|
|
761
|
-
yield plantronicsService._makeRequest(`/SessionManager/IsActive?name=${plantronicsService.pluginName}&active=true`, false);
|
|
762
|
-
}
|
|
763
|
-
catch (err) {
|
|
764
|
-
expect(err).toStrictEqual(noInstanceError);
|
|
765
|
-
}
|
|
766
|
-
}));
|
|
767
|
-
});
|
|
768
|
-
describe('disconnect function', () => {
|
|
769
|
-
it('calls makeRequestTask if the implementation is connected', () => {
|
|
770
|
-
plantronicsService.isConnected = true;
|
|
771
|
-
const _makeRequestTaskSpy = jest.spyOn(plantronicsService, '_makeRequestTask');
|
|
772
|
-
plantronicsService.disconnect();
|
|
773
|
-
expect(_makeRequestTaskSpy).toHaveBeenCalledWith(`/SessionManager/UnRegister?name=${plantronicsService.pluginName}`);
|
|
774
|
-
});
|
|
775
|
-
it('sets the flags to the proper values after promise resolution', (done) => {
|
|
776
|
-
plantronicsService.isConnected = true;
|
|
777
|
-
const clearTimeoutsSpy = jest.spyOn(plantronicsService, 'clearTimeouts');
|
|
778
|
-
plantronicsService.disconnect().then(() => {
|
|
779
|
-
expect(plantronicsService.isConnected).toBe(false);
|
|
780
|
-
expect(plantronicsService._deviceInfo).toBeNull();
|
|
781
|
-
expect(clearTimeoutsSpy).toHaveBeenCalled();
|
|
782
|
-
expect(plantronicsService.isActive).toBe(false);
|
|
783
|
-
done();
|
|
784
|
-
});
|
|
785
|
-
});
|
|
786
|
-
});
|
|
787
|
-
describe('_fetch', () => {
|
|
788
|
-
it('should call the fetchJsonp function with the proper URL', () => {
|
|
789
|
-
plantronicsService._fetch = originalFetchFunction;
|
|
790
|
-
console.log(plantronicsService._fetch('/test'));
|
|
791
|
-
plantronicsService._fetch('/test');
|
|
792
|
-
expect(fetch_jsonp_1.default).toHaveBeenCalledWith('/test');
|
|
793
|
-
});
|
|
794
|
-
});
|
|
795
|
-
});
|
|
796
|
-
//# sourceMappingURL=plantronics.test.js.map
|