Skip to content

Commit 70c7611

Browse files
authored
Merge pull request #7302 from microting/copilot/update-wdio-tests-actions-menu-again
Update Plugin.page.ts for mat-menu actions dropdown
2 parents 8162b86 + c8ea4a1 commit 70c7611

File tree

1 file changed

+16
-4
lines changed

1 file changed

+16
-4
lines changed

eform-client/e2e/Page objects/Plugin.page.ts

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -63,9 +63,9 @@ class PluginRowObject {
6363
id: number;
6464
name: string;
6565
version: string;
66-
statusBtn;
66+
statusBtn: WebdriverIO.Element;
6767
status: string;
68-
settingsBtn;
68+
settingsBtn: WebdriverIO.Element;
6969
rowNumber: number;
7070

7171
public async getRow(rowNum: number): Promise<PluginRowObject> {
@@ -76,12 +76,18 @@ class PluginRowObject {
7676
this.version = await (await $('#plugin-version'+this.rowNumber)).getText();
7777
this.settingsBtn = await $('#plugin-settings-link'+this.rowNumber);
7878
this.statusBtn = await $('#plugin-status-button'+this.rowNumber);
79-
const pluginStatus = await $('#plugin-status'+this.rowNumber);
80-
this.status = await (await this.statusBtn.$('mat-icon')).getText();
79+
// To get status, we need to open the menu first since the button is inside mat-menu
80+
await this.clickActionsMenu();
81+
const statusIcon = await this.statusBtn.$('mat-icon');
82+
this.status = await statusIcon.getText();
83+
// Close the menu by clicking elsewhere or pressing escape
84+
await browser.keys('Escape');
85+
await browser.pause(500);
8186
return this;
8287
}
8388

8489
async enableOrDisablePlugin(timeout = 100000) {
90+
await this.clickActionsMenu();
8591
await this.statusBtn.click();
8692
await browser.pause(500);
8793
await (await pluginPage.pluginOKBtn()).waitForDisplayed({ timeout: 40000 });
@@ -92,4 +98,10 @@ class PluginRowObject {
9298
await myEformsPage.Navbar.goToPluginsPage();
9399
await browser.pause(500);
94100
}
101+
102+
private async clickActionsMenu() {
103+
await browser.pause(1000);
104+
await (await $$('#actionMenu')[this.rowNumber]).click();
105+
await browser.pause(1000);
106+
}
95107
}

0 commit comments

Comments
 (0)