From 868c8539ce1444a7d39887cbabcedb0b053a4252 Mon Sep 17 00:00:00 2001 From: chalapkoStanislav Date: Tue, 26 Nov 2024 12:48:40 +0200 Subject: [PATCH] fix(locators): update locators --- pages/workspace/assets-panel-page.js | 14 ++++++++++---- pages/workspace/main-page.js | 12 +++++++----- .../panels-features/panels-features-pages.spec.js | 3 +++ 3 files changed, 20 insertions(+), 9 deletions(-) diff --git a/pages/workspace/assets-panel-page.js b/pages/workspace/assets-panel-page.js index 02648f66..19473d95 100644 --- a/pages/workspace/assets-panel-page.js +++ b/pages/workspace/assets-panel-page.js @@ -79,10 +79,16 @@ exports.AssetsPanelPage = class AssetsPanelPage extends BasePage { ); this.assetsTypeButton = page.getByRole('button', { name: 'Filter' }); this.assetsTypeDropdown = page.locator('ul[class*="context-menu-items"]'); - this.assetsTypeAll = page.locator('#section-all'); - this.assetsTypeComponents = page.locator('#section-components'); - this.assetsTypeColors = page.locator('#section-colors'); - this.assetsTypeTypographies = page.locator('#section-typographies'); + this.assetsTypeAll = page + .getByRole('menuitem') + .filter({ hasText: 'All assets' }); + this.assetsTypeComponents = page + .getByRole('menuitem') + .filter({ hasText: 'Components' }); + this.assetsTypeColors = page.getByRole('menuitem').filter({ hasText: 'Colors' }); + this.assetsTypeTypographies = page + .getByRole('menuitem') + .filter({ hasText: 'Typographies' }); this.duplicateMainComponentMenuItem = page .getByRole('menuitem') .filter({ hasText: 'Duplicate main' }); diff --git a/pages/workspace/main-page.js b/pages/workspace/main-page.js index 828436b1..55dec7b6 100644 --- a/pages/workspace/main-page.js +++ b/pages/workspace/main-page.js @@ -26,7 +26,7 @@ exports.MainPage = class MainPage extends BasePage { this.designTab = page.getByRole('tab', { name: 'design' }); //Viewport - this.textbox = page.locator('div[role="textbox"] div[contenteditable="true"]'); + this.textbox = page.getByTestId('text-editor-content'); this.guides = page.locator('.guides .new-guides'); this.guidesFragment = page.locator('.main_ui_workspace_sidebar__resize-area'); this.gridEditorLabel = page.locator('input[class*="grid-editor-label"]'); @@ -895,7 +895,8 @@ exports.MainPage = class MainPage extends BasePage { await this.page.waitForTimeout(2000); await this.typeTextFromKeyboard(); } else { - await this.typeText('Hello World!'); + await expect(this.textbox).toBeVisible(); + await this.typeTextFromKeyboard(); } await this.clickMoveButton(); await this.waitForChangeIsSaved(); @@ -911,7 +912,8 @@ exports.MainPage = class MainPage extends BasePage { await this.page.waitForTimeout(400); await this.typeTextFromKeyboard(); } else { - await this.typeText('Hello World!'); + await expect(this.textbox).toBeVisible(); + await this.typeTextFromKeyboard(); } await this.clickMoveButton(); await this.waitForChangeIsSaved(); @@ -1081,13 +1083,13 @@ exports.MainPage = class MainPage extends BasePage { await expect(this.workspaceMenu).not.toBeVisible(); } - async isColorsPaletteButtonVisible(visible = true){ + async isColorsPaletteButtonVisible(visible = true) { visible ? await expect(this.colorsPaletteButton).toBeVisible() : await expect(this.colorsPaletteButton).not.toBeVisible(); } - async isTypographyButtonVisible(visible = true){ + async isTypographyButtonVisible(visible = true) { visible ? await expect(this.typographyButton).toBeVisible() : await expect(this.typographyButton).not.toBeVisible(); diff --git a/tests/panels-features/panels-features-pages.spec.js b/tests/panels-features/panels-features-pages.spec.js index 5dec60ae..9953d0ff 100644 --- a/tests/panels-features/panels-features-pages.spec.js +++ b/tests/panels-features/panels-features-pages.spec.js @@ -194,6 +194,9 @@ mainTest( await mainPage.clickOnPageOnLayersPanel(true); await expect(mainPage.viewport).toHaveScreenshot( 'page-copies-component-update-main.png', + { + mask: [mainPage.guides, mainPage.guidesFragment, mainPage.toolBarWindow], + }, ); }, );