2023-06-22 20:21:10 +08:00
|
|
|
const { MultiUsers } = require('../user/multiusers');
|
|
|
|
const e = require('../core/elements');
|
2023-07-31 22:24:25 +08:00
|
|
|
const { ELEMENT_WAIT_LONGER_TIME } = require('../core/constants');
|
2023-06-22 20:21:10 +08:00
|
|
|
const { getSettings } = require('../core/settings');
|
|
|
|
|
|
|
|
class DisabledFeatures extends MultiUsers {
|
|
|
|
constructor(browser, context) {
|
|
|
|
super(browser, context);
|
|
|
|
}
|
|
|
|
|
|
|
|
async breakoutRooms() {
|
|
|
|
await this.modPage.waitAndClick(e.manageUsers);
|
|
|
|
await this.modPage.wasRemoved(e.createBreakoutRooms);
|
|
|
|
}
|
|
|
|
|
|
|
|
async speechRecognition() {
|
2023-07-01 04:16:22 +08:00
|
|
|
const { speechRecognitionEnabled } = getSettings();
|
|
|
|
|
2023-06-22 20:21:10 +08:00
|
|
|
await this.modPage.waitForSelector(e.audioModal, ELEMENT_WAIT_LONGER_TIME);
|
2023-07-01 04:16:22 +08:00
|
|
|
|
2024-06-19 23:00:24 +08:00
|
|
|
if (speechRecognitionEnabled) {
|
2023-07-01 04:16:22 +08:00
|
|
|
await this.modPage.wasRemoved(e.speechRecognition);
|
|
|
|
} else {
|
|
|
|
await this.modPage.wasRemoved(e.speechRecognitionUnsupported);
|
|
|
|
}
|
2023-06-22 20:21:10 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
async captions() {
|
|
|
|
await this.modPage.waitAndClick(e.manageUsers);
|
|
|
|
await this.modPage.wasRemoved(e.writeClosedCaptions);
|
|
|
|
}
|
|
|
|
|
|
|
|
async chat() {
|
2023-09-27 03:41:58 +08:00
|
|
|
await this.modPage.wasRemoved(e.hidePublicChat);
|
2023-06-22 20:21:10 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
async externalVideos() {
|
|
|
|
await this.modPage.waitAndClick(e.actions);
|
|
|
|
await this.modPage.wasRemoved(e.shareExternalVideoBtn);
|
|
|
|
}
|
|
|
|
|
|
|
|
async layouts() {
|
|
|
|
await this.modPage.waitAndClick(e.actions);
|
2023-07-31 22:24:25 +08:00
|
|
|
await this.modPage.wasRemoved(e.manageLayoutBtn);
|
2023-06-22 20:21:10 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
async learningDashboard() {
|
|
|
|
await this.modPage.waitAndClick(e.manageUsers);
|
|
|
|
await this.modPage.wasRemoved(e.learningDashboard);
|
|
|
|
}
|
|
|
|
|
|
|
|
async polls() {
|
|
|
|
await this.modPage.waitAndClick(e.actions);
|
|
|
|
await this.modPage.wasRemoved(e.polling);
|
|
|
|
}
|
|
|
|
|
|
|
|
async screenshare() {
|
|
|
|
await this.modPage.wasRemoved(e.startScreenSharing);
|
|
|
|
}
|
|
|
|
|
|
|
|
async sharedNotes() {
|
|
|
|
await this.modPage.wasRemoved(e.sharedNotes);
|
|
|
|
}
|
|
|
|
|
|
|
|
async virtualBackgrounds() {
|
|
|
|
await this.modPage.waitAndClick(e.joinVideo);
|
2024-06-19 23:00:24 +08:00
|
|
|
await this.modPage.wasRemoved(e.backgroundSettingsTitle);
|
2023-06-22 20:21:10 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
async downloadPresentationWithAnnotations() {
|
|
|
|
await this.modPage.waitAndClick(e.actions);
|
|
|
|
await this.modPage.waitAndClick(e.managePresentations);
|
2023-07-31 22:24:25 +08:00
|
|
|
await this.modPage.waitAndClick(e.presentationOptionsDownloadBtn);
|
|
|
|
await this.modPage.wasRemoved(e.sendPresentationInCurrentStateBtn);
|
2023-06-22 20:21:10 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
async importPresentationWithAnnotationsFromBreakoutRooms() {
|
|
|
|
await this.modPage.waitAndClick(e.manageUsers);
|
|
|
|
await this.modPage.waitAndClick(e.createBreakoutRooms);
|
|
|
|
await this.modPage.wasRemoved(e.captureBreakoutWhiteboard);
|
|
|
|
}
|
|
|
|
|
|
|
|
async importSharedNotesFromBreakoutRooms() {
|
|
|
|
await this.modPage.waitAndClick(e.manageUsers);
|
|
|
|
await this.modPage.waitAndClick(e.createBreakoutRooms);
|
|
|
|
await this.modPage.wasRemoved(e.captureBreakoutSharedNotes);
|
|
|
|
}
|
|
|
|
|
|
|
|
async presentation() {
|
|
|
|
await this.modPage.wasRemoved(e.whiteboard);
|
|
|
|
await this.modPage.wasRemoved(e.minimizePresentation);
|
|
|
|
await this.modPage.wasRemoved(e.restorePresentation);
|
|
|
|
}
|
|
|
|
|
|
|
|
async customVirtualBackground() {
|
2024-06-19 23:00:24 +08:00
|
|
|
await this.modPage.waitAndClick(e.joinVideo);
|
|
|
|
await this.modPage.waitAndClick(e.backgroundSettingsTitle);
|
2023-06-22 20:21:10 +08:00
|
|
|
await this.modPage.wasRemoved(e.inputBackgroundButton);
|
|
|
|
}
|
|
|
|
|
2023-07-31 22:24:25 +08:00
|
|
|
async slideSnapshot() {
|
|
|
|
await this.modPage.waitForSelector(e.whiteboard);
|
|
|
|
await this.modPage.waitAndClick(e.whiteboardOptionsButton);
|
|
|
|
await this.modPage.hasElement(e.presentationFullscreen);
|
|
|
|
await this.modPage.wasRemoved(e.presentationSnapshot);
|
|
|
|
}
|
|
|
|
|
|
|
|
async cameraAsContent() {
|
|
|
|
await this.modPage.waitForSelector(e.whiteboard);
|
|
|
|
await this.modPage.waitAndClick(e.actions);
|
|
|
|
await this.modPage.hasElement(e.managePresentations);
|
|
|
|
await this.modPage.wasRemoved(e.shareCameraAsContent);
|
|
|
|
}
|
|
|
|
|
2023-06-22 20:21:10 +08:00
|
|
|
// Disabled Features Exclude
|
|
|
|
async breakoutRoomsExclude() {
|
|
|
|
await this.modPage.waitAndClick(e.manageUsers);
|
|
|
|
await this.modPage.hasElement(e.createBreakoutRooms);
|
|
|
|
}
|
|
|
|
|
|
|
|
async speechRecognitionExclude() {
|
|
|
|
const { speechRecognitionEnabled } = getSettings();
|
2023-07-01 04:16:22 +08:00
|
|
|
|
2023-06-22 20:21:10 +08:00
|
|
|
await this.modPage.waitForSelector(e.audioModal, ELEMENT_WAIT_LONGER_TIME);
|
2023-07-01 04:16:22 +08:00
|
|
|
|
2024-06-19 23:00:24 +08:00
|
|
|
if (speechRecognitionEnabled) {
|
2023-07-01 04:16:22 +08:00
|
|
|
await this.modPage.wasRemoved(e.speechRecognition);
|
|
|
|
} else {
|
|
|
|
await this.modPage.wasRemoved(e.speechRecognitionUnsupported);
|
|
|
|
}
|
2023-06-22 20:21:10 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
async captionsExclude() {
|
|
|
|
await this.modPage.waitAndClick(e.manageUsers);
|
|
|
|
await this.modPage.hasElement(e.writeClosedCaptions);
|
|
|
|
}
|
|
|
|
|
|
|
|
async chatExclude() {
|
2023-09-27 03:41:58 +08:00
|
|
|
await this.modPage.hasElement(e.hidePublicChat);
|
2023-06-22 20:21:10 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
async externalVideosExclude() {
|
|
|
|
await this.modPage.waitAndClick(e.actions);
|
|
|
|
await this.modPage.hasElement(e.shareExternalVideoBtn);
|
|
|
|
}
|
|
|
|
|
|
|
|
async layoutsExclude() {
|
|
|
|
await this.modPage.waitAndClick(e.actions);
|
2023-07-31 22:24:25 +08:00
|
|
|
await this.modPage.hasElement(e.manageLayoutBtn);
|
2023-06-22 20:21:10 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
async learningDashboardExclude() {
|
|
|
|
await this.modPage.waitAndClick(e.manageUsers);
|
|
|
|
await this.modPage.hasElement(e.learningDashboard);
|
|
|
|
}
|
|
|
|
|
|
|
|
async pollsExclude() {
|
|
|
|
await this.modPage.waitAndClick(e.actions);
|
|
|
|
await this.modPage.hasElement(e.polling);
|
|
|
|
}
|
|
|
|
|
|
|
|
async screenshareExclude() {
|
|
|
|
await this.modPage.hasElement(e.startScreenSharing);
|
|
|
|
}
|
|
|
|
|
|
|
|
async sharedNotesExclude() {
|
|
|
|
await this.modPage.hasElement(e.sharedNotes);
|
|
|
|
}
|
|
|
|
|
|
|
|
async virtualBackgroundsExclude() {
|
|
|
|
await this.modPage.waitAndClick(e.joinVideo);
|
2024-06-19 23:00:24 +08:00
|
|
|
await this.modPage.waitAndClick(e.backgroundSettingsTitle);
|
2023-06-22 20:21:10 +08:00
|
|
|
await this.modPage.hasElement(e.virtualBackgrounds);
|
|
|
|
}
|
|
|
|
|
|
|
|
async downloadPresentationWithAnnotationsExclude() {
|
2023-07-31 22:24:25 +08:00
|
|
|
await this.modPage.waitForSelector(e.whiteboard);
|
2023-06-22 20:21:10 +08:00
|
|
|
await this.modPage.waitAndClick(e.actions);
|
|
|
|
await this.modPage.waitAndClick(e.managePresentations);
|
2023-07-31 22:24:25 +08:00
|
|
|
await this.modPage.waitAndClick(e.presentationOptionsDownloadBtn);
|
|
|
|
await this.modPage.hasElement(e.sendPresentationInCurrentStateBtn);
|
2023-06-22 20:21:10 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
async importPresentationWithAnnotationsFromBreakoutRoomsExclude() {
|
|
|
|
await this.modPage.waitAndClick(e.manageUsers);
|
|
|
|
await this.modPage.waitAndClick(e.createBreakoutRooms);
|
|
|
|
await this.modPage.hasElement(e.captureBreakoutWhiteboard);
|
|
|
|
}
|
|
|
|
|
|
|
|
async importSharedNotesFromBreakoutRoomsExclude() {
|
|
|
|
await this.modPage.waitAndClick(e.manageUsers);
|
|
|
|
await this.modPage.waitAndClick(e.createBreakoutRooms);
|
|
|
|
await this.modPage.hasElement(e.captureBreakoutSharedNotes);
|
|
|
|
}
|
|
|
|
|
|
|
|
async presentationExclude() {
|
|
|
|
await this.modPage.hasElement(e.whiteboard);
|
|
|
|
await this.modPage.waitAndClick(e.minimizePresentation);
|
|
|
|
await this.modPage.hasElement(e.restorePresentation);
|
|
|
|
}
|
|
|
|
|
|
|
|
async customVirtualBackgroundExclude() {
|
2024-06-19 23:00:24 +08:00
|
|
|
await this.modPage.waitAndClick(e.joinVideo);
|
|
|
|
await this.modPage.waitAndClick(e.backgroundSettingsTitle);
|
2023-06-22 20:21:10 +08:00
|
|
|
await this.modPage.hasElement(e.inputBackgroundButton);
|
|
|
|
}
|
2023-07-31 22:24:25 +08:00
|
|
|
|
|
|
|
async slideSnapshotExclude() {
|
|
|
|
await this.modPage.waitForSelector(e.whiteboard);
|
|
|
|
await this.modPage.waitAndClick(e.whiteboardOptionsButton);
|
|
|
|
await this.modPage.hasElement(e.presentationSnapshot);
|
|
|
|
}
|
|
|
|
|
|
|
|
async cameraAsContentExclude() {
|
|
|
|
await this.modPage.waitForSelector(e.whiteboard);
|
|
|
|
await this.modPage.waitAndClick(e.actions);
|
|
|
|
await this.modPage.hasElement(e.shareCameraAsContent);
|
|
|
|
}
|
2023-06-22 20:21:10 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
exports.DisabledFeatures = DisabledFeatures;
|