Files
drmaterac.pl/modules/ps_banner/tests/E2E/versions/177/FO/foBasePage.js
2025-03-21 20:24:43 +01:00

32 lines
900 B
JavaScript

// Get resolver
const CommonPage = require('prestashop_test_lib/versions/commonPage.js');
module.exports = class FoBasePage extends CommonPage {
constructor() {
super();
// Selectors
this.languageSelectorDiv = '#_desktop_language_selector';
this.languageSelectorExpandIcon = `${this.languageSelectorDiv} i.expand-more`;
this.languageSelectorMenuItemLink = language => `${this.languageSelectorDiv}`
+ ` ul li a[data-iso-code='${language}']`;
}
// Functions
/**
* Change language in FO
* @param page
* @param lang
* @return {Promise<void>}
*/
async changeLanguage(page, lang = 'en') {
await Promise.all([
page.click(this.languageSelectorExpandIcon),
this.waitForVisibleSelector(page, this.languageSelectorMenuItemLink(lang)),
]);
await this.clickAndWaitForNavigation(page, this.languageSelectorMenuItemLink(lang));
}
};