mirror of
https://github.com/Alfresco/alfresco-content-app.git
synced 2025-07-24 17:31:52 +00:00
[ACA-1897] context submenu extension e2e (#745)
* [ACA-1897] e2e for context submenu - needs some fixes * fix * [ACA-1897] test refactoring * [ACA-1897] specify TestRail ids * [ACA-1897] fix spell check issue * [ACA-1897] custom message on share dialog fail to close - e2e tests
This commit is contained in:
committed by
Adina Parpalita
parent
6e3f128121
commit
03e8ab4b1e
@@ -63,7 +63,7 @@ export class ShareDialog extends Component {
|
||||
}
|
||||
|
||||
async waitForDialogToClose() {
|
||||
await browser.wait(EC.stalenessOf(this.title), BROWSER_WAIT_TIMEOUT);
|
||||
await browser.wait(EC.stalenessOf(this.title), BROWSER_WAIT_TIMEOUT, 'share dialog did not close');
|
||||
}
|
||||
|
||||
async waitForDialogToOpen() {
|
||||
|
@@ -33,12 +33,15 @@ export class Menu extends Component {
|
||||
root: '.mat-menu-panel',
|
||||
item: '.mat-menu-item',
|
||||
icon: '.mat-icon',
|
||||
uploadFiles: 'app-upload-files'
|
||||
uploadFiles: 'app-upload-files',
|
||||
|
||||
submenu: 'app-context-menu-item .mat-menu-item'
|
||||
};
|
||||
|
||||
items: ElementArrayFinder = this.component.all(by.css(Menu.selectors.item));
|
||||
backdrop: ElementFinder = browser.element(by.css('.cdk-overlay-backdrop'));
|
||||
uploadFiles: ElementFinder = browser.element(by.id(Menu.selectors.uploadFiles));
|
||||
submenus: ElementArrayFinder = browser.element.all(by.css(Menu.selectors.submenu));
|
||||
|
||||
constructor(ancestor?: ElementFinder) {
|
||||
super(Menu.selectors.root, ancestor);
|
||||
@@ -71,6 +74,10 @@ export class Menu extends Component {
|
||||
return this.component.element(by.cssContainingText(Menu.selectors.item, menuItem));
|
||||
}
|
||||
|
||||
getSubItemByLabel(subMenuItem: string) {
|
||||
return this.component.element(by.cssContainingText(Menu.selectors.submenu, subMenuItem));
|
||||
}
|
||||
|
||||
getItemById(id: string) {
|
||||
return this.component.element(by.id(id));
|
||||
}
|
||||
@@ -108,10 +115,50 @@ export class Menu extends Component {
|
||||
}
|
||||
}
|
||||
|
||||
async mouseOverMenuItem(menuItem: string) {
|
||||
try {
|
||||
const elem = this.getItemByLabel(menuItem);
|
||||
await browser.wait(EC.elementToBeClickable(elem), BROWSER_WAIT_TIMEOUT);
|
||||
await browser.actions().mouseMove(elem).perform();
|
||||
await browser.sleep(500);
|
||||
} catch (error) {
|
||||
console.log('----- mouse over error: ', error);
|
||||
}
|
||||
}
|
||||
|
||||
async hasSubMenu(menuItem: string) {
|
||||
try {
|
||||
const elem = this.getItemByLabel(menuItem);
|
||||
await browser.wait(EC.elementToBeClickable(elem), BROWSER_WAIT_TIMEOUT);
|
||||
const elemClass = await elem.getAttribute('class');
|
||||
return elemClass.includes('mat-menu-item-submenu-trigger');
|
||||
} catch (error) {
|
||||
console.log('---- has submenu error: ', error);
|
||||
}
|
||||
}
|
||||
|
||||
async clickSubMenuItem(subMenuItem: string) {
|
||||
try {
|
||||
const elem = this.getSubItemByLabel(subMenuItem);
|
||||
await browser.wait(EC.elementToBeClickable(elem), BROWSER_WAIT_TIMEOUT);
|
||||
await elem.click();
|
||||
} catch (e) {
|
||||
console.log('___click submenu item catch___', e);
|
||||
}
|
||||
}
|
||||
|
||||
async isMenuItemPresent(title: string) {
|
||||
return await this.component.element(by.cssContainingText(Menu.selectors.item, title)).isPresent();
|
||||
}
|
||||
|
||||
async isSubMenuItemPresent(title: string) {
|
||||
return await browser.element(by.cssContainingText(Menu.selectors.submenu, title)).isPresent();
|
||||
}
|
||||
|
||||
async getSubmenuItemsCount() {
|
||||
return await this.submenus.count();
|
||||
}
|
||||
|
||||
async isMenuItemDisabled(title: string) {
|
||||
try {
|
||||
const item = this.getItemByLabel(title);
|
||||
|
Reference in New Issue
Block a user