diff --git a/playwright-tests/tests/0000__M.test.ts b/playwright-tests/tests/0000__M.test.ts index c7b2c5c0..2acfa71b 100644 --- a/playwright-tests/tests/0000__M.test.ts +++ b/playwright-tests/tests/0000__M.test.ts @@ -25,7 +25,6 @@ import advancedScenario0003TestCases from "./advanced/0003a_MobileAfterpay"; import essentialReplaceDynamicAdasTests from "./0005_EssentialReplaceDynamicAdas"; import essentialReplaceStaticAdasTests from "./0001_EssentialReplaceStatisAdas"; import essentialVehicleLookupBailoutTests from "./0020_EssentialVehicleLookupBailout"; -import essentialPriceServiceErrorBailoutTests from "./0021_EssentialPriceServiceErrorBailout"; import essentialServiceableBigTruckTestCases from "./0022_EssentialServiceableBigTruck"; import essentialNonServiceableBigTruckTestCases from "./0023_EssentialNonServiceableBigTruck"; import essentialNonServiceableBigTruckVinTestCases from "./0024_EssentialNonServiceableBigTruckVin"; @@ -87,7 +86,6 @@ test.describe.parallel('ISS QA Automation Regression', () => { addSmokeTagToRandomTest(essentialTpaEnabledReplace_0018); addSmokeTagToRandomTest(essentialTpaEnabledReplaceRecal_0019); addSmokeTagToRandomTest(essentialVehicleLookupBailoutTests); - addSmokeTagToRandomTest(essentialPriceServiceErrorBailoutTests); addSmokeTagToRandomTest(essentialServiceableBigTruckTestCases); addSmokeTagToRandomTest(essentialNonServiceableBigTruckTestCases); addSmokeTagToRandomTest(essentialNonServiceableBigTruckVinTestCases); @@ -166,9 +164,9 @@ test.describe.parallel('ISS QA Automation Regression', () => { test(...prepareTest(testCase, run, options, ruleEngine)); //skipping this until SSR-2004 is fixed } //Scenario 21 - for (const testCase of essentialPriceServiceErrorBailoutTests) { - test(...prepareTest(testCase, run, options, ruleEngine)); - } + //for (const testCase of essentialPriceServiceErrorBailoutTests) { + // test(...prepareTest(testCase, run, options, ruleEngine)); + //} //Scenario 22 for (const testCase of essentialServiceableBigTruckTestCases) { test(...prepareTest(testCase, run, options, ruleEngine)); @@ -595,6 +593,7 @@ async function runWorkflow(page: Page, testCase: TestCase) { if (Array.isArray(vehicleDetails?.address)) { await addressLookupPage.validateURL(addressLookupPage.issPageValue); await addressLookupPage.validateAddressLookupAlerts(vehicleDetails?.address!); + await addressLookupPage.nextPage(); } }); @@ -660,7 +659,6 @@ async function runWorkflow(page: Page, testCase: TestCase) { } if (partQuestions && partQuestions.length > 0) { - let partQuestionsPage = testCase.pages.partQuestionsPage; await partQuestionsPage.validateURL(partQuestionsPage.issPageValue); await partQuestionsPage.validatePartQuestions(partQuestions); await partQuestionsPage.selectPartQuestionResponses(partQuestions); @@ -741,15 +739,15 @@ async function runWorkflow(page: Page, testCase: TestCase) { if (hasStateLawPopup) { await test.step('ProviderPreferencePage >> Dismiss state law popup', async () => { await providerPreferencePage.validateURL(providerPreferencePage.issPageValue); - if (vehicleDamage!.includes(VehicleDamage.WindshieldCrack)) { - await providerPreferencePage.stateLawModalOkayButton.click(); - } else { - await providerPreferencePage.stateLawModalOkayButton.click(); - } - }); + + await expect(async () => { + await providerPreferencePage.stateLawModalOkayButton.waitFor({ state: 'visible' }); + await providerPreferencePage.stateLawModalOkayButton.click(); + }).toPass({ timeout: 30000 }); + }); } - if (isPolicyFound && isSafelite) { + if (isPolicyFound && isSafelite && !isUnverifiedPolicyAfterVehicleLookup) { await test.step('ProviderPreferencePage >> Select Safelite provider', async () => { await providerPreferencePage.validateURL(providerPreferencePage.issPageValue); await providerPreferencePage.selectProvider(isSafelite); @@ -787,7 +785,7 @@ async function runWorkflow(page: Page, testCase: TestCase) { } - if (isSafelite && isUnverifiedPolicyAfterVehicleLookup) { + if (isSafelite && isPolicyFound && isUnverifiedPolicyAfterVehicleLookup) { await test.step('ProviderPreferencePage >> Select Provider ' + isSafelite ? "Safelite" : "Other shops(Non-Safelite)", async () => { await providerPreferencePage.validateURL(providerPreferencePage.issPageValue); await providerPreferencePage.selectProvider(isSafelite); diff --git a/playwright-tests/tests/0021_EssentialPriceServiceErrorBailout.ts b/playwright-tests/tests/0021_EssentialPriceServiceErrorBailout.ts deleted file mode 100644 index a0c4e08a..00000000 --- a/playwright-tests/tests/0021_EssentialPriceServiceErrorBailout.ts +++ /dev/null @@ -1,82 +0,0 @@ -import ClientData from "@business-logic/data/ClientData"; -import TestCase from "@business-logic/types/TestCase"; -import { DamageType, ServiceLocation, ServicePackage, VehicleDamage, VehicleLookupType } from "@business-logic/types/Enums"; -import { ITestData } from "@business-logic/types/ITestData" -import { faker } from "@faker-js/faker"; -import { getNextWeekday } from "@impl/utils/DateUtils"; - -const nextWeekday = getNextWeekday(); - -const essentialPriceServiceErrorBailoutData: Partial = { - clientTag: 'ALL_ESSENTIAL', - isDuplicateClaim: false, - isPolicyFound: false, - endorsements: [], - isReplace: false, - partQuestions: undefined, - isSafelite: true, - bailoutFlags: { - isPriceServiceErrorBailout: true - }, - servicePackage: faker.helpers.enumValue(ServicePackage), - customerDetails: { - firstName: faker.person.firstName(), - lastName: faker.person.lastName(), - email: "itqatest@safelite.com", - phoneNumber: faker.helpers.fromRegExp(/[2-9][0-9][0-9]-[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]/), - notes: 'Automated Test', - address: { - street: '9799 Heartland Court', - city: 'Dublin', - state: 'OHIO', - postalCode: '43016', - country: 'United States' - } - }, - claimDetails: { - policyNumber: faker.string.alphanumeric(5), - policyDeductible: -1, // Not advanced, so we don't care about deductible. - damageDate: '2024-10-10', - damageCause: DamageType.Other - }, - vehicleDetails: { - year: '2015', - make: 'Honda', - model: 'Accord', - style: '4 door sedan', // TODO: Check correctness of vehicle style - vehicleLookupType: VehicleLookupType.Vin, - vin: '1HGCR2E30FA099831' - }, - vehicleDamage: [ - // VehicleDamage.WindshieldThreeChips, - VehicleDamage.WindshieldCrack, - // VehicleDamage.DriverFrontDoor, - // VehicleDamage.DriverQuarterPanel, - // VehicleDamage.DriverRearDoor, - // VehicleDamage.PassengerFrontDoor, - // VehicleDamage.PassengerQuarterPanel, - // VehicleDamage.PassengerRearDoor, - // VehicleDamage.RearWindow - ], - appointmentDetails: { - serviceLocation: ServiceLocation.InShop, - appointmentDate: nextWeekday - } - -} - -const essentialClients = ClientData.getEssentialClients(); -const essentialPriceServiceErrorBailoutTests: TestCase[] = []; -for (const client of essentialClients) { - const data = {...essentialPriceServiceErrorBailoutData}; - data.clientTag = client.clientTag; - data.isAuthenticationRequired = client.clientFlags.isAuthenticationEnabled ?? false - const tc = new TestCase({ - name: `0021 Essential Price Service Error Bailout Client: "${client.accountName}"`, - tags: [`@${client.clientTag}`, `@${client.accountName}`, '@Bailout', '@PriceService', '@Essentials'], - testData: data - }, undefined, '0021'); - essentialPriceServiceErrorBailoutTests.push(tc); -} - -export default essentialPriceServiceErrorBailoutTests; \ No newline at end of file