Compare commits

...

3 Commits

Author SHA1 Message Date
damencho
c6e1a12d52 feat(tests): Return early if jaas tests not configured. 2025-08-22 12:02:19 -05:00
damencho
5a00fde865 feat(tests): Make sure we add a single listener for iframeAPI events. 2025-08-22 12:02:19 -05:00
damencho
e14ffe55da feat(tests): Clear previous videoConferenceLeft events. 2025-08-22 12:02:19 -05:00
3 changed files with 15 additions and 5 deletions

View File

@@ -41,6 +41,10 @@ export default class IframeAPI extends BasePageObject {
addEventListener(eventName: string) {
return this.participant.execute(
(event, prefix) => {
// we want to add it once as we use static .test[event] to store the last event
if (window.jitsiAPI.listenerCount(event) > 0) {
return;
}
console.log(`${new Date().toISOString()} ${prefix}iframeAPI - Adding listener for event: ${event}`);
window.jitsiAPI.addListener(event, evt => {
console.log(

View File

@@ -246,6 +246,8 @@ describe('Participants presence', () => {
await p1.getIframeAPI().addEventListener('participantKickedOut');
await p2.getIframeAPI().addEventListener('participantKickedOut');
await p2.getIframeAPI().clearEventResults('videoConferenceLeft');
await p2.getIframeAPI().addEventListener('videoConferenceLeft');
await p1.getIframeAPI().executeCommand('kickParticipant', p2EpId);
@@ -382,6 +384,7 @@ describe('Participants presence', () => {
await p1.switchToAPI();
await p2.switchToAPI();
await p2.getIframeAPI().clearEventResults('videoConferenceLeft');
await p2.getIframeAPI().addEventListener('videoConferenceLeft');
await p2.getIframeAPI().addEventListener('readyToClose');
@@ -411,6 +414,7 @@ describe('Participants presence', () => {
await p1.switchToAPI();
await p1.getIframeAPI().clearEventResults('videoConferenceLeft');
await p1.getIframeAPI().addEventListener('videoConferenceLeft');
await p1.getIframeAPI().addEventListener('readyToClose');

View File

@@ -211,6 +211,13 @@ export const config: WebdriverIO.MultiremoteConfig = {
} as IContext;
globalAny.ctx.testProperties = testProperties;
if (testProperties.useJaas && !testsConfig.jaas.enabled) {
console.warn(`JaaS is not configured, skipping ${testName}.`);
globalAny.ctx.skipSuiteTests = true;
return;
}
await Promise.all(multiremotebrowser.instances.map(async (instance: string) => {
const bInstance = multiremotebrowser.getInstance(instance);
@@ -252,11 +259,6 @@ export const config: WebdriverIO.MultiremoteConfig = {
console.warn(`WebhookProxy is not available, skipping ${testName}`);
globalAny.ctx.skipSuiteTests = true;
}
if (testProperties.useJaas && !testsConfig.jaas.enabled) {
console.warn(`JaaS is not configured, skipping ${testName}.`);
globalAny.ctx.skipSuiteTests = true;
}
},
after() {