openvidu-components: Added e2e test

pull/743/head
csantosm 2022-07-14 09:38:08 +02:00
parent 1122fb8649
commit 51c8eb27e6
2 changed files with 37 additions and 4 deletions

View File

@ -22,6 +22,7 @@ var RECORDING_ERROR;
var TOOLBAR_SETTINGS_BUTTON; var TOOLBAR_SETTINGS_BUTTON;
var CAPTIONS_BUTTON; var CAPTIONS_BUTTON;
var SINGLE_TOKEN;
var SESSION_NAME; var SESSION_NAME;
var PARTICIPANT_NAME; var PARTICIPANT_NAME;
@ -29,6 +30,11 @@ var PARTICIPANT_NAME;
$(document).ready(() => { $(document).ready(() => {
var url = new URL(window.location.href); var url = new URL(window.location.href);
SINGLE_TOKEN = url.searchParams.get("singleToken") === null ? false : url.searchParams.get("singleToken") === 'true';
// Directives
MINIMAL = url.searchParams.get("minimal") === null ? false : url.searchParams.get("minimal") === 'true'; MINIMAL = url.searchParams.get("minimal") === null ? false : url.searchParams.get("minimal") === 'true';
PARTICIPANT_NAME = url.searchParams.get("participantName") || 'TEST_USER'; PARTICIPANT_NAME = url.searchParams.get("participantName") || 'TEST_USER';
PREJOIN = url.searchParams.get("prejoin") === null ? true : url.searchParams.get("prejoin") === 'true'; PREJOIN = url.searchParams.get("prejoin") === null ? true : url.searchParams.get("prejoin") === 'true';
@ -139,7 +145,14 @@ function appendElement(id) {
async function joinSession(sessionName, participantName) { async function joinSession(sessionName, participantName) {
var webComponent = document.querySelector('openvidu-webcomponent'); var webComponent = document.querySelector('openvidu-webcomponent');
var tokens = {webcam: await getToken(sessionName), screen: await getToken(sessionName)}; var tokens;
if (SINGLE_TOKEN){
tokens = await getToken(sessionName);
} else {
tokens = {webcam: await getToken(sessionName), screen: await getToken(sessionName)};
}
webComponent.minimal = MINIMAL; webComponent.minimal = MINIMAL;
webComponent.prejoin = PREJOIN; webComponent.prejoin = PREJOIN;

View File

@ -24,6 +24,29 @@ describe('Testing API Directives', () => {
await browser.quit(); await browser.quit();
}); });
it('should join with ONLY ONE TOKEN', async () => {
let element;
await browser.get(`${url}?singleToken=true`);
// Checking if prejoin page exist
element = await browser.wait(until.elementLocated(By.id('prejoin-container')), TIMEOUT);
expect(await element.isDisplayed()).to.be.true;
const joinButton = await browser.findElement(By.id('join-button'));
expect(await joinButton.isDisplayed()).to.be.true;
await joinButton.click();
// Checking if session container is present
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;
// Checking if screenshare button is not present
element = await browser.findElements(By.id('screenshare-btn'));
expect(element.length).equals(0);
});
it('should set the MINIMAL UI', async () => { it('should set the MINIMAL UI', async () => {
let element; let element;
await browser.get(`${url}?minimal=true`); await browser.get(`${url}?minimal=true`);
@ -284,7 +307,6 @@ describe('Testing API Directives', () => {
expect(await element.isDisplayed()).to.be.true; expect(await element.isDisplayed()).to.be.true;
element = await browser.findElements(By.id('subtitles-opt')); element = await browser.findElements(By.id('subtitles-opt'));
expect(element.length).equals(0); expect(element.length).equals(0);
}); });
it('should HIDE the TOOLBAR SETTINGS button', async () => { it('should HIDE the TOOLBAR SETTINGS button', async () => {
@ -904,7 +926,6 @@ describe('Testing videoconference EVENTS', () => {
await element.click(); await element.click();
element = await browser.wait(until.elementLocated(By.id('onActivitiesPanelDeleteRecordingClicked')), TIMEOUT); element = await browser.wait(until.elementLocated(By.id('onActivitiesPanelDeleteRecordingClicked')), TIMEOUT);
expect(await element.isDisplayed()).to.be.true; expect(await element.isDisplayed()).to.be.true;
}); });
it('should receive the onSessionCreated event', async () => { it('should receive the onSessionCreated event', async () => {
@ -1288,7 +1309,6 @@ describe('Testing panel toggling', () => {
element = await browser.wait(until.elementLocated(By.className('sidenav-menu')), TIMEOUT); element = await browser.wait(until.elementLocated(By.className('sidenav-menu')), TIMEOUT);
element = await browser.findElements(By.id('default-settings-panel')); element = await browser.findElements(By.id('default-settings-panel'));
expect(element.length).equals(1); expect(element.length).equals(1);
}); });
it('should switching between PARTICIPANTS and CHAT panels', async () => { it('should switching between PARTICIPANTS and CHAT panels', async () => {