e2e: update room creation logic to use roomName instead of roomIdPrefix and use roomId as identifier for elements in room list
This commit is contained in:
parent
459537ecfb
commit
adcd5d8e8d
@ -1,6 +1,7 @@
|
||||
import { expect, test } from '@playwright/test';
|
||||
import { MEET_TESTAPP_URL } from '../../config';
|
||||
import {
|
||||
createTestRoom,
|
||||
deleteAllRecordings,
|
||||
deleteAllRooms,
|
||||
joinRoomAs,
|
||||
@ -11,21 +12,12 @@ import {
|
||||
let subscribedToAppErrors = false;
|
||||
|
||||
test.describe('Web Component E2E Tests', () => {
|
||||
const testRoomPrefix = 'test-room';
|
||||
let roomId: string;
|
||||
let participantName: string;
|
||||
|
||||
test.beforeAll(async ({ browser }) => {
|
||||
test.beforeAll(async () => {
|
||||
// Create a test room before all tests
|
||||
const tempContext = await browser.newContext();
|
||||
const tempPage = await tempContext.newPage();
|
||||
await tempPage.goto(MEET_TESTAPP_URL);
|
||||
await tempPage.waitForSelector('.create-room');
|
||||
await tempPage.fill('#room-id-prefix', testRoomPrefix);
|
||||
await tempPage.click('.create-room-btn');
|
||||
await tempPage.waitForSelector(`#${testRoomPrefix}`);
|
||||
|
||||
await tempPage.close();
|
||||
await tempContext.close();
|
||||
roomId = await createTestRoom('test-room');
|
||||
});
|
||||
|
||||
test.beforeEach(async ({ page }) => {
|
||||
@ -38,7 +30,7 @@ test.describe('Web Component E2E Tests', () => {
|
||||
subscribedToAppErrors = true;
|
||||
}
|
||||
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
participantName = `P-${Math.random().toString(36).substring(2, 9)}`;
|
||||
});
|
||||
|
||||
|
||||
@ -5,6 +5,7 @@ import { PNG } from 'pngjs';
|
||||
import { MEET_TESTAPP_URL } from '../../config.js';
|
||||
import {
|
||||
applyVirtualBackground,
|
||||
createTestRoom,
|
||||
deleteAllRecordings,
|
||||
deleteAllRooms,
|
||||
interactWithElementInIframe,
|
||||
@ -22,26 +23,16 @@ let subscribedToAppErrors = false;
|
||||
|
||||
// Test suite for room functionality in OpenVidu Meet
|
||||
test.describe('Room Functionality Tests', () => {
|
||||
const testRoomPrefix = 'testing-room';
|
||||
let roomId: string;
|
||||
let participantName: string;
|
||||
|
||||
// ==========================================
|
||||
// SETUP & TEARDOWN
|
||||
// ==========================================
|
||||
|
||||
test.beforeAll(async ({ browser }) => {
|
||||
test.beforeAll(async () => {
|
||||
// Create a test room before all tests
|
||||
const tempContext = await browser.newContext();
|
||||
const tempPage = await tempContext.newPage();
|
||||
await tempPage.goto(MEET_TESTAPP_URL);
|
||||
await tempPage.waitForSelector('.create-room');
|
||||
await tempPage.fill('#room-id-prefix', testRoomPrefix);
|
||||
await tempPage.click('.create-room-btn');
|
||||
await tempPage.waitForTimeout(1000);
|
||||
await tempPage.waitForSelector(`#${testRoomPrefix}`);
|
||||
|
||||
await tempPage.close();
|
||||
await tempContext.close();
|
||||
roomId = await createTestRoom('test-room');
|
||||
});
|
||||
|
||||
test.beforeEach(async ({ page }) => {
|
||||
@ -54,7 +45,7 @@ test.describe('Room Functionality Tests', () => {
|
||||
subscribedToAppErrors = true;
|
||||
}
|
||||
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
participantName = `P-${Math.random().toString(36).substring(2, 9)}`;
|
||||
});
|
||||
|
||||
@ -121,7 +112,7 @@ test.describe('Room Functionality Tests', () => {
|
||||
// Second participant (moderator) joins
|
||||
const context = await browser.newContext();
|
||||
const moderatorPage = await context.newPage();
|
||||
await prepareForJoiningRoom(moderatorPage, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await prepareForJoiningRoom(moderatorPage, MEET_TESTAPP_URL, roomId);
|
||||
|
||||
await joinRoomAs('moderator', 'moderator', moderatorPage);
|
||||
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
import { expect, test } from '@playwright/test';
|
||||
import { MEET_TESTAPP_URL } from '../../config.js';
|
||||
import {
|
||||
createTestRoom,
|
||||
deleteAllRecordings,
|
||||
deleteAllRooms,
|
||||
joinRoomAs,
|
||||
@ -11,21 +12,12 @@ import {
|
||||
let subscribedToAppErrors = false;
|
||||
|
||||
test.describe('Web Component E2E Tests', () => {
|
||||
const testRoomPrefix = 'test-room';
|
||||
let roomId: string;
|
||||
let participantName: string;
|
||||
|
||||
test.beforeAll(async ({ browser }) => {
|
||||
test.beforeAll(async () => {
|
||||
// Create a test room before all tests
|
||||
const tempContext = await browser.newContext();
|
||||
const tempPage = await tempContext.newPage();
|
||||
await tempPage.goto(MEET_TESTAPP_URL);
|
||||
await tempPage.waitForSelector('.create-room');
|
||||
await tempPage.fill('#room-id-prefix', testRoomPrefix);
|
||||
await tempPage.click('.create-room-btn');
|
||||
await tempPage.waitForSelector(`#${testRoomPrefix}`);
|
||||
|
||||
await tempPage.close();
|
||||
await tempContext.close();
|
||||
roomId = await createTestRoom('test-room');
|
||||
});
|
||||
|
||||
test.beforeEach(async ({ page }) => {
|
||||
@ -38,7 +30,7 @@ test.describe('Web Component E2E Tests', () => {
|
||||
subscribedToAppErrors = true;
|
||||
}
|
||||
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
participantName = `P-${Math.random().toString(36).substring(2, 9)}`;
|
||||
});
|
||||
|
||||
|
||||
@ -20,22 +20,16 @@ let subscribedToAppErrors = false;
|
||||
let recordingCreated = false;
|
||||
|
||||
test.describe('Recording Access Tests', () => {
|
||||
const testRoomPrefix = 'recording-access-test';
|
||||
let participantName: string;
|
||||
let roomId: string;
|
||||
let participantName: string;
|
||||
let adminCookie: string;
|
||||
|
||||
test.beforeAll(async () => {
|
||||
// Login as admin to get authentication cookie
|
||||
adminCookie = await loginAsAdmin();
|
||||
// Ensure the test room is created before running tests
|
||||
roomId = await createTestRoom(testRoomPrefix, {
|
||||
chatPreferences: { enabled: true },
|
||||
recordingPreferences: {
|
||||
enabled: true,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: true }
|
||||
});
|
||||
|
||||
// Create a test room before all tests
|
||||
roomId = await createTestRoom('test-room');
|
||||
});
|
||||
|
||||
test.beforeEach(async ({ browser, page }) => {
|
||||
@ -53,7 +47,7 @@ test.describe('Recording Access Tests', () => {
|
||||
if (!recordingCreated) {
|
||||
const tempContext = await browser.newContext();
|
||||
const tempPage = await tempContext.newPage();
|
||||
await prepareForJoiningRoom(tempPage, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await prepareForJoiningRoom(tempPage, MEET_TESTAPP_URL, roomId);
|
||||
await joinRoomAs('moderator', participantName, tempPage);
|
||||
|
||||
await startStopRecording(tempPage, 'start');
|
||||
@ -92,7 +86,7 @@ test.describe('Recording Access Tests', () => {
|
||||
);
|
||||
|
||||
await page.goto(MEET_TESTAPP_URL);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
await accessRoomAs('moderator', page);
|
||||
|
||||
await waitForElementInIframe(page, '#view-recordings-btn', { state: 'hidden' });
|
||||
@ -113,7 +107,7 @@ test.describe('Recording Access Tests', () => {
|
||||
);
|
||||
|
||||
await page.goto(MEET_TESTAPP_URL);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
await accessRoomAs('publisher', page);
|
||||
|
||||
await waitForElementInIframe(page, '#view-recordings-btn', { state: 'hidden' });
|
||||
@ -134,7 +128,7 @@ test.describe('Recording Access Tests', () => {
|
||||
);
|
||||
|
||||
await page.goto(MEET_TESTAPP_URL);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
await viewRecordingsAs('moderator', page);
|
||||
|
||||
await waitForElementInIframe(page, 'app-room-recordings', { state: 'visible' });
|
||||
@ -155,7 +149,7 @@ test.describe('Recording Access Tests', () => {
|
||||
);
|
||||
|
||||
await page.goto(MEET_TESTAPP_URL);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
await accessRoomAs('publisher', page);
|
||||
|
||||
await waitForElementInIframe(page, '#view-recordings-btn', { state: 'hidden' });
|
||||
@ -176,7 +170,7 @@ test.describe('Recording Access Tests', () => {
|
||||
);
|
||||
|
||||
await page.goto(MEET_TESTAPP_URL);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
await viewRecordingsAs('moderator', page);
|
||||
|
||||
await waitForElementInIframe(page, 'app-room-recordings', { state: 'visible' });
|
||||
@ -197,7 +191,7 @@ test.describe('Recording Access Tests', () => {
|
||||
);
|
||||
|
||||
await page.goto(MEET_TESTAPP_URL);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
await viewRecordingsAs('publisher', page);
|
||||
|
||||
await waitForElementInIframe(page, 'app-room-recordings', { state: 'visible' });
|
||||
|
||||
@ -22,9 +22,8 @@ import {
|
||||
let subscribedToAppErrors = false;
|
||||
|
||||
test.describe('UI Feature Preferences Tests', () => {
|
||||
const testRoomPrefix = 'ui-feature-testing-room';
|
||||
let participantName: string;
|
||||
let roomId: string;
|
||||
let participantName: string;
|
||||
let adminCookie: string;
|
||||
|
||||
// ==========================================
|
||||
@ -34,6 +33,9 @@ test.describe('UI Feature Preferences Tests', () => {
|
||||
test.beforeAll(async () => {
|
||||
// Login as admin to get authentication cookie
|
||||
adminCookie = await loginAsAdmin();
|
||||
|
||||
// Create a test room before all tests
|
||||
roomId = await createTestRoom('test-room');
|
||||
});
|
||||
|
||||
test.beforeEach(async ({ page }) => {
|
||||
@ -71,17 +73,21 @@ test.describe('UI Feature Preferences Tests', () => {
|
||||
});
|
||||
|
||||
test('should show chat button when chat is enabled', async ({ page }) => {
|
||||
roomId = await createTestRoom(testRoomPrefix, {
|
||||
chatPreferences: { enabled: true },
|
||||
recordingPreferences: {
|
||||
enabled: true,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
await updateRoomPreferences(
|
||||
roomId,
|
||||
{
|
||||
chatPreferences: { enabled: true },
|
||||
recordingPreferences: {
|
||||
enabled: true,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: true }
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: true }
|
||||
});
|
||||
adminCookie
|
||||
);
|
||||
|
||||
await page.reload();
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await page.goto(MEET_TESTAPP_URL);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
await joinRoomAs('publisher', participantName, page);
|
||||
|
||||
// Check that chat button is visible
|
||||
@ -91,17 +97,21 @@ test.describe('UI Feature Preferences Tests', () => {
|
||||
|
||||
test('should hide chat button when chat is disabled', async ({ page }) => {
|
||||
// Disable chat via API
|
||||
roomId = await createTestRoom(testRoomPrefix, {
|
||||
chatPreferences: { enabled: false },
|
||||
recordingPreferences: {
|
||||
enabled: true,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
await updateRoomPreferences(
|
||||
roomId,
|
||||
{
|
||||
chatPreferences: { enabled: false },
|
||||
recordingPreferences: {
|
||||
enabled: true,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: true }
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: true }
|
||||
});
|
||||
adminCookie
|
||||
);
|
||||
|
||||
await page.reload();
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await page.goto(MEET_TESTAPP_URL);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
await joinRoomAs('publisher', participantName, page);
|
||||
|
||||
// Check that chat button is not visible
|
||||
@ -116,17 +126,21 @@ test.describe('UI Feature Preferences Tests', () => {
|
||||
|
||||
test.describe('Recording Feature', () => {
|
||||
test('should show recording button for moderators', async ({ page }) => {
|
||||
roomId = await createTestRoom(testRoomPrefix, {
|
||||
chatPreferences: { enabled: true },
|
||||
recordingPreferences: {
|
||||
enabled: true,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
await updateRoomPreferences(
|
||||
roomId,
|
||||
{
|
||||
chatPreferences: { enabled: true },
|
||||
recordingPreferences: {
|
||||
enabled: true,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: true }
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: true }
|
||||
});
|
||||
adminCookie
|
||||
);
|
||||
|
||||
await page.reload();
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await page.goto(MEET_TESTAPP_URL);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
await joinRoomAs('moderator', participantName, page);
|
||||
|
||||
await openMoreOptionsMenu(page);
|
||||
@ -146,17 +160,21 @@ test.describe('UI Feature Preferences Tests', () => {
|
||||
});
|
||||
|
||||
test('should not show recording button for publisher', async ({ page }) => {
|
||||
roomId = await createTestRoom(testRoomPrefix, {
|
||||
chatPreferences: { enabled: true },
|
||||
recordingPreferences: {
|
||||
enabled: true,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
await updateRoomPreferences(
|
||||
roomId,
|
||||
{
|
||||
chatPreferences: { enabled: true },
|
||||
recordingPreferences: {
|
||||
enabled: true,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: true }
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: true }
|
||||
});
|
||||
adminCookie
|
||||
);
|
||||
|
||||
await page.reload();
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await page.goto(MEET_TESTAPP_URL);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
await joinRoomAs('publisher', participantName, page);
|
||||
|
||||
// Check that recording button is not visible for publisher
|
||||
@ -167,17 +185,21 @@ test.describe('UI Feature Preferences Tests', () => {
|
||||
|
||||
test('should not show recording button for moderators when recording is disabled', async ({ page }) => {
|
||||
// Disable recording via API
|
||||
roomId = await createTestRoom(testRoomPrefix, {
|
||||
chatPreferences: { enabled: true },
|
||||
recordingPreferences: {
|
||||
enabled: false,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
await updateRoomPreferences(
|
||||
roomId,
|
||||
{
|
||||
chatPreferences: { enabled: true },
|
||||
recordingPreferences: {
|
||||
enabled: false,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: true }
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: true }
|
||||
});
|
||||
adminCookie
|
||||
);
|
||||
|
||||
await page.reload();
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await page.goto(MEET_TESTAPP_URL);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
await joinRoomAs('moderator', participantName, page);
|
||||
|
||||
// Check that recording button is not visible
|
||||
@ -204,17 +226,21 @@ test.describe('UI Feature Preferences Tests', () => {
|
||||
});
|
||||
test('should show virtual background button when enabled', async ({ page }) => {
|
||||
// Ensure virtual backgrounds are enabled
|
||||
roomId = await createTestRoom(testRoomPrefix, {
|
||||
chatPreferences: { enabled: true },
|
||||
recordingPreferences: {
|
||||
enabled: true,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
await updateRoomPreferences(
|
||||
roomId,
|
||||
{
|
||||
chatPreferences: { enabled: true },
|
||||
recordingPreferences: {
|
||||
enabled: true,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: true }
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: true }
|
||||
});
|
||||
adminCookie
|
||||
);
|
||||
|
||||
await page.reload();
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await page.goto(MEET_TESTAPP_URL);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
await joinRoomAs('publisher', participantName, page);
|
||||
|
||||
// Click more options to reveal virtual background button
|
||||
@ -229,17 +255,21 @@ test.describe('UI Feature Preferences Tests', () => {
|
||||
|
||||
test('should hide virtual background button when disabled', async ({ page }) => {
|
||||
// Disable virtual backgrounds via API
|
||||
roomId = await createTestRoom(testRoomPrefix, {
|
||||
chatPreferences: { enabled: true },
|
||||
recordingPreferences: {
|
||||
enabled: true,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
await updateRoomPreferences(
|
||||
roomId,
|
||||
{
|
||||
chatPreferences: { enabled: true },
|
||||
recordingPreferences: {
|
||||
enabled: true,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: false }
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: false }
|
||||
});
|
||||
adminCookie
|
||||
);
|
||||
|
||||
await page.reload();
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await page.goto(MEET_TESTAPP_URL);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
await joinRoomAs('publisher', participantName, page);
|
||||
|
||||
// Click more options to reveal virtual background button
|
||||
@ -254,17 +284,21 @@ test.describe('UI Feature Preferences Tests', () => {
|
||||
page
|
||||
}) => {
|
||||
// Ensure virtual backgrounds are enabled
|
||||
roomId = await createTestRoom(testRoomPrefix, {
|
||||
chatPreferences: { enabled: true },
|
||||
recordingPreferences: {
|
||||
enabled: true,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
await updateRoomPreferences(
|
||||
roomId,
|
||||
{
|
||||
chatPreferences: { enabled: true },
|
||||
recordingPreferences: {
|
||||
enabled: true,
|
||||
allowAccessTo: MeetRecordingAccess.ADMIN_MODERATOR_PUBLISHER
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: true }
|
||||
},
|
||||
virtualBackgroundPreferences: { enabled: true }
|
||||
});
|
||||
adminCookie
|
||||
);
|
||||
|
||||
await page.reload();
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await page.goto(MEET_TESTAPP_URL);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
await joinRoomAs('publisher', participantName, page);
|
||||
|
||||
await applyVirtualBackground(page, '2');
|
||||
@ -288,7 +322,7 @@ test.describe('UI Feature Preferences Tests', () => {
|
||||
await leaveRoom(page);
|
||||
await page.reload();
|
||||
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, testRoomPrefix);
|
||||
await prepareForJoiningRoom(page, MEET_TESTAPP_URL, roomId);
|
||||
await joinRoomAs('publisher', participantName, page);
|
||||
await page.waitForTimeout(2000);
|
||||
|
||||
|
||||
@ -100,7 +100,7 @@ const getDefaultRoomPreferences = (): MeetRoomPreferences => ({
|
||||
|
||||
// Helper function to create a room for testing
|
||||
export const createTestRoom = async (
|
||||
roomIdPrefix: string,
|
||||
roomName: string,
|
||||
preferences: MeetRoomPreferences = getDefaultRoomPreferences()
|
||||
) => {
|
||||
const response = await fetch(`${MEET_API_URL}/api/v1/rooms`, {
|
||||
@ -110,7 +110,7 @@ export const createTestRoom = async (
|
||||
'x-api-key': MEET_API_KEY
|
||||
},
|
||||
body: JSON.stringify({
|
||||
roomIdPrefix,
|
||||
roomName,
|
||||
autoDeletionDate: new Date(Date.now() + 61 * 60 * 1000).getTime(), // 1 hour from now
|
||||
preferences
|
||||
})
|
||||
@ -128,7 +128,7 @@ export const createTestRoom = async (
|
||||
|
||||
// Helper function to update room preferences via REST API
|
||||
export const updateRoomPreferences = async (roomId: string, preferences: any, adminCookie: string) => {
|
||||
const response = await fetch(`${MEET_API_URL}/internal-api/v1/rooms/${roomId}`, {
|
||||
const response = await fetch(`${MEET_API_URL}/api/v1/rooms/${roomId}`, {
|
||||
method: 'PUT',
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
@ -216,10 +216,10 @@ export const startStopRecording = async (page: Page, action: 'start' | 'stop') =
|
||||
}
|
||||
};
|
||||
|
||||
export const prepareForJoiningRoom = async (page: Page, url: string, roomPrefix: string) => {
|
||||
export const prepareForJoiningRoom = async (page: Page, url: string, roomId: string) => {
|
||||
await page.goto(url);
|
||||
await page.waitForSelector('.rooms-container');
|
||||
await page.waitForSelector(`#${roomPrefix}`);
|
||||
await page.waitForSelector(`#${roomId}`);
|
||||
await page.click('.dropdown-button');
|
||||
await page.waitForSelector('#join-as-moderator');
|
||||
await page.waitForSelector('#join-as-publisher');
|
||||
|
||||
@ -50,7 +50,7 @@
|
||||
<ul class="list-group">
|
||||
{{#rooms}}
|
||||
<li
|
||||
id="{{ roomIdPrefix }}"
|
||||
id="{{ roomId }}"
|
||||
class="list-group-item d-flex justify-content-between align-items-center"
|
||||
>
|
||||
<span>{{ roomId }}</span>
|
||||
@ -159,13 +159,11 @@
|
||||
<!-- Basic Information -->
|
||||
<div class="form-section">
|
||||
<div class="mb-3">
|
||||
<label for="room-id-prefix" class="form-label"
|
||||
>Room Prefix *</label
|
||||
>
|
||||
<label for="room-name" class="form-label">Room Name *</label>
|
||||
<input
|
||||
type="text"
|
||||
name="roomIdPrefix"
|
||||
id="room-id-prefix"
|
||||
name="roomName"
|
||||
id="room-name"
|
||||
class="form-control"
|
||||
placeholder="e.g. Team meeting"
|
||||
required
|
||||
@ -173,9 +171,7 @@
|
||||
</div>
|
||||
|
||||
<div class="mb-3">
|
||||
<label for="expiration-date" class="form-label"
|
||||
>Expiration Date</label
|
||||
>
|
||||
<label for="expiration-date" class="form-label">Expiration Date</label>
|
||||
<input
|
||||
type="date"
|
||||
name="autoDeletionDate"
|
||||
|
||||
@ -34,13 +34,13 @@ export const getHome = async (_req: Request, res: Response) => {
|
||||
export const postCreateRoom = async (req: Request, res: Response) => {
|
||||
try {
|
||||
console.log('Creating room with body:', JSON.stringify(req.body, null, 2));
|
||||
const { roomIdPrefix, autoDeletionDate } = req.body;
|
||||
const { roomName, autoDeletionDate } = req.body;
|
||||
const preferences = processFormPreferences(req.body);
|
||||
|
||||
console.log('Processed preferences:', JSON.stringify(preferences, null, 2));
|
||||
console.log('Room creation parameters:', { roomIdPrefix, autoDeletionDate });
|
||||
console.log('Room creation parameters:', { roomName, autoDeletionDate });
|
||||
|
||||
const result = await createRoom({ roomIdPrefix, autoDeletionDate, preferences });
|
||||
const result = await createRoom({ roomName, autoDeletionDate, preferences });
|
||||
console.log('Room created successfully:', result);
|
||||
res.redirect('/');
|
||||
} catch (error) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user