The communications platform that puts data protection first.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
Rocket.Chat/tests/pageobjects/side-nav.page.js

94 lines
3.7 KiB

import Page from './Page';
class SideNav extends Page {
get directMessageTarget() { return browser.element('.flex-nav input#who'); }
get saveDirectMessageBtn() { return browser.element('.save-direct-message'); }
get channelType() { return browser.element('#channel-type'); }
get channelReadOnly() { return browser.element('#channel-ro'); }
get channelName() { return browser.element('#channel-name'); }
get saveChannelBtn() { return browser.element('.save-channel'); }
get messageInput() { return browser.element('.input-message'); }
get accountBoxUserName() { return browser.element('.account-box .data h4'); }
get accountBoxUserAvatar() { return browser.element('.account-box .avatar-image'); }
get newChannelBtn() { return browser.element('.rooms-list .add-room:nth-of-type(1)'); }
get newChannelIcon() { return browser.element('.rooms-list .add-room:nth-of-type(1) .icon-plus'); }
get moreChannels() { return browser.element('.rooms-list .more-channels'); }
get newDirectMessageBtn() { return browser.element('.rooms-list .add-room:nth-of-type(2)'); }
get newDirectMessageIcon() { return browser.element('.rooms-list .add-room:nth-of-type(2) .icon-plus'); }
get moreDirectMessages() { return browser.element('.rooms-list .more-direct-messages'); }
get general() { return browser.element('.rooms-list > .wrapper > ul [title="general"]'); }
get channelHoverIcon() { return browser.element('.rooms-list > .wrapper > ul [title="general"] .icon-eye-off'); }
get userOptions() { return browser.element('.options'); }
get statusOnline() { return browser.element('.online'); }
get statusAway() { return browser.element('.away'); }
get statusBusy() { return browser.element('.busy'); }
get statusOffline() { return browser.element('.offline'); }
get account() { return browser.element('#account'); }
get logout() { return browser.element('#logout'); }
get sideNavBar() { return browser.element('.side-nav '); }
get sideNavBtn() { return browser.element('.fixed-title .burger'); }
get preferences() { return browser.element('.account-link:nth-of-type(1)'); }
get profile() { return browser.element('.account-link:nth-of-type(2)'); }
get avatar() { return browser.element('.account-link:nth-of-type(3)'); }
get preferencesClose() { return browser.element('.side-nav .arrow.close'); }
openChannel(channelName) {
browser.click('.rooms-list > .wrapper > ul [title="'+channelName+'"]');
this.messageInput.waitForExist();
}
getChannelFromList(channelName) {
return browser.element('.rooms-list > .wrapper > ul [title="'+channelName+'"]');
}
createChannel(channelName, isPrivate, isReadOnly) {
this.newChannelBtn.click();
this.channelType.waitForVisible(10000);
this.channelName.setValue(channelName);
if (isPrivate) {
this.channelType.click();
}
if (isReadOnly) {
this.channelReadOnly.click();
}
this.saveChannelBtn.click();
browser.waitForExist('[title="'+channelName+'"]', 1000);
}
addPeopleToChannel(user) {
this.membersTab.click();
this.userSearchBar.waitForVisible();
this.userSearchBar.setValue(user);
browser.waitForVisible('.-autocomplete-item');
browser.click('.-autocomplete-item');
}
removePeopleFromChannel(user) {
this.membersTab.click();
browser.waitForVisible('[title="'+user+'"]');
browser.click('[title="'+user+'"]');
this.removeUserBtn.click();
}
startDirectMessage(user) {
this.newDirectMessageBtn.click();
browser.pause(1000);
this.directMessageTarget.waitForVisible(3000);
this.directMessageTarget.setValue(user);
browser.waitForVisible('.-autocomplete-item', 3000);
browser.pause(500);
browser.click('.-autocomplete-item');
this.saveDirectMessageBtn.click();
browser.waitForExist('[title="'+user+'"]');
}
}
module.exports = new SideNav();