mirror of
https://gitcode.com/GitHub_Trending/ji/jitsi-meet.git
synced 2025-12-30 11:22:31 +00:00
* feat(tests): First test from torture to meet.
* squash: Fixes logging as per comments.
* squash: Fixes some eslint errors.
* squash: Drop no needed await and async declarations.
* squash: Simplify syntax.
* squash: Disable blur everywhere not only FF.
* squash: Use allSettled.
* squash: Prettify intervals and timeouts.
* squash: Use uuids for torture rooms.
* squash: Introduce helper methods in Participant for toolbar and filmstrip.
* squash: Changes headless resolution to a standard 720p.
* squash: Adds env BASE_URL.
* squash: Fix some eslint errors.
* squash: Fix js error.
* squash: Fix participant logs.
* squash: Move bag to Promise.all.
* squash: More types thing.
* squash: Fix more ts errors.
* squash: Bumps version to include 6d146cd332
* squash: More ts stuff.
* squash: Fixes last ts errors.
* squash: Drop eslint rule.
* squash: Update default configs.
* squash: Drop and docs eslint.
47 lines
1.5 KiB
TypeScript
47 lines
1.5 KiB
TypeScript
import { Participant } from '../helpers/Participant';
|
|
|
|
/**
|
|
* Filmstrip elements.
|
|
*/
|
|
export default class Filmstrip {
|
|
private participant: Participant;
|
|
|
|
/**
|
|
* Initializes for a participant.
|
|
*
|
|
* @param {Participant} participant - The participant.
|
|
*/
|
|
constructor(participant: Participant) {
|
|
this.participant = participant;
|
|
}
|
|
|
|
/**
|
|
* Asserts that {@code participant} shows or doesn't show the audio
|
|
* mute icon for the conference participant identified by
|
|
* {@code testee}.
|
|
*
|
|
* @param {Participant} testee - The {@code WebParticipant} for whom we're checking the status of audio muted icon.
|
|
* @param {boolean} reverse - If {@code true}, the method will assert the absence of the "mute" icon;
|
|
* otherwise, it will assert its presence.
|
|
* @returns {Promise<void>}
|
|
*/
|
|
async assertAudioMuteIconIsDisplayed(testee: Participant, reverse = false) {
|
|
let id;
|
|
|
|
if (testee === this.participant) {
|
|
id = 'localVideoContainer';
|
|
} else {
|
|
id = `participant_${await testee.getEndpointId()}`;
|
|
}
|
|
|
|
const mutedIconXPath
|
|
= `//span[@id='${id}']//span[contains(@id, 'audioMuted')]//*[local-name()='svg' and @id='mic-disabled']`;
|
|
|
|
await this.participant.driver.$(mutedIconXPath).waitForDisplayed({
|
|
reverse,
|
|
timeout: 2000,
|
|
timeoutMsg: `Audio mute icon is not displayed for ${testee.name}`
|
|
});
|
|
}
|
|
}
|