-
Notifications
You must be signed in to change notification settings - Fork 10
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #300 from nesrineabdmouleh/addDataForAutoupgradeMo…
…dule Add data and pages for autoupgrade module
- Loading branch information
Showing
5 changed files
with
78 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
import {ModuleConfigurationPageInterface} from '@interfaces/BO/modules/moduleConfiguration'; | ||
import type {Page} from '@playwright/test'; | ||
|
||
export interface ModuleAutoupgradeMainPageInterface extends ModuleConfigurationPageInterface { | ||
readonly pageTitle: string; | ||
|
||
goToMaintenancePage(page:Page): Promise<Page>; | ||
isRequirementsAlertDangerVisible(page:Page): Promise<boolean>; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
import type {ModuleAutoupgradeMainPageInterface} from '@interfaces/BO/modules/autoupgrade'; | ||
|
||
/* eslint-disable global-require, @typescript-eslint/no-require-imports */ | ||
function requirePage(): ModuleAutoupgradeMainPageInterface { | ||
return require('@versions/develop/pages/BO/modules/autoupgrade'); | ||
} | ||
|
||
/* eslint-enable global-require, @typescript-eslint/no-require-imports */ | ||
|
||
export default requirePage(); |
54 changes: 54 additions & 0 deletions
54
src/versions/develop/pages/BO/modules/autoupgrade/index.ts
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
import {ModuleAutoupgradeMainPageInterface} from '@interfaces/BO/modules/autoupgrade'; | ||
import ModuleConfiguration from '@pages/BO/modules/moduleConfiguration'; | ||
import type {Page} from '@playwright/test'; | ||
|
||
/** | ||
* Module configuration page for module : Autoupgrade, contains selectors and functions for the page | ||
* @class | ||
* @extends ModuleConfiguration | ||
*/ | ||
class Autoupgrade extends ModuleConfiguration implements ModuleAutoupgradeMainPageInterface { | ||
public readonly pageTitle: string; | ||
|
||
private readonly currentConfigurationTable: string; | ||
|
||
private readonly maintenanceModeLink: string; | ||
|
||
private readonly alertDangerPreUpgrade: string; | ||
|
||
/** | ||
* @constructs | ||
*/ | ||
constructor() { | ||
super(); | ||
|
||
this.pageTitle = `Update assistant > Update assistant • ${global.INSTALL.SHOP_NAME}`; | ||
|
||
// Selectors | ||
this.currentConfigurationTable = '#currentConfiguration table'; | ||
this.maintenanceModeLink = `${this.currentConfigurationTable} a[href*='shop/maintenance']`; | ||
this.alertDangerPreUpgrade = `#${this.currentConfigurationTable} p.alert.alert-danger`; | ||
} | ||
|
||
// Methods | ||
// Pre-upgrade checklist table | ||
/** | ||
* Go to maintenance page | ||
* @param page {Page} Browser tab | ||
* @return {Promise<Page>} Opened tab after the click | ||
*/ | ||
async goToMaintenancePage(page: Page): Promise<Page> { | ||
return this.openLinkWithTargetBlank(page, this.maintenanceModeLink); | ||
} | ||
|
||
/** | ||
* Is requirements alert danger visible | ||
* @param page {Page} Browser tab | ||
* @return {Promise<Page>} | ||
*/ | ||
async isRequirementsAlertDangerVisible(page: Page): Promise<boolean> { | ||
return this.elementVisible(page, this.alertDangerPreUpgrade, 2000); | ||
} | ||
} | ||
|
||
module.exports = new Autoupgrade(); |