first commit
This commit is contained in:
31
modules/ps_banner/tests/E2E/versions/177/FO/foBasePage.js
Normal file
31
modules/ps_banner/tests/E2E/versions/177/FO/foBasePage.js
Normal file
@@ -0,0 +1,31 @@
|
||||
// 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));
|
||||
}
|
||||
};
|
||||
50
modules/ps_banner/tests/E2E/versions/177/FO/home/index.js
Normal file
50
modules/ps_banner/tests/E2E/versions/177/FO/home/index.js
Normal file
@@ -0,0 +1,50 @@
|
||||
const CommonPage = require('@versions/177/FO/foBasePage.js');
|
||||
|
||||
class Home extends CommonPage {
|
||||
constructor() {
|
||||
super();
|
||||
|
||||
// Selectors
|
||||
this.bannerLink = 'a.banner';
|
||||
this.bannerImage = `${this.bannerLink} img`;
|
||||
}
|
||||
|
||||
// Functions
|
||||
|
||||
/**
|
||||
* Check is banner is displayed
|
||||
* @param page
|
||||
* @return {Promise<boolean>}
|
||||
*/
|
||||
isBannerVisible(page) {
|
||||
return this.elementVisible(page, this.bannerLink, 2000);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get banner link
|
||||
* @param page
|
||||
* @return {Promise<string>}
|
||||
*/
|
||||
getBannerLink(page) {
|
||||
return this.getAttributeContent(page, this.bannerLink, 'href');
|
||||
}
|
||||
|
||||
/**
|
||||
* Get banner description
|
||||
* @param page
|
||||
* @return {Promise<string>}
|
||||
*/
|
||||
getBannerDescription(page) {
|
||||
return this.getAttributeContent(page, this.bannerLink, 'title');
|
||||
}
|
||||
|
||||
/**
|
||||
* Check if banner image is visible
|
||||
* @param page
|
||||
* @return {Promise<boolean>}
|
||||
*/
|
||||
bannerHasImage(page) {
|
||||
return this.elementVisible(page, this.bannerImage, 2000);
|
||||
}
|
||||
}
|
||||
module.exports = new Home();
|
||||
Reference in New Issue
Block a user