In scenarios that reach the order confirmation page, the query string includes more than the issPageValue, whiche was breaking validateURL
39 lines
No EOL
1.5 KiB
TypeScript
39 lines
No EOL
1.5 KiB
TypeScript
import { expect, type Locator, type Page } from '@playwright/test';
|
||
import { BasePage } from './BasePage';
|
||
|
||
export class CoverageStatementPage extends BasePage {
|
||
readonly page: Page;
|
||
readonly scheduleOnlineButton: Locator;
|
||
readonly cancelMyClaimButton: Locator;
|
||
readonly deductibleAmount: Locator;
|
||
readonly verfiyingCoverageText: Locator;
|
||
readonly continueToScheduleButton: Locator; // For ITAC/NoComp
|
||
issPageValue = 'coverage-statement';
|
||
|
||
constructor(page: Page) {
|
||
super(page);
|
||
this.page = page;
|
||
this.scheduleOnlineButton = this.page.getByText('Continue to schedule online');
|
||
this.cancelMyClaimButton = this.page.getByText('Cancel my claim');
|
||
this.deductibleAmount = this.page.getByText('$');
|
||
this.verfiyingCoverageText = this.page.getByRole('heading', { name: 'We’re verifying your coverage' });
|
||
this.continueToScheduleButton = page.locator('div[class*="button-content"]', {hasText:'Continue to schedule online'});
|
||
// this.validateURL(this.url);
|
||
}
|
||
|
||
async scheduleOnline(){
|
||
await this.scheduleOnlineButton.click();
|
||
}
|
||
|
||
async cancelMyClaim(){
|
||
await this.cancelMyClaimButton.click();
|
||
}
|
||
|
||
async validateDeductibleAmount(customer){
|
||
await expect(this.deductibleAmount). toContainText(`$${customer.deductibleAmount}`, {timeout: 60000});
|
||
}
|
||
|
||
async validateUnverifiedText(){
|
||
await expect(this.verfiyingCoverageText).toBeEnabled();
|
||
}
|
||
} |