openvidu-components-e2e: Added settings button test

pull/739/head
csantosm 2022-06-16 15:56:57 +02:00
parent 2c200d4d86
commit a1d55575fd
2 changed files with 60 additions and 2 deletions

View File

@ -19,6 +19,7 @@ var PARTICIPANT_MUTE_BUTTON;
var PARTICIPANTS_PANEL_BUTTON;
var ACTIVITIES_RECORDING_ACTIVITY;
var RECORDING_ERROR;
var TOOLBAR_SETTINGS_BUTTON;
var SESSION_NAME;
@ -35,6 +36,8 @@ $(document).ready(() => {
SCREENSHARE_BUTTON = url.searchParams.get("screenshareBtn") === null ? true : url.searchParams.get("screenshareBtn") === 'true';
RECORDING_BUTTON = url.searchParams.get("recordingBtn") === null ? true : url.searchParams.get("recordingBtn") === 'true';
FULLSCREEN_BUTTON = url.searchParams.get("fullscreenBtn") === null ? true : url.searchParams.get("fullscreenBtn") === 'true';
TOOLBAR_SETTINGS_BUTTON = url.searchParams.get("toolbarSettingsBtn") === null ? true : url.searchParams.get("toolbarSettingsBtn") === 'true';
LEAVE_BUTTON = url.searchParams.get("leaveBtn") === null ? true : url.searchParams.get("leaveBtn") === 'true';
ACTIVITIES_PANEL_BUTTON = url.searchParams.get("activitiesPanelBtn") === null ? true : url.searchParams.get("activitiesPanelBtn") === 'true';
CHAT_PANEL_BUTTON = url.searchParams.get("chatPanelBtn") === null ? true : url.searchParams.get("chatPanelBtn") === 'true';
@ -52,7 +55,7 @@ $(document).ready(() => {
PARTICIPANT_MUTE_BUTTON = url.searchParams.get("participantMuteBtn") === null ? true : url.searchParams.get("participantMuteBtn") === 'true';
SESSION_NAME = url.searchParams.get("sessionName") === null ? `E2ESession${Math.floor(Math.random()*100)}` : url.searchParams.get("sessionName");
SESSION_NAME = url.searchParams.get("sessionName") === null ? `E2ESession${Math.floor(Date.now())}` : url.searchParams.get("sessionName");
var webComponent = document.querySelector('openvidu-webcomponent');
@ -145,6 +148,7 @@ async function joinSession(sessionName, participantName) {
webComponent.toolbarScreenshareButton = SCREENSHARE_BUTTON;
webComponent.toolbarFullscreenButton = FULLSCREEN_BUTTON;
webComponent.toolbarSettingsButton = TOOLBAR_SETTINGS_BUTTON;
webComponent.toolbarLeaveButton = LEAVE_BUTTON;
webComponent.toolbarRecordingButton = RECORDING_BUTTON;
webComponent.toolbarActivitiesPanelButton = ACTIVITIES_PANEL_BUTTON;

View File

@ -252,6 +252,29 @@ describe('Testing API Directives', () => {
expect(element.length).equals(0);
});
it('should HIDE the TOOLBAR SETTINGS button', async () => {
let element;
await browser.get(`${url}?prejoin=false&toolbarSettingsBtn=false`);
element = await browser.wait(until.elementLocated(By.id('session-container')), TIMEOUT);
expect(await element.isDisplayed()).to.be.true;
// Checking if toolbar is present
element = await browser.wait(until.elementLocated(By.id('media-buttons-container')), TIMEOUT);
expect(await element.isDisplayed()).to.be.true;
// Open more options menu
element = await browser.wait(until.elementLocated(By.id('more-options-btn')), TIMEOUT);
await element.click();
await browser.sleep(500);
// Checking if fullscreen button is not present
element = await browser.wait(until.elementLocated(By.className('mat-menu-content')), TIMEOUT);
expect(await element.isDisplayed()).to.be.true;
element = await browser.findElements(By.id('toolbar-settings-btn'));
expect(element.length).equals(0);
});
it('should HIDE the LEAVE button', async () => {
let element;
await browser.get(`${url}?prejoin=false&leaveBtn=false`);
@ -372,7 +395,7 @@ describe('Testing API Directives', () => {
expect(element.length).equals(0);
});
it('should HIDE the SETTINGS button', async () => {
it('should HIDE the STREAM SETTINGS button', async () => {
let element;
await browser.get(`${url}?prejoin=false&settingsBtn=false`);
element = await browser.wait(until.elementLocated(By.id('session-container')), TIMEOUT);
@ -1178,6 +1201,37 @@ describe('Testing panel toggling', () => {
expect(element.length).equals(0);
});
it('should toggle SETTINGS panel', async () => {
let element;
await browser.get(`${url}?prejoin=false`);
element = await browser.wait(until.elementLocated(By.id('layout')), TIMEOUT);
expect(await element.isDisplayed()).to.be.true;
// Checking if toolbar is present
element = await browser.wait(until.elementLocated(By.id('media-buttons-container')), TIMEOUT);
expect(await element.isDisplayed()).to.be.true;
// Open more options menu
element = await browser.wait(until.elementLocated(By.id('more-options-btn')), TIMEOUT);
await element.click();
await browser.sleep(500);
// Checking if mat menu is present
element = await browser.wait(until.elementLocated(By.className('mat-menu-content')), TIMEOUT);
expect(await element.isDisplayed()).to.be.true;
// Get settings button and click into it
const activitiesBtn = await browser.findElement(By.id('toolbar-settings-btn'));
expect(await activitiesBtn.isDisplayed()).to.be.true;
await activitiesBtn.click();
element = await browser.wait(until.elementLocated(By.className('sidenav-menu')), TIMEOUT);
element = await browser.findElements(By.id('default-settings-panel'));
expect(element.length).equals(1);
});
it('should switching between PARTICIPANTS and CHAT panels', async () => {
let element;
await browser.get(`${url}?prejoin=false`);