bigbluebutton-Github/bigbluebutton-tests/playwright/user/user.spec.js

91 lines
3.9 KiB
JavaScript
Raw Normal View History

2021-12-10 21:30:29 +08:00
const { test, devices } = require('@playwright/test');
const { Status } = require('./status');
const { MultiUsers } = require('./multiusers');
2022-01-20 03:50:59 +08:00
const { GuestPolicy } = require('./guestPolicy');
const { MobileDevices } = require('./mobileDevices');
2021-12-10 21:30:29 +08:00
const motoG4 = devices['Moto G4'];
const iPhone11 = devices['iPhone 11'];
2022-01-20 03:50:59 +08:00
test.describe.parallel('User', () => {
test('Change user status', async ({ browser, page }) => {
const status = new Status(browser, page);
await status.init(true, true);
2022-01-20 03:50:59 +08:00
await status.changeUserStatus();
});
test('User presence check (multiple users)', async ({ browser, context, page }) => {
2021-12-01 13:35:41 +08:00
const multiusers = new MultiUsers(browser, context);
await multiusers.initPages(page);
2021-11-23 05:51:16 +08:00
await multiusers.userPresence();
});
2021-12-10 21:30:29 +08:00
test('Raise and lower Hand Toast', async ({ browser, context, page }) => {
const multiusers = new MultiUsers(browser, context);
await multiusers.initPages(page);
await multiusers.raiseHandTest();
await multiusers.getAvatarColorAndCompareWithUserListItem();
await multiusers.lowerHandTest();
});
2022-01-20 03:50:59 +08:00
test.describe.parallel('Guest policy', () => {
test('Guest policy: ASK_MODERATOR', async ({ browser, context, page }) => {
const guestPolicy = new GuestPolicy(browser, context);
await guestPolicy.initModPage(page);
await guestPolicy.askModerator();
});
2021-12-10 21:30:29 +08:00
2022-01-20 03:50:59 +08:00
test('Guest policy: ALWAYS_ACCEPT', async ({ browser, context, page }) => {
const guestPolicy = new GuestPolicy(browser, context);
await guestPolicy.initModPage(page);
await guestPolicy.alwaysAccept();
});
2021-12-10 21:30:29 +08:00
2022-01-20 03:50:59 +08:00
test('Guest policy: ALWAYS_DENY', async ({ browser, context, page }) => {
const guestPolicy = new GuestPolicy(browser, context);
await guestPolicy.initModPage(page);
await guestPolicy.alwaysDeny();
});
2021-12-10 21:30:29 +08:00
});
2022-01-20 03:50:59 +08:00
test.describe.parallel('Mobile devices', () => {
test('Mobile Tag Name For Mobile User', async ({ browser }) => {
const context = await browser.newContext({ ...iPhone11 });
const mobilePage = await context.newPage();
const mobileDevices = new MobileDevices(browser, context);
await mobileDevices.initModPage(mobilePage);
await mobileDevices.mobileTagName();
});
2021-12-10 21:30:29 +08:00
2022-01-20 03:50:59 +08:00
test('Whiteboard should not be accessible when chat panel or userlist are active on mobile devices', async ({ browser }) => {
test.fixme();
const iphoneContext = await browser.newContext({ ...iPhone11 });
const motoContext = await browser.newContext({ ...motoG4 });
const modPage = await iphoneContext.newPage();
const mobileDevices = new MobileDevices(browser, iphoneContext);
await mobileDevices.initModPage(modPage);
await mobileDevices.initUserPage(true, motoContext);
await mobileDevices.whiteboardNotAppearOnMobile();
});
test('Userslist should not appear when Chat Panel or Whiteboard are active on mobile devices', async ({ browser }) => {
const iphoneContext = await browser.newContext({ ...iPhone11 });
const motoContext = await browser.newContext({ ...motoG4 });
const modPage = await iphoneContext.newPage();
const mobileDevices = new MobileDevices(browser, iphoneContext);
await mobileDevices.initModPage(modPage);
await mobileDevices.initUserPage(true, motoContext);
await mobileDevices.userlistNotAppearOnMobile();
});
2021-12-10 21:30:29 +08:00
2022-01-20 03:50:59 +08:00
test('Chat Panel should not appear when Userlist or Whiteboard are active on mobile devices', async ({ browser }) => {
const iphoneContext = await browser.newContext({ ...iPhone11 });
const motoContext = await browser.newContext({ ...motoG4 });
const modPage = await iphoneContext.newPage();
const mobileDevices = new MobileDevices(browser, iphoneContext);
await mobileDevices.initModPage(modPage);
await mobileDevices.initUserPage(true, motoContext);
await mobileDevices.chatPanelNotAppearOnMobile();
});
2021-12-10 21:30:29 +08:00
});
2021-11-03 06:50:20 +08:00
});