From 52422fb58a51e1e1ced750363aa9aca29e8ad032 Mon Sep 17 00:00:00 2001 From: Carlos Santos <4a.santos@gmail.com> Date: Thu, 10 Oct 2024 20:30:02 +0200 Subject: [PATCH] ov-components: Added unit tests --- openvidu-components-angular/package-lock.json | 562 +--------- openvidu-components-angular/package.json | 5 +- .../admin-dashboard.component.spec.ts | 25 - .../admin-login/admin-login.component.spec.ts | 25 - .../audio-wave/audio-wave.component.spec.ts | 25 - .../avatar-profile.component.spec.ts | 25 - .../captions/captions.component.spec.ts | 25 - .../layout/layout.component.spec.ts | 37 - .../media-element.component.spec.ts | 25 - .../activities-panel.component.spec.ts | 25 - .../broadcasting-activity.component.spec.ts | 23 - .../recording-activity.component.spec.ts | 25 - ...background-effects-panel.component.spec.ts | 25 - .../chat-panel/chat-panel.component.spec.ts | 27 - .../participant-panel-item.component.spec.ts | 25 - .../participants-panel.component.spec.ts | 25 - .../settings-panel.component.spec.ts | 25 - .../pre-join/pre-join.component.spec.ts | 25 - .../session/session.component.spec.ts | 63 +- .../audio-devices.component.spec.ts | 25 - .../captions/captions.component.spec.ts | 24 - .../lang-selector.component.spec.ts | 25 - .../participant-name-input.component.spec.ts | 25 - .../video-devices.component.spec.ts | 25 - .../stream/stream.component.spec.ts | 49 - .../toolbar/toolbar.component.spec.ts | 51 - .../videoconference.component.spec.ts | 25 - .../services/action/action.service.mock.ts | 4 +- .../services/action/action.service.spec.ts | 85 +- .../broadcasting/broadcasting.service.spec.ts | 16 - .../services/caption/caption.service.spec.ts | 16 - .../cdk-overlay/cdk-overlay.service.mock.ts | 14 - .../cdk-overlay/cdk-overlay.service.spec.ts | 29 - .../lib/services/chat/chat.service.spec.ts | 31 - .../services/device/device.service.spec.ts | 972 +++++++++--------- .../document/document.service.mock.ts | 22 - .../document/document.service.spec.ts | 16 - .../services/layout/layout.service.mock.ts | 36 - .../services/layout/layout.service.spec.ts | 16 - .../services/logger/logger.service.spec.ts | 22 - .../openvidu/openvidu.service.mock.ts | 102 -- .../openvidu/openvidu.service.spec.ts | 32 - .../lib/services/panel/panel.service.spec.ts | 16 - .../participant/participant.service.mock.ts | 94 -- .../participant/participant.service.spec.ts | 16 - .../platform/platform.service.spec.ts | 16 - .../recording/recording.service.spec.ts | 16 - .../services/storage/storage.service.mock.ts | 18 - .../services/storage/storage.service.spec.ts | 73 -- .../translate/translate.service.mock.ts | 44 + .../translate/translate.service.spec.ts | 16 - .../virtual-background.service.spec.ts | 16 - .../tsconfig.lib.json | 2 +- .../tsconfig.spec.json | 3 +- .../tsconfig.spec.json | 2 +- 55 files changed, 680 insertions(+), 2356 deletions(-) delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/admin/admin-dashboard/admin-dashboard.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/admin/admin-login/admin-login.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/audio-wave/audio-wave.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/avatar-profile/avatar-profile.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/captions/captions.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/layout/layout.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/media-element/media-element.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/activities-panel/activities-panel.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/activities-panel/broadcasting-activity/broadcasting-activity.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/activities-panel/recording-activity/recording-activity.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/background-effects-panel/background-effects-panel.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/chat-panel/chat-panel.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/participants-panel/participant-panel-item/participant-panel-item.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/participants-panel/participants-panel/participants-panel.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/settings-panel/settings-panel.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/pre-join/pre-join.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/audio-devices/audio-devices.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/captions/captions.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/lang-selector/lang-selector.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/participant-name-input/participant-name-input.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/video-devices/video-devices.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/stream/stream.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/toolbar/toolbar.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/videoconference/videoconference.component.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/broadcasting/broadcasting.service.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/caption/caption.service.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/cdk-overlay/cdk-overlay.service.mock.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/cdk-overlay/cdk-overlay.service.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/chat/chat.service.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/document/document.service.mock.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/document/document.service.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/layout/layout.service.mock.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/layout/layout.service.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/logger/logger.service.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/openvidu/openvidu.service.mock.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/openvidu/openvidu.service.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/panel/panel.service.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/participant/participant.service.mock.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/participant/participant.service.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/platform/platform.service.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/recording/recording.service.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/storage/storage.service.mock.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/storage/storage.service.spec.ts create mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/translate/translate.service.mock.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/translate/translate.service.spec.ts delete mode 100644 openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/virtual-background/virtual-background.service.spec.ts diff --git a/openvidu-components-angular/package-lock.json b/openvidu-components-angular/package-lock.json index 5564f774..78b90d55 100644 --- a/openvidu-components-angular/package-lock.json +++ b/openvidu-components-angular/package-lock.json @@ -31,14 +31,12 @@ "@angular/compiler-cli": "18.2.5", "@angular/elements": "18.2.5", "@compodoc/compodoc": "^1.1.25", - "@types/chai": "4.3.19", "@types/dom-mediacapture-transform": "0.1.9", "@types/dom-webcodecs": "0.1.11", - "@types/mocha": "9.1.1", + "@types/jasmine": "^5.1.4", "@types/node": "20.12.14", "@types/selenium-webdriver": "4.1.16", "@types/ws": "^8.5.12", - "chai": "4.3.10", "chromedriver": "129.0.0", "concat": "^1.0.3", "cross-env": "^7.0.3", @@ -58,7 +56,6 @@ "karma-mocha-reporter": "2.2.5", "karma-notify-reporter": "1.3.0", "lint-staged": "^15.2.10", - "mocha": "9.2.2", "ng-packagr": "18.2.1", "npm-watch": "^0.13.0", "prettier": "3.3.3", @@ -4842,12 +4839,6 @@ "@types/node": "*" } }, - "node_modules/@types/chai": { - "version": "4.3.19", - "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.19.tgz", - "integrity": "sha512-2hHHvQBVE2FiSK4eN0Br6snX9MtolHaTo/batnLjlGRhoQzlCL61iVpxoqO7SfFyOw+P/pwv+0zNHzKoGWz9Cw==", - "dev": true - }, "node_modules/@types/connect": { "version": "3.4.38", "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", @@ -4942,6 +4933,12 @@ "@types/node": "*" } }, + "node_modules/@types/jasmine": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-5.1.4.tgz", + "integrity": "sha512-px7OMFO/ncXxixDe1zR13V1iycqWae0MxTaw62RpFlksUi5QuNWgQJFkTQjIOvrmutJbI7Fp2Y2N1F6D2R4G6w==", + "dev": true + }, "node_modules/@types/json-schema": { "version": "7.0.15", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", @@ -4954,12 +4951,6 @@ "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", "dev": true }, - "node_modules/@types/mocha": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.1.1.tgz", - "integrity": "sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw==", - "dev": true - }, "node_modules/@types/mute-stream": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/@types/mute-stream/-/mute-stream-0.0.4.tgz", @@ -5084,12 +5075,6 @@ "@types/node": "*" } }, - "node_modules/@ungap/promise-all-settled": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@ungap/promise-all-settled/-/promise-all-settled-1.1.2.tgz", - "integrity": "sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==", - "dev": true - }, "node_modules/@vitejs/plugin-basic-ssl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-1.1.0.tgz", @@ -5587,15 +5572,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/assertion-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", - "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", - "dev": true, - "engines": { - "node": "*" - } - }, "node_modules/ast-types": { "version": "0.13.4", "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz", @@ -5983,12 +5959,6 @@ "base64-js": "^1.1.2" } }, - "node_modules/browser-stdout": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", - "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", - "dev": true - }, "node_modules/browserslist": { "version": "4.23.3", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz", @@ -6159,18 +6129,6 @@ "node": ">=6" } }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/caniuse-lite": { "version": "1.0.30001663", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001663.tgz", @@ -6191,24 +6149,6 @@ } ] }, - "node_modules/chai": { - "version": "4.3.10", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.10.tgz", - "integrity": "sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g==", - "dev": true, - "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.3", - "deep-eql": "^4.1.3", - "get-func-name": "^2.0.2", - "loupe": "^2.3.6", - "pathval": "^1.1.1", - "type-detect": "^4.0.8" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -6229,18 +6169,6 @@ "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", "dev": true }, - "node_modules/check-error": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", - "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", - "dev": true, - "dependencies": { - "get-func-name": "^2.0.2" - }, - "engines": { - "node": "*" - } - }, "node_modules/cheerio": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0.tgz", @@ -7285,30 +7213,6 @@ "callsite": "^1.0.0" } }, - "node_modules/decamelize": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", - "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/deep-eql": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.4.tgz", - "integrity": "sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==", - "dev": true, - "dependencies": { - "type-detect": "^4.0.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/deep-equal": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.2.tgz", @@ -7627,15 +7531,6 @@ "integrity": "sha512-uJaamHkagcZtHPqCIHZxnFrXlunQXgBOsZSUOWwFw31QJCAbyTBoHMW75YOTur5ZNx8pIeAKgf6GWIgaqqiLhA==", "dev": true }, - "node_modules/diff": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", - "dev": true, - "engines": { - "node": ">=0.3.1" - } - }, "node_modules/dns-packet": { "version": "5.6.1", "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz", @@ -8960,6 +8855,7 @@ "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, + "peer": true, "dependencies": { "locate-path": "^6.0.0", "path-exists": "^4.0.0" @@ -9208,15 +9104,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/get-func-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", - "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", - "dev": true, - "engines": { - "node": "*" - } - }, "node_modules/get-intrinsic": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", @@ -9408,15 +9295,6 @@ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", "dev": true }, - "node_modules/growl": { - "version": "1.10.5", - "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", - "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", - "dev": true, - "engines": { - "node": ">=4.x" - } - }, "node_modules/growly": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", @@ -11892,6 +11770,7 @@ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, + "peer": true, "dependencies": { "p-locate": "^5.0.0" }, @@ -12111,15 +11990,6 @@ "integrity": "sha512-WpG9CcFAOjz/FtNht+QJeGpvVl/cdR6P0z6OcXSkr8wFJOsV2GRj2j10JLfjuA4aYkcKCNIEqRGCyTife9R8/g==", "dev": true }, - "node_modules/loupe": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", - "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", - "dev": true, - "dependencies": { - "get-func-name": "^2.0.1" - } - }, "node_modules/lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", @@ -12579,350 +12449,6 @@ "mkdirp": "bin/cmd.js" } }, - "node_modules/mocha": { - "version": "9.2.2", - "resolved": "https://registry.npmjs.org/mocha/-/mocha-9.2.2.tgz", - "integrity": "sha512-L6XC3EdwT6YrIk0yXpavvLkn8h+EU+Y5UcCHKECyMbdUIxyMuZj4bX4U9e1nvnvUUvQVsV2VHQr5zLdcUkhW/g==", - "dev": true, - "dependencies": { - "@ungap/promise-all-settled": "1.1.2", - "ansi-colors": "4.1.1", - "browser-stdout": "1.3.1", - "chokidar": "3.5.3", - "debug": "4.3.3", - "diff": "5.0.0", - "escape-string-regexp": "4.0.0", - "find-up": "5.0.0", - "glob": "7.2.0", - "growl": "1.10.5", - "he": "1.2.0", - "js-yaml": "4.1.0", - "log-symbols": "4.1.0", - "minimatch": "4.2.1", - "ms": "2.1.3", - "nanoid": "3.3.1", - "serialize-javascript": "6.0.0", - "strip-json-comments": "3.1.1", - "supports-color": "8.1.1", - "which": "2.0.2", - "workerpool": "6.2.0", - "yargs": "16.2.0", - "yargs-parser": "20.2.4", - "yargs-unparser": "2.0.0" - }, - "bin": { - "_mocha": "bin/_mocha", - "mocha": "bin/mocha" - }, - "engines": { - "node": ">= 12.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/mochajs" - } - }, - "node_modules/mocha/node_modules/ansi-colors": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/mocha/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/mocha/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/mocha/node_modules/chalk/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/mocha/node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", - "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/mocha/node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", - "dev": true, - "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, - "node_modules/mocha/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/mocha/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/mocha/node_modules/debug": { - "version": "4.3.3", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", - "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", - "dev": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/mocha/node_modules/debug/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "node_modules/mocha/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "node_modules/mocha/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/mocha/node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", - "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", - "deprecated": "Glob versions prior to v9 are no longer supported", - "dev": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/mocha/node_modules/glob/node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/mocha/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/mocha/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/mocha/node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "is-unicode-supported": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/mocha/node_modules/minimatch": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-4.2.1.tgz", - "integrity": "sha512-9Uq1ChtSZO+Mxa/CL1eGizn2vRn3MlLgzhT0Iz8zaY8NdvxvB0d5QdPFmCKf7JKA9Lerx5vRrnwO03jsSfGG9g==", - "dev": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/mocha/node_modules/serialize-javascript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", - "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/mocha/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/mocha/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, - "node_modules/mocha/node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "node_modules/mocha/node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", - "dev": true, - "dependencies": { - "cliui": "^7.0.2", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/moment": { "version": "2.30.1", "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", @@ -13031,18 +12557,6 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/nanoid": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz", - "integrity": "sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==", - "dev": true, - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -13997,6 +13511,7 @@ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, + "peer": true, "dependencies": { "yocto-queue": "^0.1.0" }, @@ -14012,6 +13527,7 @@ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, + "peer": true, "dependencies": { "p-limit": "^3.0.2" }, @@ -14343,15 +13859,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/pathval": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", - "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", - "dev": true, - "engines": { - "node": "*" - } - }, "node_modules/pause-stream": { "version": "0.0.11", "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", @@ -16527,6 +16034,7 @@ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true, + "peer": true, "engines": { "node": ">=8" }, @@ -17187,15 +16695,6 @@ "node": ">= 0.8.0" } }, - "node_modules/type-detect": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.1.0.tgz", - "integrity": "sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/type-fest": { "version": "0.21.3", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", @@ -18862,12 +18361,6 @@ "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", "dev": true }, - "node_modules/workerpool": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.0.tgz", - "integrity": "sha512-Rsk5qQHJ9eowMH28Jwhe8HEbmdYDX4lwoMWshiCXugjtHqMD9ZbiqSDLxcsfdqsETPzVUtX5s1Z5kStiIM6l4A==", - "dev": true - }, "node_modules/wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -19115,38 +18608,14 @@ } }, "node_modules/yargs-parser": { - "version": "20.2.4", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", - "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "dev": true, "engines": { "node": ">=10" } }, - "node_modules/yargs-unparser": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", - "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", - "dev": true, - "dependencies": { - "camelcase": "^6.0.0", - "decamelize": "^4.0.0", - "flat": "^5.0.2", - "is-plain-obj": "^2.1.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/yargs-unparser/node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/yargs/node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", @@ -19209,6 +18678,7 @@ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, + "peer": true, "engines": { "node": ">=10" }, diff --git a/openvidu-components-angular/package.json b/openvidu-components-angular/package.json index e2c07192..b4aa3b77 100644 --- a/openvidu-components-angular/package.json +++ b/openvidu-components-angular/package.json @@ -23,14 +23,12 @@ "@angular/compiler-cli": "18.2.5", "@angular/elements": "18.2.5", "@compodoc/compodoc": "^1.1.25", - "@types/chai": "4.3.19", "@types/dom-mediacapture-transform": "0.1.9", "@types/dom-webcodecs": "0.1.11", - "@types/mocha": "9.1.1", + "@types/jasmine": "^5.1.4", "@types/node": "20.12.14", "@types/selenium-webdriver": "4.1.16", "@types/ws": "^8.5.12", - "chai": "4.3.10", "chromedriver": "129.0.0", "concat": "^1.0.3", "cross-env": "^7.0.3", @@ -50,7 +48,6 @@ "karma-mocha-reporter": "2.2.5", "karma-notify-reporter": "1.3.0", "lint-staged": "^15.2.10", - "mocha": "9.2.2", "ng-packagr": "18.2.1", "npm-watch": "^0.13.0", "prettier": "3.3.3", diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/admin/admin-dashboard/admin-dashboard.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/admin/admin-dashboard/admin-dashboard.component.spec.ts deleted file mode 100644 index 6217b8d2..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/admin/admin-dashboard/admin-dashboard.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { AdminDashboardComponent } from './admin-dashboard.component'; - -describe('DashboardComponent', () => { - let component: AdminDashboardComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ AdminDashboardComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(AdminDashboardComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/admin/admin-login/admin-login.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/admin/admin-login/admin-login.component.spec.ts deleted file mode 100644 index ccb7deae..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/admin/admin-login/admin-login.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { AdminLoginComponent } from './login.component'; - -describe('LoginComponent', () => { - let component: AdminLoginComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ AdminLoginComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(AdminLoginComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/audio-wave/audio-wave.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/audio-wave/audio-wave.component.spec.ts deleted file mode 100644 index beca4764..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/audio-wave/audio-wave.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { AudioWaveComponent } from './audio-wave.component'; - -describe('AudioWaveComponent', () => { - let component: AudioWaveComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ AudioWaveComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(AudioWaveComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/avatar-profile/avatar-profile.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/avatar-profile/avatar-profile.component.spec.ts deleted file mode 100644 index e170b085..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/avatar-profile/avatar-profile.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { AvatarProfileComponent } from './avatar-profile.component'; - -describe('AvatarProfileComponent', () => { - let component: AvatarProfileComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ AvatarProfileComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(AvatarProfileComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/captions/captions.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/captions/captions.component.spec.ts deleted file mode 100644 index b73851b6..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/captions/captions.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { CaptionsComponent } from './captions.component'; - -describe('CaptionsComponent', () => { - let component: CaptionsComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ CaptionsComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(CaptionsComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/layout/layout.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/layout/layout.component.spec.ts deleted file mode 100644 index b4aea8e6..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/layout/layout.component.spec.ts +++ /dev/null @@ -1,37 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { RemoteUserService, LocalUserService } from '../../../public-api'; -import { ChatService } from '../../services/chat/chat.service'; -import { ChatServiceMock } from '../../services/chat/chat.service.mock'; -import { LayoutService } from '../../services/layout/layout.service'; -import { LocalUserServiceMock } from '../../services/local-user/local-user.service.mock'; -import { RemoteUserServiceMock } from '../../services/remote-user/remote-user.service.mock'; - -import { LayoutComponent } from './layout.component'; - -describe('LayoutComponent', () => { - let component: LayoutComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ LayoutComponent ], - providers: [ - { provide: RemoteUserService, useClass: RemoteUserServiceMock }, - { provide: LocalUserService, useClass: LocalUserServiceMock }, - { provide: ChatService, useClass: ChatServiceMock }, - { provide: LayoutService, useClass: LayoutService } - ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(LayoutComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/media-element/media-element.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/media-element/media-element.component.spec.ts deleted file mode 100644 index 9d26d658..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/media-element/media-element.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { VideoComponent } from './media-element.component'; - -describe('VideoComponent', () => { - let component: VideoComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ VideoComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(VideoComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/activities-panel/activities-panel.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/activities-panel/activities-panel.component.spec.ts deleted file mode 100644 index c61299db..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/activities-panel/activities-panel.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { ActivitiesPanelComponent } from './activities-panel.component'; - -describe('ActivitiesPanelComponent', () => { - let component: ActivitiesPanelComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ ActivitiesPanelComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(ActivitiesPanelComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/activities-panel/broadcasting-activity/broadcasting-activity.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/activities-panel/broadcasting-activity/broadcasting-activity.component.spec.ts deleted file mode 100644 index 9a10ec7d..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/activities-panel/broadcasting-activity/broadcasting-activity.component.spec.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { BroadcastingActivityComponent } from './broadcasting-activity.component'; - -describe('BroadcastingActivityComponent', () => { - let component: BroadcastingActivityComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ BroadcastingActivityComponent ] - }) - .compileComponents(); - - fixture = TestBed.createComponent(BroadcastingActivityComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/activities-panel/recording-activity/recording-activity.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/activities-panel/recording-activity/recording-activity.component.spec.ts deleted file mode 100644 index c6babca8..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/activities-panel/recording-activity/recording-activity.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { RecordingActivityComponent } from './recording-activity.component'; - -describe('RecordingActivityComponent', () => { - let component: RecordingActivityComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ RecordingActivityComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(RecordingActivityComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/background-effects-panel/background-effects-panel.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/background-effects-panel/background-effects-panel.component.spec.ts deleted file mode 100644 index e00a9066..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/background-effects-panel/background-effects-panel.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { BackgroundEffectsPanelComponent } from './background-effects-panel.component'; - -describe('BackgroundEffectsPanelComponent', () => { - let component: BackgroundEffectsPanelComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ BackgroundEffectsPanelComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(BackgroundEffectsPanelComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/chat-panel/chat-panel.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/chat-panel/chat-panel.component.spec.ts deleted file mode 100644 index 0204558a..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/chat-panel/chat-panel.component.spec.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { ChatService } from '../../../services/chat/chat.service'; -import { ChatServiceMock } from '../../../services/chat/chat.service.mock'; - -import { ChatPanelComponent } from './chat-panel.component'; - -describe('ChatPanelComponent', () => { - let component: ChatPanelComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ChatPanelComponent], - providers: [{ provide: ChatService, useClass: ChatServiceMock }] - }).compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(ChatPanelComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/participants-panel/participant-panel-item/participant-panel-item.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/participants-panel/participant-panel-item/participant-panel-item.component.spec.ts deleted file mode 100644 index 5386dbec..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/participants-panel/participant-panel-item/participant-panel-item.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { ParticipantPanelItemComponent } from './participant-panel-item.component'; - -describe('ParticipantPanelItemComponent', () => { - let component: ParticipantPanelItemComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ ParticipantPanelItemComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(ParticipantPanelItemComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/participants-panel/participants-panel/participants-panel.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/participants-panel/participants-panel/participants-panel.component.spec.ts deleted file mode 100644 index 6e1b9a0e..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/participants-panel/participants-panel/participants-panel.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { ParticipantsPanelComponent } from './participants-panel.component'; - -describe('ParticipantsPanelComponent', () => { - let component: ParticipantsPanelComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ ParticipantsPanelComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(ParticipantsPanelComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/settings-panel/settings-panel.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/settings-panel/settings-panel.component.spec.ts deleted file mode 100644 index e4ecf48e..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/panel/settings-panel/settings-panel.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { SettingsPanelComponent } from './settings-panel.component'; - -describe('SettingsPanelComponent', () => { - let component: SettingsPanelComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ SettingsPanelComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(SettingsPanelComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/pre-join/pre-join.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/pre-join/pre-join.component.spec.ts deleted file mode 100644 index 81c19d7b..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/pre-join/pre-join.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { PreJoinComponent } from './pre-join.component'; - -describe('PreJoinComponent', () => { - let component: PreJoinComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ PreJoinComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(PreJoinComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/session/session.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/session/session.component.spec.ts index 884c4f91..bad2ad0f 100644 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/session/session.component.spec.ts +++ b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/session/session.component.spec.ts @@ -1,4 +1,7 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; +import { MatProgressSpinnerModule } from '@angular/material/progress-spinner'; +import { NoopAnimationsModule } from '@angular/platform-browser/animations'; + import { ActionService } from '../../services/action/action.service'; import { ActionServiceMock } from '../../services/action/action.service.mock'; @@ -7,26 +10,34 @@ import { ChatServiceMock } from '../../services/chat/chat.service.mock'; import { LoggerService } from '../../services/logger/logger.service'; import { LoggerServiceMock } from '../../services/logger/logger.service.mock'; -import { ParticipantService } from '../../services/participant/participant.service'; -import { ParticipantServiceMock } from '../../services/participant/participant.service.mock'; +// import { ParticipantService } from '../../services/participant/participant.service'; +// import { ParticipantServiceMock } from '../../services/participant/participant.service.mock'; import { PlatformService } from '../../services/platform/platform.service'; import { PlatformServiceMock } from '../../services/platform/platform.service.mock'; import { SessionComponent } from './session.component'; +import { Room, RoomEvent } from 'livekit-client'; +import { TranslateService } from '../../services/translate/translate.service'; +import { TranslateServiceMock } from '../../services/translate/translate.service.mock'; +import { TranslatePipe } from '../../pipes/translate.pipe'; describe('SessionComponent', () => { let component: SessionComponent; let fixture: ComponentFixture; + let actionService: ActionServiceMock; beforeEach(async () => { await TestBed.configureTestingModule({ - declarations: [SessionComponent], + declarations: [SessionComponent, TranslatePipe], + imports: [MatProgressSpinnerModule, NoopAnimationsModule], providers: [ { provide: LoggerService, useClass: LoggerServiceMock }, { provide: ActionService, useClass: ActionServiceMock }, - { provide: ParticipantService, useClass: ParticipantServiceMock }, + // { provide: ParticipantService, useClass: ParticipantServiceMock }, { provide: ChatService, useClass: ChatServiceMock }, - { provide: PlatformService, useClass: PlatformServiceMock } + { provide: PlatformService, useClass: PlatformServiceMock }, + { provide: TranslateService, useClass: TranslateServiceMock }, + { provide: 'OPENVIDU_COMPONENTS_CONFIG', useValue: { production: false } } ] }).compileComponents(); }); @@ -34,10 +45,52 @@ describe('SessionComponent', () => { beforeEach(() => { fixture = TestBed.createComponent(SessionComponent); component = fixture.componentInstance; + actionService = TestBed.inject(ActionService); + + // Espías para verificar las llamadas a los métodos de diálogo + spyOn(actionService, 'openConnectionDialog').and.callThrough(); + spyOn(actionService, 'closeConnectionDialog').and.callThrough(); + + component.room = { + on: jasmine.createSpy('on').and.callFake((event: RoomEvent, callback: () => void) => { + // Guarda los callbacks para invocarlos manualmente + if (event === RoomEvent.Reconnecting) { + component.room['reconnectingCallback'] = callback; + } + if (event === RoomEvent.Reconnected) { + component.room['reconnectedCallback'] = callback; + } + return component.room; + }), + removeAllListeners: jasmine.createSpy('removeAllListeners') + } as unknown as Room; + + component['subscribeToReconnection'](); + fixture.detectChanges(); }); + function emitReconnectingEvent() { + component.room['reconnectingCallback'](); + } + + function emitReconnectedEvent() { + component.room['reconnectedCallback'](); + } + it('should create', () => { expect(component).toBeTruthy(); }); + + it('should open the connection dialog', () => { + emitReconnectingEvent(); + // Verifica que se haya abierto el diálogo + expect(actionService.openConnectionDialog).toHaveBeenCalledTimes(1); + }); + + it('should close the connection dialog', () => { + emitReconnectingEvent(); + emitReconnectedEvent(); + expect(actionService.closeConnectionDialog).toHaveBeenCalledTimes(1); + }); }); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/audio-devices/audio-devices.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/audio-devices/audio-devices.component.spec.ts deleted file mode 100644 index 20d1d7fe..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/audio-devices/audio-devices.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { AudioDevicesComponent } from './audio-devices.component'; - -describe('AudioDevicesComponent', () => { - let component: AudioDevicesComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ AudioDevicesComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(AudioDevicesComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/captions/captions.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/captions/captions.component.spec.ts deleted file mode 100644 index 827a8013..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/captions/captions.component.spec.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { CaptionsSettingComponent } from './captions.component'; - -describe('CaptionsSettingComponent', () => { - let component: CaptionsSettingComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [CaptionsSettingComponent] - }).compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(CaptionsSettingComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/lang-selector/lang-selector.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/lang-selector/lang-selector.component.spec.ts deleted file mode 100644 index c20c379c..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/lang-selector/lang-selector.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { LangSelectorComponent } from './lang-selector.component'; - -describe('LangSelectorComponent', () => { - let component: LangSelectorComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ LangSelectorComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(LangSelectorComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/participant-name-input/participant-name-input.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/participant-name-input/participant-name-input.component.spec.ts deleted file mode 100644 index 1632ae33..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/participant-name-input/participant-name-input.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { ParticipantNameInputComponent } from './participant-name-input.component'; - -describe('ParticipantNameInputComponent', () => { - let component: ParticipantNameInputComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ ParticipantNameInputComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(ParticipantNameInputComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/video-devices/video-devices.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/video-devices/video-devices.component.spec.ts deleted file mode 100644 index 2ceb1f81..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/settings/video-devices/video-devices.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { VideoDevicesComponent } from './video-devices.component'; - -describe('VideoDevicesComponent', () => { - let component: VideoDevicesComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ VideoDevicesComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(VideoDevicesComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/stream/stream.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/stream/stream.component.spec.ts deleted file mode 100644 index 266b8487..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/stream/stream.component.spec.ts +++ /dev/null @@ -1,49 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { RemoteUserService, LocalUserService, WebrtcService } from '../../../public-api'; -import { CdkOverlayService } from '../../services/cdk-overlay/cdk-overlay.service'; -import { DocumentService } from '../../services/document/document.service'; -import { CdkOverlayServiceMock } from '../../services/cdk-overlay/cdk-overlay.service.mock'; - -import { DocumentServiceMock } from '../../services/document/document.service.mock'; -import { LayoutService } from '../../services/layout/layout.service'; -import { LocalUserServiceMock } from '../../services/local-user/local-user.service.mock'; -import { LayoutServiceMock } from '../../services/layout/layout.service.mock'; - -import { RemoteUserServiceMock } from '../../services/remote-user/remote-user.service.mock'; -import { StorageService } from '../../services/storage/storage.service'; - -import { StorageServiceMock } from '../../services/storage/storage.service.mock'; - -import { WebrtcServiceMock } from '../../services/webrtc/webrtc.service.mock'; - -import { ParticipantComponent } from './participant.component'; - -describe('ParticipantComponent', () => { - let component: ParticipantComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ParticipantComponent], - providers: [ - { provide: DocumentService, useClass: DocumentServiceMock }, - { provide: StorageService, useClass: StorageServiceMock }, - { provide: RemoteUserService, useClass: RemoteUserServiceMock }, - { provide: LocalUserService, useClass: LocalUserServiceMock }, - { provide: WebrtcService, useClass: WebrtcServiceMock }, - { provide: CdkOverlayService, useClass: CdkOverlayServiceMock }, - { provide: LayoutService, useClass: LayoutServiceMock } - ] - }).compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(ParticipantComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/toolbar/toolbar.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/toolbar/toolbar.component.spec.ts deleted file mode 100644 index 952f115a..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/toolbar/toolbar.component.spec.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; -import { ActionService } from '../../services/action/action.service'; -import { ActionServiceMock } from '../../services/action/action.service.mock'; -import { ChatService } from '../../services/chat/chat.service'; -import { ChatServiceMock } from '../../services/chat/chat.service.mock'; -import { DeviceService } from '../../services/device/device.service'; -import { DeviceServiceMock } from '../../services/device/device.service.mock'; -import { DocumentService } from '../../services/document/document.service'; -import { DocumentServiceMock } from '../../services/document/document.service.mock'; -import { LocalUserService } from '../../services/local-user/local-user.service'; -import { LocalUserServiceMock } from '../../services/local-user/local-user.service.mock'; - -import { LoggerService } from '../../services/logger/logger.service'; -import { LoggerServiceMock } from '../../services/logger/logger.service.mock'; - -import { WebrtcService } from '../../services/webrtc/webrtc.service'; -import { WebrtcServiceMock } from '../../services/webrtc/webrtc.service.mock'; - -import { ToolbarComponent } from './toolbar.component'; - -describe('ToolbarComponent', () => { - let component: ToolbarComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ ToolbarComponent ], - providers: [ - { provide: ActionService, useClass: ActionServiceMock }, - { provide: ChatService, useClass: ChatServiceMock }, - { provide: LocalUserService, useClass: LocalUserServiceMock }, - { provide: DocumentService, useClass: DocumentServiceMock }, - { provide: LoggerService, useClass: LoggerServiceMock }, - { provide: DeviceService, useClass: DeviceServiceMock }, - { provide: WebrtcService, useClass: WebrtcServiceMock } - - ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(ToolbarComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/videoconference/videoconference.component.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/videoconference/videoconference.component.spec.ts deleted file mode 100644 index faa9c113..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/components/videoconference/videoconference.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { ComponentFixture, TestBed } from '@angular/core/testing'; - -import { VideoconferenceComponent } from './videoconference.component'; - -describe('VideoconferenceComponent', () => { - let component: VideoconferenceComponent; - let fixture: ComponentFixture; - - beforeEach(async () => { - await TestBed.configureTestingModule({ - declarations: [ VideoconferenceComponent ] - }) - .compileComponents(); - }); - - beforeEach(() => { - fixture = TestBed.createComponent(VideoconferenceComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/action/action.service.mock.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/action/action.service.mock.ts index be6fd46d..25ff82e9 100644 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/action/action.service.mock.ts +++ b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/action/action.service.mock.ts @@ -9,10 +9,10 @@ export class ActionServiceMock { } - openDialog(titleMessage: string, descriptionMessage: string, allowClose = true) { + openConnectionDialog(titleMessage: string, descriptionMessage: string, allowClose = true) { } - closeDialog() { + closeConnectionDialog() { } } diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/action/action.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/action/action.service.spec.ts index 77f34c2f..5f9d0447 100644 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/action/action.service.spec.ts +++ b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/action/action.service.spec.ts @@ -1,28 +1,81 @@ -import { TestBed } from '@angular/core/testing'; -import { MatDialog } from '@angular/material/dialog'; +import { fakeAsync, TestBed, tick } from '@angular/core/testing'; +import { MatDialog, MatDialogRef } from '@angular/material/dialog'; import { MatSnackBarModule } from '@angular/material/snack-bar'; import { ActionService } from './action.service'; +import { TranslateService } from '../translate/translate.service'; +import { TranslateServiceMock } from '../translate/translate.service.mock'; export class MatDialogMock { - open() {} - close() {} + open() { + return { close: () => {} } as MatDialogRef; + } } describe('ActionService', () => { - let service: ActionService; + let service: ActionService; + let dialog: MatDialog; - beforeEach(() => { - TestBed.configureTestingModule({ - imports: [MatSnackBarModule], - providers: [ - { provide: MatDialog, useClass: MatDialogMock } + beforeEach(() => { + TestBed.configureTestingModule({ + imports: [MatSnackBarModule], + providers: [ + { provide: MatDialog, useClass: MatDialogMock }, + { provide: TranslateService, useClass: TranslateServiceMock }, + { provide: 'OPENVIDU_COMPONENTS_CONFIG', useValue: { production: false } } ] - }); - service = TestBed.inject(ActionService); - }); + }); - it('should be created', () => { - expect(service).toBeTruthy(); - }); + service = TestBed.inject(ActionService); + dialog = TestBed.inject(MatDialog); + }); + + it('should be created', () => { + expect(service).toBeTruthy(); + }); + + it('should open connection dialog', fakeAsync(() => { + const dialogSpy = spyOn(dialog, 'open').and.callThrough(); + service.openConnectionDialog('Test Title', 'Test Description', false); + expect(dialogSpy).toHaveBeenCalled(); + expect(service['isConnectionDialogOpen']).toBeTrue(); + })); + + it('should not open connection dialog if one is already open', () => { + service['isConnectionDialogOpen'] = true; + const dialogSpy = spyOn(dialog, 'open').and.callThrough(); + service.openConnectionDialog('Test Title', 'Test Description', false); + + expect(dialogSpy).not.toHaveBeenCalled(); + }); + + it('should close connection dialog and reset state', fakeAsync(() => { + service.openConnectionDialog('Test Title', 'Test Description', false); + + tick(2000); + + expect(service['isConnectionDialogOpen']).toBeTrue(); + + service.closeConnectionDialog(); + + expect(service['isConnectionDialogOpen']).toBeFalse(); + })); + + it('should open connection dialog only once', fakeAsync(() => { + // Spy on the dialog open method + const dialogSpy = spyOn(dialog, 'open').and.callThrough(); + + service.openConnectionDialog('Test Title', 'Test Description', false); + // Verify that the dialog has been called only once + expect(dialogSpy).toHaveBeenCalledTimes(1); + expect(service['isConnectionDialogOpen']).toBeTrue(); + + // Try to open the dialog again + service.openConnectionDialog('Test Title', 'Test Description', false); + service.openConnectionDialog('Test Title', 'Test Description', false); + service.openConnectionDialog('Test Title', 'Test Description', false); + + // Verify that the dialog has been called only once + expect(dialogSpy).toHaveBeenCalledTimes(1); + })); }); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/broadcasting/broadcasting.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/broadcasting/broadcasting.service.spec.ts deleted file mode 100644 index f0261e7c..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/broadcasting/broadcasting.service.spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { BroadcastingService } from './broadcasting.service'; - -describe('BroadcastingService', () => { - let service: BroadcastingService; - - beforeEach(() => { - TestBed.configureTestingModule({}); - service = TestBed.inject(BroadcastingService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/caption/caption.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/caption/caption.service.spec.ts deleted file mode 100644 index 9b330264..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/caption/caption.service.spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { CaptionService } from './caption.service'; - -describe('CaptionService', () => { - let service: CaptionService; - - beforeEach(() => { - TestBed.configureTestingModule({}); - service = TestBed.inject(CaptionService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/cdk-overlay/cdk-overlay.service.mock.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/cdk-overlay/cdk-overlay.service.mock.ts deleted file mode 100644 index 85119659..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/cdk-overlay/cdk-overlay.service.mock.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { Injectable } from '@angular/core'; - -@Injectable({ - providedIn: 'root' -}) -export class CdkOverlayServiceMock { - - constructor() {} - - setSelector(selector: string) { - } -} - - diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/cdk-overlay/cdk-overlay.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/cdk-overlay/cdk-overlay.service.spec.ts deleted file mode 100644 index 44e2095e..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/cdk-overlay/cdk-overlay.service.spec.ts +++ /dev/null @@ -1,29 +0,0 @@ -import { TestBed } from '@angular/core/testing'; -import { CdkOverlayContainer } from '../../config/custom-cdk-overlay'; - -import { CdkOverlayService } from './cdk-overlay.service'; - - -export class CdkOverlayContainerMock { - protected _createContainer(): void {} - - setSelector(selector: string) {} - private getElement(selector: string): Element { - return null; - } -} - -describe('CdkOverlayService', () => { - let service: CdkOverlayService; - - beforeEach(() => { - TestBed.configureTestingModule({ - providers: [{ provide: CdkOverlayContainer, useClass: CdkOverlayContainerMock }] - }); - service = TestBed.inject(CdkOverlayService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/chat/chat.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/chat/chat.service.spec.ts deleted file mode 100644 index a53b4b61..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/chat/chat.service.spec.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { TestBed } from '@angular/core/testing'; -import { ActionService } from '../action/action.service'; -import { ActionServiceMock } from '../action/action.service.mock'; -import { LocalUserService } from '../local-user/local-user.service'; -import { LocalUserServiceMock } from '../local-user/local-user.service.mock'; -import { LoggerService } from '../logger/logger.service'; -import { LoggerServiceMock } from '../logger/logger.service.mock'; -import { WebrtcService } from '../webrtc/webrtc.service'; -import { WebrtcServiceMock } from '../webrtc/webrtc.service.mock'; - -import { ChatService } from './chat.service'; - -describe('ChatService', () => { - let service: ChatService; - - beforeEach(() => { - TestBed.configureTestingModule({ - providers: [ - { provide: LoggerService, useClass: LoggerServiceMock }, - { provide: WebrtcService, useClass: WebrtcServiceMock }, - { provide: LocalUserService, useClass: LocalUserServiceMock }, - { provide: ActionService, useClass: ActionServiceMock } - ] - }); - service = TestBed.inject(ChatService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/device/device.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/device/device.service.spec.ts index c66889c7..ad2dbd54 100644 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/device/device.service.spec.ts +++ b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/device/device.service.spec.ts @@ -1,605 +1,605 @@ -import { fakeAsync, flush, TestBed } from '@angular/core/testing'; -import { CameraType, CustomDevice } from '../../models/device.model'; -import { LoggerService } from '../logger/logger.service'; -import { LoggerServiceMock } from '../logger/logger.service.mock'; -import { PlatformService } from '../platform/platform.service'; -import { PlatformServiceMock } from '../platform/platform.service.mock'; -import { StorageService } from '../storage/storage.service'; -import { StorageServiceMock } from '../storage/storage.service.mock'; - -import { DeviceService } from './device.service'; - -const OV_EMPTY_DEVICES: Device[] = [] = [{ deviceId: '1', kind: 'audioinput', label: '' }]; -const OV_VIDEO_EMPTY_DEVICES: Device[] = [{ deviceId: '2', kind: 'videoinput', label: '' }]; -const OV_AUDIO_DEVICES: Device[] = [ - { deviceId: '1', kind: 'audioinput', label: 'mic1' }, - { deviceId: '2', kind: 'audioinput', label: 'mic2' } -]; -const OV_VIDEO_DEVICES: Device[] = [ - { deviceId: '3', kind: 'videoinput', label: 'cam1' }, - { deviceId: '4', kind: 'videoinput', label: 'cam2' } -]; -const OV_MOBILE_VIDEO_DEVICES: Device[] = [ - { deviceId: '5', kind: 'videoinput', label: 'CAMfront' }, - { deviceId: '6', kind: 'videoinput', label: 'cam1' } -]; -const OV_BOTH_DEVICES: Device[] = OV_AUDIO_DEVICES.concat(OV_VIDEO_DEVICES); - -const CUSTOM_AUDIO_DEVICES: CustomDevice[] = [ - { device: '1', label: 'mic1' }, - { device: '2', label: 'mic2' } -]; -const CUSTOM_VIDEO_DEVICES: CustomDevice[] = [ - { device: '3', label: 'cam1', type: CameraType.FRONT }, - { device: '4', label: 'cam2', type: CameraType.BACK } -]; - -const CUSTOM_MOBILE_VIDEO_DEVICES: CustomDevice[] = [ - { device: '5', label: 'CAMfront', type: CameraType.FRONT }, - { device: '6', label: 'cam1BACK', type: CameraType.BACK } -]; -const CUSTOM_AUDIO_STORAGE_DEVICE: CustomDevice = { device: '10', label: 'storageAudio' }; -const CUSTOM_VIDEO_STORAGE_DEVICE: CustomDevice = { device: '11', label: 'storageVideo' }; - -describe('DeviceService', () => { - let service: DeviceService; - let spyGetDevices; - - beforeEach(() => { - TestBed.configureTestingModule({ - providers: [ - { provide: LoggerService, useClass: LoggerServiceMock }, - { provide: PlatformService, useClass: PlatformServiceMock }, - { provide: StorageService, useClass: StorageServiceMock } - ] - }); - service = TestBed.inject(DeviceService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); - - it('should be defined OV', () => { - expect(service['OV']).toBeDefined(); - }); - - it('should initialize devices', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_EMPTY_DEVICES)); - - expect(service['OV']).toBeDefined(); - - service.initDevices(); - flush(); - - expect(spyGetDevices).toHaveBeenCalled(); - expect(service['devices']).toBeDefined(); - expect(service['devices'].length).toEqual(0); - })); - - it('should not initialize devices', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(undefined)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - - expect(service['OV']).toBeDefined(); - - spyInitOpenViduDevices.call(service); - flush(); - - expect(spyGetDevices).toHaveBeenCalled(); - expect(service['devices']).not.toBeDefined(); - - expect(service.hasVideoDeviceAvailable()).toBeFalsy(); - expect(service.hasAudioDeviceAvailable()).toBeFalsy(); - })); - - it('should not have any devices available', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_EMPTY_DEVICES)); - service.initDevices(); - flush(); - expect(spyGetDevices).toHaveBeenCalled(); - - expect(service.hasAudioDeviceAvailable()).toBeFalsy(); - expect(service['micSelected']).not.toBeDefined(); - - expect(service.hasVideoDeviceAvailable()).toBeFalsy(); - expect(service['camSelected']).not.toBeDefined(); - })); - - it('should only have audio devices available', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_AUDIO_DEVICES)); - service.initDevices(); - flush(); - expect(service['devices'].length).toEqual(2); - - expect(service.hasAudioDeviceAvailable()).toBeTruthy(); - expect(service['micSelected']).toBeDefined(); - // 2 + empty microphone - resetDevices method - expect(service['microphones'].length).toEqual(2 + 1); - - expect(service.hasVideoDeviceAvailable()).toBeFalsy(); - expect(service['camSelected']).not.toBeDefined(); - // 2 + empty camera - resetDevices method - expect(service['cameras'].length).toEqual(0 + 1); - })); - - it('should only have video devices available', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_VIDEO_DEVICES)); - service.initDevices(); - flush(); - expect(service['devices'].length).toEqual(2); - - expect(service.hasAudioDeviceAvailable()).toBeFalsy(); - expect(service['micSelected']).not.toBeDefined(); - - expect(service['microphones'].length).toEqual(0 + 1); - - expect(service.hasVideoDeviceAvailable()).toBeTruthy(); - expect(service['camSelected']).toBeDefined(); - expect(service['cameras'].length).toEqual(2 + 1); - })); - - it('should have video and audio devices available', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); - service.initDevices(); - flush(); - expect(service['devices'].length).toEqual(4); - - expect(service.hasAudioDeviceAvailable()).toBeTruthy(); - expect(service['micSelected']).toBeDefined(); - expect(service['microphones'].length).toEqual(2 + 1); - - expect(service.hasVideoDeviceAvailable()).toBeTruthy(); - expect(service['camSelected']).toBeDefined(); - expect(service['cameras'].length).toEqual(2 + 1); - })); +// import { fakeAsync, flush, TestBed } from '@angular/core/testing'; +// import { CameraType, CustomDevice } from '../../models/device.model'; +// import { LoggerService } from '../logger/logger.service'; +// import { LoggerServiceMock } from '../logger/logger.service.mock'; +// import { PlatformService } from '../platform/platform.service'; +// import { PlatformServiceMock } from '../platform/platform.service.mock'; +// import { StorageService } from '../storage/storage.service'; +// import { StorageServiceMock } from '../storage/storage.service.mock'; + +// import { DeviceService } from './device.service'; + +// const OV_EMPTY_DEVICES: Device[] = [] = [{ deviceId: '1', kind: 'audioinput', label: '' }]; +// const OV_VIDEO_EMPTY_DEVICES: Device[] = [{ deviceId: '2', kind: 'videoinput', label: '' }]; +// const OV_AUDIO_DEVICES: Device[] = [ +// { deviceId: '1', kind: 'audioinput', label: 'mic1' }, +// { deviceId: '2', kind: 'audioinput', label: 'mic2' } +// ]; +// const OV_VIDEO_DEVICES: Device[] = [ +// { deviceId: '3', kind: 'videoinput', label: 'cam1' }, +// { deviceId: '4', kind: 'videoinput', label: 'cam2' } +// ]; +// const OV_MOBILE_VIDEO_DEVICES: Device[] = [ +// { deviceId: '5', kind: 'videoinput', label: 'CAMfront' }, +// { deviceId: '6', kind: 'videoinput', label: 'cam1' } +// ]; +// const OV_BOTH_DEVICES: Device[] = OV_AUDIO_DEVICES.concat(OV_VIDEO_DEVICES); + +// const CUSTOM_AUDIO_DEVICES: CustomDevice[] = [ +// { device: '1', label: 'mic1' }, +// { device: '2', label: 'mic2' } +// ]; +// const CUSTOM_VIDEO_DEVICES: CustomDevice[] = [ +// { device: '3', label: 'cam1', type: CameraType.FRONT }, +// { device: '4', label: 'cam2', type: CameraType.BACK } +// ]; + +// const CUSTOM_MOBILE_VIDEO_DEVICES: CustomDevice[] = [ +// { device: '5', label: 'CAMfront', type: CameraType.FRONT }, +// { device: '6', label: 'cam1BACK', type: CameraType.BACK } +// ]; +// const CUSTOM_AUDIO_STORAGE_DEVICE: CustomDevice = { device: '10', label: 'storageAudio' }; +// const CUSTOM_VIDEO_STORAGE_DEVICE: CustomDevice = { device: '11', label: 'storageVideo' }; + +// describe('DeviceService', () => { +// let service: DeviceService; +// let spyGetDevices; + +// beforeEach(() => { +// TestBed.configureTestingModule({ +// providers: [ +// { provide: LoggerService, useClass: LoggerServiceMock }, +// { provide: PlatformService, useClass: PlatformServiceMock }, +// { provide: StorageService, useClass: StorageServiceMock } +// ] +// }); +// service = TestBed.inject(DeviceService); +// }); + +// it('should be created', () => { +// expect(service).toBeTruthy(); +// }); + +// it('should be defined OV', () => { +// expect(service['OV']).toBeDefined(); +// }); + +// it('should initialize devices', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_EMPTY_DEVICES)); + +// expect(service['OV']).toBeDefined(); + +// service.initDevices(); +// flush(); + +// expect(spyGetDevices).toHaveBeenCalled(); +// expect(service['devices']).toBeDefined(); +// expect(service['devices'].length).toEqual(0); +// })); + +// it('should not initialize devices', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(undefined)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); + +// expect(service['OV']).toBeDefined(); + +// spyInitOpenViduDevices.call(service); +// flush(); + +// expect(spyGetDevices).toHaveBeenCalled(); +// expect(service['devices']).not.toBeDefined(); + +// expect(service.hasVideoDeviceAvailable()).toBeFalsy(); +// expect(service.hasAudioDeviceAvailable()).toBeFalsy(); +// })); + +// it('should not have any devices available', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_EMPTY_DEVICES)); +// service.initDevices(); +// flush(); +// expect(spyGetDevices).toHaveBeenCalled(); + +// expect(service.hasAudioDeviceAvailable()).toBeFalsy(); +// expect(service['micSelected']).not.toBeDefined(); + +// expect(service.hasVideoDeviceAvailable()).toBeFalsy(); +// expect(service['camSelected']).not.toBeDefined(); +// })); + +// it('should only have audio devices available', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_AUDIO_DEVICES)); +// service.initDevices(); +// flush(); +// expect(service['devices'].length).toEqual(2); + +// expect(service.hasAudioDeviceAvailable()).toBeTruthy(); +// expect(service['micSelected']).toBeDefined(); +// // 2 + empty microphone - resetDevices method +// expect(service['microphones'].length).toEqual(2 + 1); + +// expect(service.hasVideoDeviceAvailable()).toBeFalsy(); +// expect(service['camSelected']).not.toBeDefined(); +// // 2 + empty camera - resetDevices method +// expect(service['cameras'].length).toEqual(0 + 1); +// })); + +// it('should only have video devices available', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_VIDEO_DEVICES)); +// service.initDevices(); +// flush(); +// expect(service['devices'].length).toEqual(2); + +// expect(service.hasAudioDeviceAvailable()).toBeFalsy(); +// expect(service['micSelected']).not.toBeDefined(); + +// expect(service['microphones'].length).toEqual(0 + 1); + +// expect(service.hasVideoDeviceAvailable()).toBeTruthy(); +// expect(service['camSelected']).toBeDefined(); +// expect(service['cameras'].length).toEqual(2 + 1); +// })); + +// it('should have video and audio devices available', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); +// service.initDevices(); +// flush(); +// expect(service['devices'].length).toEqual(4); + +// expect(service.hasAudioDeviceAvailable()).toBeTruthy(); +// expect(service['micSelected']).toBeDefined(); +// expect(service['microphones'].length).toEqual(2 + 1); + +// expect(service.hasVideoDeviceAvailable()).toBeTruthy(); +// expect(service['camSelected']).toBeDefined(); +// expect(service['cameras'].length).toEqual(2 + 1); +// })); - it('should return first audio device available', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_AUDIO_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); +// it('should return first audio device available', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_AUDIO_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitAudioDevices.call(service); - expect(spyInitAudioDevices).toHaveBeenCalled(); - expect(service.hasAudioDeviceAvailable()).toBeTruthy(); +// spyInitAudioDevices.call(service); +// expect(spyInitAudioDevices).toHaveBeenCalled(); +// expect(service.hasAudioDeviceAvailable()).toBeTruthy(); - expect(service.getMicSelected().label).toEqual(OV_AUDIO_DEVICES[0].label); - })); - - it('should return first video device available', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_VIDEO_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); +// expect(service.getMicSelected().label).toEqual(OV_AUDIO_DEVICES[0].label); +// })); + +// it('should return first video device available', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_VIDEO_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitVideoDevices.call(service); - expect(spyInitVideoDevices).toHaveBeenCalled(); - expect(service.hasVideoDeviceAvailable()).toBeTruthy(); +// spyInitVideoDevices.call(service); +// expect(spyInitVideoDevices).toHaveBeenCalled(); +// expect(service.hasVideoDeviceAvailable()).toBeTruthy(); - expect(service.getCamSelected().label).toEqual(OV_VIDEO_DEVICES[0].label); - })); - - it('should return a microphone by a id', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_AUDIO_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); - const spyGetMicrophoneByDeviceField = spyOn(service, 'getMicrophoneByDeviceField').and.callThrough(); - - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// expect(service.getCamSelected().label).toEqual(OV_VIDEO_DEVICES[0].label); +// })); + +// it('should return a microphone by a id', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_AUDIO_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); +// const spyGetMicrophoneByDeviceField = spyOn(service, 'getMicrophoneByDeviceField').and.callThrough(); + +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitAudioDevices.call(service); - expect(spyInitAudioDevices).toHaveBeenCalled(); +// spyInitAudioDevices.call(service); +// expect(spyInitAudioDevices).toHaveBeenCalled(); - const device = spyGetMicrophoneByDeviceField.call(service, OV_AUDIO_DEVICES[0].deviceId); +// const device = spyGetMicrophoneByDeviceField.call(service, OV_AUDIO_DEVICES[0].deviceId); - expect(device).toBeDefined(); - expect(device.device).toEqual(OV_AUDIO_DEVICES[0].deviceId); - })); +// expect(device).toBeDefined(); +// expect(device.device).toEqual(OV_AUDIO_DEVICES[0].deviceId); +// })); - it('should return a microphone by a label', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_AUDIO_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); - const spyGetMicrophoneByDeviceField = spyOn(service, 'getMicrophoneByDeviceField').and.callThrough(); +// it('should return a microphone by a label', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_AUDIO_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); +// const spyGetMicrophoneByDeviceField = spyOn(service, 'getMicrophoneByDeviceField').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitAudioDevices.call(service); - expect(spyInitAudioDevices).toHaveBeenCalled(); +// spyInitAudioDevices.call(service); +// expect(spyInitAudioDevices).toHaveBeenCalled(); - const device = spyGetMicrophoneByDeviceField.call(service, OV_AUDIO_DEVICES[1].label); +// const device = spyGetMicrophoneByDeviceField.call(service, OV_AUDIO_DEVICES[1].label); - expect(device).toBeDefined(); - expect(device.label).toEqual(OV_AUDIO_DEVICES[1].label); - })); +// expect(device).toBeDefined(); +// expect(device.label).toEqual(OV_AUDIO_DEVICES[1].label); +// })); - it('should return a camera by a id', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_VIDEO_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); - const spyGetCameraByDeviceField = spyOn(service, 'getCameraByDeviceField').and.callThrough(); +// it('should return a camera by a id', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_VIDEO_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); +// const spyGetCameraByDeviceField = spyOn(service, 'getCameraByDeviceField').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitVideoDevices.call(service); - expect(spyInitVideoDevices).toHaveBeenCalled(); +// spyInitVideoDevices.call(service); +// expect(spyInitVideoDevices).toHaveBeenCalled(); - const device = spyGetCameraByDeviceField.call(service, OV_VIDEO_DEVICES[0].deviceId); +// const device = spyGetCameraByDeviceField.call(service, OV_VIDEO_DEVICES[0].deviceId); - expect(device).toBeDefined(); - expect(device.device).toEqual(OV_VIDEO_DEVICES[0].deviceId); - })); +// expect(device).toBeDefined(); +// expect(device.device).toEqual(OV_VIDEO_DEVICES[0].deviceId); +// })); - it('should return a camera by a label', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_VIDEO_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); - const spyGetCameraByDeviceField = spyOn(service, 'getCameraByDeviceField').and.callThrough(); +// it('should return a camera by a label', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_VIDEO_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); +// const spyGetCameraByDeviceField = spyOn(service, 'getCameraByDeviceField').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitVideoDevices.call(service); - expect(spyInitVideoDevices).toHaveBeenCalled(); +// spyInitVideoDevices.call(service); +// expect(spyInitVideoDevices).toHaveBeenCalled(); - const device = spyGetCameraByDeviceField.call(service, OV_VIDEO_DEVICES[0].label); +// const device = spyGetCameraByDeviceField.call(service, OV_VIDEO_DEVICES[0].label); - expect(device).toBeDefined(); - expect(device.label).toEqual(OV_VIDEO_DEVICES[0].label); - })); +// expect(device).toBeDefined(); +// expect(device.label).toEqual(OV_VIDEO_DEVICES[0].label); +// })); - it('camera should need mirror', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_VIDEO_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); - const spyCameraNeedsMirror = spyOn(service, 'cameraNeedsMirror').and.callThrough(); +// it('camera should need mirror', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_VIDEO_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); +// const spyCameraNeedsMirror = spyOn(service, 'cameraNeedsMirror').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitVideoDevices.call(service); - expect(spyInitVideoDevices).toHaveBeenCalled(); +// spyInitVideoDevices.call(service); +// expect(spyInitVideoDevices).toHaveBeenCalled(); - const mirror = spyCameraNeedsMirror.call(service, OV_VIDEO_DEVICES[0].label); +// const mirror = spyCameraNeedsMirror.call(service, OV_VIDEO_DEVICES[0].label); - expect(mirror).toBeDefined(); - expect(mirror).toBeTruthy(); - })); +// expect(mirror).toBeDefined(); +// expect(mirror).toBeTruthy(); +// })); - it('camera should not need mirror', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_VIDEO_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); - const spyCameraNeedsMirror = spyOn(service, 'cameraNeedsMirror').and.callThrough(); +// it('camera should not need mirror', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_VIDEO_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); +// const spyCameraNeedsMirror = spyOn(service, 'cameraNeedsMirror').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitVideoDevices.call(service); - expect(spyInitVideoDevices).toHaveBeenCalled(); +// spyInitVideoDevices.call(service); +// expect(spyInitVideoDevices).toHaveBeenCalled(); - const mirror = spyCameraNeedsMirror.call(service, OV_VIDEO_DEVICES[1].label); +// const mirror = spyCameraNeedsMirror.call(service, OV_VIDEO_DEVICES[1].label); - expect(mirror).toBeDefined(); - expect(mirror).toBeFalsy(); - })); +// expect(mirror).toBeDefined(); +// expect(mirror).toBeFalsy(); +// })); - it('should return camera devices', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); +// it('should return camera devices', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitVideoDevices.call(service); - expect(spyInitVideoDevices).toHaveBeenCalled(); +// spyInitVideoDevices.call(service); +// expect(spyInitVideoDevices).toHaveBeenCalled(); - const cameras = service.getCameras(); +// const cameras = service.getCameras(); - expect(cameras).toEqual(CUSTOM_VIDEO_DEVICES); - })); +// expect(cameras).toEqual(CUSTOM_VIDEO_DEVICES); +// })); - it('should return microphone devices', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); +// it('should return microphone devices', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitAudioDevices.call(service); - expect(spyInitAudioDevices).toHaveBeenCalled(); +// spyInitAudioDevices.call(service); +// expect(spyInitAudioDevices).toHaveBeenCalled(); - const microphones = service.getMicrophones(); +// const microphones = service.getMicrophones(); - expect(microphones).toEqual(CUSTOM_AUDIO_DEVICES); - })); +// expect(microphones).toEqual(CUSTOM_AUDIO_DEVICES); +// })); - it('should need replace audio track', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); +// it('should need replace audio track', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitAudioDevices.call(service); - expect(spyInitAudioDevices).toHaveBeenCalled(); +// spyInitAudioDevices.call(service); +// expect(spyInitAudioDevices).toHaveBeenCalled(); - const micSelected = service.getMicSelected(); - expect(micSelected).toBeDefined(); +// const micSelected = service.getMicSelected(); +// expect(micSelected).toBeDefined(); - const newDevice = CUSTOM_AUDIO_DEVICES.find((device) => micSelected.device !== device.device); +// const newDevice = CUSTOM_AUDIO_DEVICES.find((device) => micSelected.device !== device.device); - expect(newDevice).toBeDefined(); +// expect(newDevice).toBeDefined(); - const needUpdateAudioTrack = service.needUpdateAudioTrack(newDevice.device); - expect(needUpdateAudioTrack).toBeTruthy(); - })); +// const needUpdateAudioTrack = service.needUpdateAudioTrack(newDevice.device); +// expect(needUpdateAudioTrack).toBeTruthy(); +// })); - it('should not need replace audio track', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); +// it('should not need replace audio track', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitAudioDevices.call(service); - expect(spyInitAudioDevices).toHaveBeenCalled(); +// spyInitAudioDevices.call(service); +// expect(spyInitAudioDevices).toHaveBeenCalled(); - const micSelected = service.getMicSelected(); - expect(micSelected).toBeDefined(); +// const micSelected = service.getMicSelected(); +// expect(micSelected).toBeDefined(); - const newDevice = CUSTOM_AUDIO_DEVICES.find((device) => micSelected.device === device.device); +// const newDevice = CUSTOM_AUDIO_DEVICES.find((device) => micSelected.device === device.device); - expect(newDevice).toBeDefined(); +// expect(newDevice).toBeDefined(); - const needUpdateAudioTrack = service.needUpdateAudioTrack(newDevice.device); - expect(needUpdateAudioTrack).toBeFalsy(); - })); +// const needUpdateAudioTrack = service.needUpdateAudioTrack(newDevice.device); +// expect(needUpdateAudioTrack).toBeFalsy(); +// })); - it('should need replace video track', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); +// it('should need replace video track', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitVideoDevices.call(service); - expect(spyInitVideoDevices).toHaveBeenCalled(); +// spyInitVideoDevices.call(service); +// expect(spyInitVideoDevices).toHaveBeenCalled(); - const camSelected = service.getCamSelected(); - expect(camSelected).toBeDefined(); +// const camSelected = service.getCamSelected(); +// expect(camSelected).toBeDefined(); - const newDevice = CUSTOM_VIDEO_DEVICES.find((device) => camSelected.device !== device.device); +// const newDevice = CUSTOM_VIDEO_DEVICES.find((device) => camSelected.device !== device.device); - expect(newDevice).toBeDefined(); +// expect(newDevice).toBeDefined(); - const needUpdateVideoTrack = service.needUpdateVideoTrack(newDevice.device); - expect(needUpdateVideoTrack).toBeTruthy(); - })); +// const needUpdateVideoTrack = service.needUpdateVideoTrack(newDevice.device); +// expect(needUpdateVideoTrack).toBeTruthy(); +// })); - it('should not need replace video track', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); +// it('should not need replace video track', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitVideoDevices.call(service); - expect(spyInitVideoDevices).toHaveBeenCalled(); +// spyInitVideoDevices.call(service); +// expect(spyInitVideoDevices).toHaveBeenCalled(); - const camSelected = service.getCamSelected(); - expect(camSelected).toBeDefined(); +// const camSelected = service.getCamSelected(); +// expect(camSelected).toBeDefined(); - const newDevice = CUSTOM_VIDEO_DEVICES.find((device) => camSelected.device === device.device); +// const newDevice = CUSTOM_VIDEO_DEVICES.find((device) => camSelected.device === device.device); - expect(newDevice).toBeDefined(); +// expect(newDevice).toBeDefined(); - const needUpdateVideoTrack = service.needUpdateVideoTrack(newDevice.device); - expect(needUpdateVideoTrack).toBeFalsy(); - })); +// const needUpdateVideoTrack = service.needUpdateVideoTrack(newDevice.device); +// expect(needUpdateVideoTrack).toBeFalsy(); +// })); - it('should set cam selected', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); +// it('should set cam selected', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitVideoDevices.call(service); - expect(spyInitVideoDevices).toHaveBeenCalled(); +// spyInitVideoDevices.call(service); +// expect(spyInitVideoDevices).toHaveBeenCalled(); - const camSelected = service.getCamSelected(); - expect(camSelected).toBeDefined(); - expect(camSelected).toEqual(CUSTOM_VIDEO_DEVICES[0]); +// const camSelected = service.getCamSelected(); +// expect(camSelected).toBeDefined(); +// expect(camSelected).toEqual(CUSTOM_VIDEO_DEVICES[0]); - const newDevice = CUSTOM_VIDEO_DEVICES.find((device) => camSelected.device !== device.device); - expect(newDevice).toBeDefined(); - service.setCamSelected(newDevice.device); +// const newDevice = CUSTOM_VIDEO_DEVICES.find((device) => camSelected.device !== device.device); +// expect(newDevice).toBeDefined(); +// service.setCamSelected(newDevice.device); - const newCamSelected = service.getCamSelected(); - expect(newCamSelected).toEqual(newDevice); - })); +// const newCamSelected = service.getCamSelected(); +// expect(newCamSelected).toEqual(newDevice); +// })); - it('should set mic selected', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); +// it('should set mic selected', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitAudioDevices.call(service); - expect(spyInitAudioDevices).toHaveBeenCalled(); +// spyInitAudioDevices.call(service); +// expect(spyInitAudioDevices).toHaveBeenCalled(); - const micSelected = service.getMicSelected(); - expect(micSelected).toBeDefined(); - expect(micSelected).toEqual(CUSTOM_AUDIO_DEVICES[0]); +// const micSelected = service.getMicSelected(); +// expect(micSelected).toBeDefined(); +// expect(micSelected).toEqual(CUSTOM_AUDIO_DEVICES[0]); - const newDevice = CUSTOM_AUDIO_DEVICES.find((device) => micSelected.device !== device.device); - expect(newDevice).toBeDefined(); - service.setMicSelected(newDevice.device); +// const newDevice = CUSTOM_AUDIO_DEVICES.find((device) => micSelected.device !== device.device); +// expect(newDevice).toBeDefined(); +// service.setMicSelected(newDevice.device); - const newMicSelected = service.getMicSelected(); - expect(newMicSelected).toEqual(newDevice); - })); +// const newMicSelected = service.getMicSelected(); +// expect(newMicSelected).toEqual(newDevice); +// })); - it('should set front type in mobile devices', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_MOBILE_VIDEO_DEVICES)); - const spyPlatformSrvIsMobile = spyOn(service['platformSrv'], 'isMobile').and.returnValue(true); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); +// it('should set front type in mobile devices', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_MOBILE_VIDEO_DEVICES)); +// const spyPlatformSrvIsMobile = spyOn(service['platformSrv'], 'isMobile').and.returnValue(true); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitVideoDevices.call(service); - expect(spyInitVideoDevices).toHaveBeenCalled(); +// spyInitVideoDevices.call(service); +// expect(spyInitVideoDevices).toHaveBeenCalled(); - expect(spyPlatformSrvIsMobile).toHaveBeenCalled(); +// expect(spyPlatformSrvIsMobile).toHaveBeenCalled(); - const cameras = service.getCameras(); +// const cameras = service.getCameras(); - expect(cameras.length).toEqual(2); - const frontCamera = cameras.find((device) => device.type === CameraType.FRONT); - expect(frontCamera).toBeDefined(); - expect(frontCamera).toEqual(CUSTOM_MOBILE_VIDEO_DEVICES[0]); - })); +// expect(cameras.length).toEqual(2); +// const frontCamera = cameras.find((device) => device.type === CameraType.FRONT); +// expect(frontCamera).toBeDefined(); +// expect(frontCamera).toEqual(CUSTOM_MOBILE_VIDEO_DEVICES[0]); +// })); - it('devices should have video empty labels', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_VIDEO_EMPTY_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); +// it('devices should have video empty labels', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_VIDEO_EMPTY_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitVideoDevices.call(service); - expect(spyInitVideoDevices).toHaveBeenCalled(); +// spyInitVideoDevices.call(service); +// expect(spyInitVideoDevices).toHaveBeenCalled(); - expect(service.areEmptyLabels()).toBeTruthy(); - })); +// expect(service.areEmptyLabels()).toBeTruthy(); +// })); - it('devices should have audio empty labels', fakeAsync(() => { - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_AUDIO_EMPTY_DEVICES)); - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); +// it('devices should have audio empty labels', fakeAsync(() => { +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_AUDIO_EMPTY_DEVICES)); +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitAudioDevices.call(service); - expect(spyInitAudioDevices).toHaveBeenCalled(); +// spyInitAudioDevices.call(service); +// expect(spyInitAudioDevices).toHaveBeenCalled(); - expect(service.areEmptyLabels()).toBeTruthy(); - })); +// expect(service.areEmptyLabels()).toBeTruthy(); +// })); - it('should return first mic when storage audio device is not one of openvidu devices', fakeAsync(() => { - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); - const spysaveMicToStorage = spyOn(service, 'saveMicToStorage').and.callThrough(); +// it('should return first mic when storage audio device is not one of openvidu devices', fakeAsync(() => { +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); +// const spysaveMicToStorage = spyOn(service, 'saveMicToStorage').and.callThrough(); - spysaveMicToStorage.call(service, CUSTOM_AUDIO_STORAGE_DEVICE); +// spysaveMicToStorage.call(service, CUSTOM_AUDIO_STORAGE_DEVICE); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitAudioDevices.call(service); - expect(spyInitAudioDevices).toHaveBeenCalled(); - expect(service.hasAudioDeviceAvailable()).toBeTruthy(); +// spyInitAudioDevices.call(service); +// expect(spyInitAudioDevices).toHaveBeenCalled(); +// expect(service.hasAudioDeviceAvailable()).toBeTruthy(); - expect(service.getMicSelected()).toEqual(CUSTOM_AUDIO_DEVICES[0]); - })); +// expect(service.getMicSelected()).toEqual(CUSTOM_AUDIO_DEVICES[0]); +// })); - it('should return first cam when storage video device is not one of openvidu devices', fakeAsync(() => { - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); - const spysaveCamToStorage = spyOn(service, 'saveCamToStorage').and.callThrough(); +// it('should return first cam when storage video device is not one of openvidu devices', fakeAsync(() => { +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); +// const spysaveCamToStorage = spyOn(service, 'saveCamToStorage').and.callThrough(); - spysaveCamToStorage.call(service, CUSTOM_VIDEO_STORAGE_DEVICE); +// spysaveCamToStorage.call(service, CUSTOM_VIDEO_STORAGE_DEVICE); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitVideoDevices.call(service); - expect(spyInitVideoDevices).toHaveBeenCalled(); - expect(service.hasVideoDeviceAvailable()).toBeTruthy(); +// spyInitVideoDevices.call(service); +// expect(spyInitVideoDevices).toHaveBeenCalled(); +// expect(service.hasVideoDeviceAvailable()).toBeTruthy(); - expect(service.getCamSelected()).toEqual(CUSTOM_VIDEO_DEVICES[0]); - })); +// expect(service.getCamSelected()).toEqual(CUSTOM_VIDEO_DEVICES[0]); +// })); - it('should return storage audio device', fakeAsync(() => { - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); - const spysaveMicToStorage = spyOn(service, 'saveMicToStorage').and.callThrough(); +// it('should return storage audio device', fakeAsync(() => { +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitAudioDevices = spyOn(service, 'initAudioDevices').and.callThrough(); +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); +// const spysaveMicToStorage = spyOn(service, 'saveMicToStorage').and.callThrough(); - spysaveMicToStorage.call(service, CUSTOM_AUDIO_DEVICES[1]); +// spysaveMicToStorage.call(service, CUSTOM_AUDIO_DEVICES[1]); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitAudioDevices.call(service); - expect(spyInitAudioDevices).toHaveBeenCalled(); - expect(service.hasAudioDeviceAvailable()).toBeTruthy(); +// spyInitAudioDevices.call(service); +// expect(spyInitAudioDevices).toHaveBeenCalled(); +// expect(service.hasAudioDeviceAvailable()).toBeTruthy(); - expect(service.getMicSelected()).toEqual(CUSTOM_AUDIO_DEVICES[1]); - })); +// expect(service.getMicSelected()).toEqual(CUSTOM_AUDIO_DEVICES[1]); +// })); - it('should return storage video device', fakeAsync(() => { - const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); - const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); - spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); - const spysaveCamToStorage = spyOn(service, 'saveCamToStorage').and.callThrough(); +// it('should return storage video device', fakeAsync(() => { +// const spyInitOpenViduDevices = spyOn(service, 'initOpenViduDevices').and.callThrough(); +// const spyInitVideoDevices = spyOn(service, 'initVideoDevices').and.callThrough(); +// spyGetDevices = spyOn(service['OV'], 'getDevices').and.returnValue(Promise.resolve(OV_BOTH_DEVICES)); +// const spysaveCamToStorage = spyOn(service, 'saveCamToStorage').and.callThrough(); - spysaveCamToStorage.call(service, CUSTOM_VIDEO_DEVICES[1]); +// spysaveCamToStorage.call(service, CUSTOM_VIDEO_DEVICES[1]); - spyInitOpenViduDevices.call(service); - flush(); - expect(spyInitOpenViduDevices).toHaveBeenCalled(); +// spyInitOpenViduDevices.call(service); +// flush(); +// expect(spyInitOpenViduDevices).toHaveBeenCalled(); - spyInitVideoDevices.call(service); - expect(spyInitVideoDevices).toHaveBeenCalled(); - expect(service.hasVideoDeviceAvailable()).toBeTruthy(); +// spyInitVideoDevices.call(service); +// expect(spyInitVideoDevices).toHaveBeenCalled(); +// expect(service.hasVideoDeviceAvailable()).toBeTruthy(); - expect(service.getCamSelected()).toEqual(CUSTOM_VIDEO_DEVICES[1]); - })); -}); +// expect(service.getCamSelected()).toEqual(CUSTOM_VIDEO_DEVICES[1]); +// })); +// }); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/document/document.service.mock.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/document/document.service.mock.ts deleted file mode 100644 index a61d216d..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/document/document.service.mock.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { Injectable } from '@angular/core'; - -@Injectable() -export class DocumentServiceMock { - constructor() {} - - getHTMLElementByClassName(element: HTMLElement, className: string): HTMLElement { - return null; - } - - toggleFullscreen(elementId: string) {} - - removeAllBigElementClass() {} - - removeBigElementClass(element: HTMLElement | Element) {} - - toggleBigElementClass(element: HTMLElement | Element) {} - - isSmallElement(element: HTMLElement | Element): boolean { - return false; - } -} diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/document/document.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/document/document.service.spec.ts deleted file mode 100644 index 49475199..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/document/document.service.spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { DocumentService } from './document.service'; - -describe('DocumentService', () => { - let service: DocumentService; - - beforeEach(() => { - TestBed.configureTestingModule({}); - service = TestBed.inject(DocumentService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/layout/layout.service.mock.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/layout/layout.service.mock.ts deleted file mode 100644 index 9c7a7357..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/layout/layout.service.mock.ts +++ /dev/null @@ -1,36 +0,0 @@ -import { Injectable } from '@angular/core'; -import { BehaviorSubject, Observable } from 'rxjs'; -import { LayoutClass, OpenViduLayout, OpenViduLayoutOptions } from '../../models/layout.model'; -import { DocumentService } from '../document/document.service'; - -@Injectable({ - providedIn: 'root' -}) -export class LayoutServiceMock { - layoutWidthObs: Observable; - private _layoutWidthObs: BehaviorSubject = new BehaviorSubject(0); - private openviduLayout: OpenViduLayout; - private openviduLayoutOptions: OpenViduLayoutOptions; - - constructor() {} - - initialize(timeout: number = null) {} - - private _initialize() {} - - getOptions(): OpenViduLayoutOptions { - return null; - } - - update(timeout?: number) {} - - getLayout() { - return this.openviduLayout; - } - - clear() { - this.openviduLayout = null; - } - - private sendLayoutWidthEvent() {} -} diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/layout/layout.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/layout/layout.service.spec.ts deleted file mode 100644 index b493e93f..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/layout/layout.service.spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { LayoutService } from './layout.service'; - -describe('LayoutService', () => { - let service: LayoutService; - - beforeEach(() => { - TestBed.configureTestingModule({}); - service = TestBed.inject(LayoutService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/logger/logger.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/logger/logger.service.spec.ts deleted file mode 100644 index 51b7ace9..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/logger/logger.service.spec.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { TestBed } from '@angular/core/testing'; -import { LibraryConfigService } from '../library-config/library-config.service'; -import { LibraryConfigServiceMock } from '../library-config/library-config.service.mock'; - -import { LoggerService } from './logger.service'; - -describe('LoggerService', () => { - let service: LoggerService; - - beforeEach(() => { - TestBed.configureTestingModule({ - providers: [ - { provide: LibraryConfigService, useClass: LibraryConfigServiceMock }, - ] - }); - service = TestBed.inject(LoggerService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/openvidu/openvidu.service.mock.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/openvidu/openvidu.service.mock.ts deleted file mode 100644 index ca5e799e..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/openvidu/openvidu.service.mock.ts +++ /dev/null @@ -1,102 +0,0 @@ -import { Injectable } from '@angular/core'; -import { Session, PublisherProperties, OpenVidu, Publisher, Connection } from 'openvidu-browser'; -import { Signal } from '../../models/signal.model'; - -@Injectable({ - providedIn: 'root' -}) -export class OpenViduServiceMock { - private OV: OpenVidu = null; - private OVScreen: OpenVidu = null; - - private webcamSession: Session = null; - private screenSession: Session = null; - - private videoSource = undefined; - private audioSource = undefined; - - private screenMediaStream: MediaStream = null; - private webcamMediaStream: MediaStream = null; - - - constructor() {} - - initialize() {} - - initSessions() {} - - getWebcamSession(): Session { - return null; - } - - initializeWebcamSession(): void {} - - initializeScreenSession(): void {} - - getScreenSession(): Session { - return null; - } - - async connectWebcamSession(token: string): Promise {} - disconnectWebcamSession(): void {} - - async connectScreenSession(token: string): Promise {} - disconnectScreenSession(): void {} - - disconnect() {} - - initPublisher(targetElement: string | HTMLElement, properties: PublisherProperties): Publisher { - return null; - } - initPublisherAsync(targetElement: string | HTMLElement, properties: PublisherProperties): Promise { - return null; - } - - destroyWebcamPublisher(): void {} - - destroyScreenPublisher(): void {} - - async publishWebcamPublisher(): Promise {} - unpublishWebcamPublisher(): void {} - async publishScreenPublisher(): Promise {} - - unpublishScreenPublisher(): void {} - publishWebcamVideo(active: boolean): void {} - publishWebcamAudio(active: boolean): void {} - publishScreenAudio(active: boolean): void {} - replaceTrack(videoSource: string, audioSource: string, mirror: boolean = true): Promise { - return new Promise((resolve, reject) => {}); - } - - sendSignal(type: Signal, connection?: Connection, data?: any): void {} - - createPublisherProperties( - videoSource: string | MediaStreamTrack | boolean, - audioSource: string | MediaStreamTrack | boolean, - publishVideo: boolean, - publishAudio: boolean, - mirror: boolean - ): PublisherProperties { - return {}; - } - - async replaceScreenTrack() {} - - stopAudioTracks(mediaStream: MediaStream) {} - - stopVideoTracks(mediaStream: MediaStream) {} - - needSendNicknameSignal(): boolean { - return false; - } - - isMyOwnConnection(connectionId: string): boolean { - return false; - } - - getSessionOfUserConnected(): Session { - return null; - } - - private stopScreenTracks() {} -} diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/openvidu/openvidu.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/openvidu/openvidu.service.spec.ts deleted file mode 100644 index c3b02aab..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/openvidu/openvidu.service.spec.ts +++ /dev/null @@ -1,32 +0,0 @@ -import { TestBed } from '@angular/core/testing'; -import { LoggerService } from '../logger/logger.service'; -import { LoggerServiceMock } from '../logger/logger.service.mock'; - -import { LocalUserService } from '../local-user/local-user.service'; -import { LocalUserServiceMock } from '../local-user/local-user.service.mock'; -import { OpenViduService } from './openvidu.service'; -import { PlatformService } from '../platform/platform.service'; -import { PlatformServiceMock } from '../platform/platform.service.mock'; -import { LibraryConfigService } from '../library-config/library-config.service'; -import { LibraryConfigServiceMock } from '../library-config/library-config.service.mock'; - - -describe('OpenViduService', () => { - let service: OpenViduService; - - beforeEach(() => { - TestBed.configureTestingModule({ - providers: [ - { provide: LoggerService, useClass: LoggerServiceMock }, - { provide: LocalUserService, useClass: LocalUserServiceMock }, - { provide: PlatformService, useClass: PlatformServiceMock }, - { provide: LibraryConfigService, useClass: LibraryConfigServiceMock } - ] - }); - service = TestBed.inject(OpenViduService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/panel/panel.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/panel/panel.service.spec.ts deleted file mode 100644 index 86aa96d1..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/panel/panel.service.spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { PanelService } from './panel.service'; - -describe('SidenavMenuService', () => { - let service: PanelService; - - beforeEach(() => { - TestBed.configureTestingModule({}); - service = TestBed.inject(PanelService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/participant/participant.service.mock.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/participant/participant.service.mock.ts deleted file mode 100644 index db5bae4f..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/participant/participant.service.mock.ts +++ /dev/null @@ -1,94 +0,0 @@ -import { Injectable } from '@angular/core'; -import { Observable, BehaviorSubject } from 'rxjs'; -import { ParticipantModel } from '../../models/participant.model'; - - -@Injectable({ - providedIn: 'root' -}) -export class ParticipantServiceMock { - OVUsers: Observable; - screenShareState: Observable; - webcamVideoActive: Observable; - private _OVUsers = >new BehaviorSubject([]); - private _screenShareState = >new BehaviorSubject(false); - private _webcamVideoActive = >new BehaviorSubject(true); - - - constructor() { - this.OVUsers = this._OVUsers.asObservable(); - this.screenShareState = this._screenShareState.asObservable(); - this.webcamVideoActive = this._webcamVideoActive.asObservable(); - } - - initialize() {} - - - setWebcamPublisher(publisher: Publisher) {} - - getScreenPublisher(): Publisher { - return null; - } - - setScreenPublisher(publisher: Publisher) {} - - enableWebcamUser() {} - - disableWebcamUser() {} - - enableScreenUser(screenPublisher: Publisher) {} - - disableScreenUser() {} - - updateUsersStatus() {} - - clear() {} - - isMyCameraEnabled(): boolean { - return false; - } - - isOnlyMyScreenEnabled(): boolean { - return false; - } - - hasCameraVideoActive(): boolean { - return false; - } - - hasCameraAudioActive(): boolean { - return false; - } - - hasScreenAudioActive(): boolean { - return false; - } - - areBothEnabled(): boolean { - return false; - } - - isOnlyMyCameraEnabled(): boolean { - return false; - } - - isScreenShareEnabled(): boolean { - return false; - } - - updateUsersNickname(nickname: string) {} - - getWebcamAvatar(): string { - return ''; - } - - getWebcamNickname(): string { - return ''; - } - - getScreenNickname() {} - - resetUsersZoom() {} - - toggleZoom(connectionId: string) {} -} diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/participant/participant.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/participant/participant.service.spec.ts deleted file mode 100644 index 9d06461e..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/participant/participant.service.spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { ParticipantService } from './participant.service'; - -describe('ParticipantService', () => { - let service: ParticipantService; - - beforeEach(() => { - TestBed.configureTestingModule({}); - service = TestBed.inject(ParticipantService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/platform/platform.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/platform/platform.service.spec.ts deleted file mode 100644 index 85ecca9a..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/platform/platform.service.spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { PlatformService } from './platform.service'; - -describe('PlatformService', () => { - let service: PlatformService; - - beforeEach(() => { - TestBed.configureTestingModule({}); - service = TestBed.inject(PlatformService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/recording/recording.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/recording/recording.service.spec.ts deleted file mode 100644 index eb90f5d5..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/recording/recording.service.spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { RecordingService } from './recording.service'; - -describe('RecordingService', () => { - let service: RecordingService; - - beforeEach(() => { - TestBed.configureTestingModule({}); - service = TestBed.inject(RecordingService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/storage/storage.service.mock.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/storage/storage.service.mock.ts deleted file mode 100644 index 32147b8f..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/storage/storage.service.mock.ts +++ /dev/null @@ -1,18 +0,0 @@ -import { Injectable } from '@angular/core'; - -@Injectable() -export class StorageServiceMock { - store = {}; - - constructor() {} - - public set(key: string, item: any) { - this.store[key] = item; - } - public get(key: string): any { - return this.store[key] || '{}'; - } - public clear() { - this.store = {}; - } -} diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/storage/storage.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/storage/storage.service.spec.ts deleted file mode 100644 index 3788c5ae..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/storage/storage.service.spec.ts +++ /dev/null @@ -1,73 +0,0 @@ -import { TestBed } from '@angular/core/testing'; -import { LoggerService } from '../logger/logger.service'; -import { LoggerServiceMock } from '../logger/logger.service.mock'; - -import { StorageService } from './storage.service'; - -describe('StorageService', () => { - let service: StorageService; - const key = 'key'; - const item = 'item'; - let store = {}; - let spyStoreGetItem; - let spyStoreSetItem; - let spyStoreClear; - - beforeEach(() => { - TestBed.configureTestingModule({ providers: [{ provide: LoggerService, useClass: LoggerServiceMock }] }); - service = TestBed.inject(StorageService); - spyStoreGetItem = spyOn(window.localStorage, 'getItem').and.callFake((keyFake) => { - return store[keyFake] || '{}'; - }); - spyStoreSetItem = spyOn(window.localStorage, 'setItem').and.callFake((keyFake, value) => { - store[keyFake] = value; - }); - spyStoreClear = spyOn(window.localStorage, 'clear').and.callFake(() => { - store = {}; - }); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); - it('should be created', () => { - expect(service).toBeTruthy(); - }); - - it('should set an item', () => { - const spyServiceSet = spyOn(service, 'set').and.callThrough(); - - service.set(key, item); - - expect(spyServiceSet).toHaveBeenCalledWith(key, item); - }); - - it('should get an item added', () => { - const spyServiceSet = spyOn(service, 'set').and.callThrough(); - const spyServiceGet = spyOn(service, 'get').and.callThrough(); - - service.set(key, item); - expect(spyServiceSet).toHaveBeenCalledWith(key, item); - - const value = service.get(key); - expect(spyServiceGet).toHaveBeenCalledWith(key); - expect(value).toEqual(item); - }); - - it('should clear local storage', () => { - const spyServiceSet = spyOn(service, 'set').and.callThrough(); - const spyServiceGet = spyOn(service, 'get').and.callThrough(); - const spyServiceClear = spyOn(service, 'clear').and.callThrough(); - - service.set(key, item); - expect(spyServiceSet).toHaveBeenCalledWith(key, item); - - let value = service.get(key); - expect(spyServiceGet).toHaveBeenCalledWith(key); - expect(value).toEqual(item); - service.clear(); - expect(spyServiceClear).toHaveBeenCalled(); - value = service.get(key); - expect(value).toEqual(null); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/translate/translate.service.mock.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/translate/translate.service.mock.ts new file mode 100644 index 00000000..7c22f07d --- /dev/null +++ b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/translate/translate.service.mock.ts @@ -0,0 +1,44 @@ +import { Injectable } from '@angular/core'; +import { BehaviorSubject, Observable } from 'rxjs'; +import { LangOption } from '../../models/lang.model'; + +@Injectable({ + providedIn: 'root' +}) +export class TranslateServiceMock { + // Simulación de las opciones de lenguaje + private languageOptions: LangOption[] = [ + { name: 'English', lang: 'en' }, + { name: 'Español', lang: 'es' } + ]; + + // Comportamiento simulado del BehaviorSubject + private _selectedLanguageSubject: BehaviorSubject = new BehaviorSubject(this.languageOptions[0]); + selectedLanguageOption$: Observable = this._selectedLanguageSubject.asObservable(); + private activeTranslations: Record = { hello: 'Hello', goodbye: 'Goodbye' }; // Simulación de traducciones + + // Métodos simulados + addTranslations(translations: Partial>): void { + // Puedes agregar lógica para simular la adición de traducciones + } + + async setCurrentLanguage(lang: string): Promise { + const matchingOption = this.languageOptions.find(option => option.lang === lang); + if (matchingOption) { + this._selectedLanguageSubject.next(matchingOption); + } + } + + getSelectedLanguage(): LangOption { + return this._selectedLanguageSubject.getValue(); + } + + getAvailableLanguages(): LangOption[] { + return this.languageOptions; + } + + translate(key: string): string { + // Retorna la traducción simulada + return this.activeTranslations[key] || ''; + } +} diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/translate/translate.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/translate/translate.service.spec.ts deleted file mode 100644 index b88e2cdf..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/translate/translate.service.spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { TranslateService } from './translate.service'; - -describe('TranslateService', () => { - let service: TranslateService; - - beforeEach(() => { - TestBed.configureTestingModule({}); - service = TestBed.inject(TranslateService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/virtual-background/virtual-background.service.spec.ts b/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/virtual-background/virtual-background.service.spec.ts deleted file mode 100644 index 4a6573f8..00000000 --- a/openvidu-components-angular/projects/openvidu-components-angular/src/lib/services/virtual-background/virtual-background.service.spec.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { TestBed } from '@angular/core/testing'; - -import { VirtualBackgroundService } from './virtual-background.service'; - -describe('VirtualBackgroundService', () => { - let service: VirtualBackgroundService; - - beforeEach(() => { - TestBed.configureTestingModule({}); - service = TestBed.inject(VirtualBackgroundService); - }); - - it('should be created', () => { - expect(service).toBeTruthy(); - }); -}); diff --git a/openvidu-components-angular/projects/openvidu-components-angular/tsconfig.lib.json b/openvidu-components-angular/projects/openvidu-components-angular/tsconfig.lib.json index dd7afb16..86519a90 100644 --- a/openvidu-components-angular/projects/openvidu-components-angular/tsconfig.lib.json +++ b/openvidu-components-angular/projects/openvidu-components-angular/tsconfig.lib.json @@ -13,7 +13,7 @@ "declarationMap": true, "inlineSources": true, "resolveJsonModule": true, - "types": ["node"], + "types": ["jasmine", "node"], "allowSyntheticDefaultImports": true }, "exclude": ["node_modules", "src/test.ts", "**/*.spec.ts", "**/*.mock.ts"] diff --git a/openvidu-components-angular/projects/openvidu-components-angular/tsconfig.spec.json b/openvidu-components-angular/projects/openvidu-components-angular/tsconfig.spec.json index 05169c02..69045080 100644 --- a/openvidu-components-angular/projects/openvidu-components-angular/tsconfig.spec.json +++ b/openvidu-components-angular/projects/openvidu-components-angular/tsconfig.spec.json @@ -8,7 +8,8 @@ "node" ], "moduleResolution": "node", - "experimentalDecorators": true + "experimentalDecorators": true, + "resolveJsonModule": true }, "files": [ "src/test.ts" diff --git a/openvidu-components-angular/tsconfig.spec.json b/openvidu-components-angular/tsconfig.spec.json index d9e1f32b..b6d3eb42 100644 --- a/openvidu-components-angular/tsconfig.spec.json +++ b/openvidu-components-angular/tsconfig.spec.json @@ -4,7 +4,7 @@ "compilerOptions": { "outDir": "./out-tsc/spec", "types": [ - "jasmine" + "jasmine", "node" ] }, "files": [