OBA Website automated using playwright
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

53 lines
2.2 KiB

exports.AppConfig=
class AppConfig {
constructor(page) {
this.page = page;
this.appConfLink="//span[normalize-space()='AppConfig']";
this.currency="//select[@id='oba_appconfig_select_currency']";
this.minimumCartPrize="//label[@id='oba_appconfig_minimum_cart_price_label']//input[@id='oba_appconfig_minimum_cart_price']";
this.deliveryCharge="//label[@id='oba_appconfig_delivery_charge_label']//input[@id='oba_appconfig_minimum_cart_price']";
this.callToAction="//input[@id='oba_appconfig_call_to_action']";
this.areaSelection="//select[@id='oba_appconfig_city_selection_list']";
this.typingText="//input[@id='oba_appconfig_area_selection']";
this.selectedText="//select[@id='oba_appconfig_area_selection_list']";
this.movingTypingText="//button[normalize-space()='>>']";
this.replaceMovedText="//button[normalize-space()='<<']";
this.saveButton="//button[@id='oba_appconfig_save']";
}
async openAppConf(){
await this.page.locator(this.appConfLink).click();
}
async selectCurrency(currency){
await this.page.locator(this.currency).selectOption({label:currency});
}
async callToAction(Number){
await this.page.locator(this.callToAction).fill(Number);
}
async areaSelection(area){
await this.page.locator(this.areaSelection).selectOption({label:area});
}
async functionalityAppConfig(currency, minValue, charge, Number, area, text){
await this.page.locator(this.appConfLink).click();
await this.page.locator(this.currency).selectOption({label:currency});
await this.page.locator(this.minimumCartPrize).fill(minValue);
await this.page.locator(this.deliveryCharge).fill(charge);
await this.page.locator(this.callToAction).fill(Number);
await this.page.locator(this.areaSelection).selectOption({label:area});
await this.page.locator(this.typingText).fill(text);
await this.page.waitForTimeout(5000);
await this.page.locator(this.movingTypingText).click();
await this.page.waitForTimeout(5000);
await this.page.locator(this.saveButton).click();
}
}