From ce00c4c6179abc7d1904b6961611961a9fa27153 Mon Sep 17 00:00:00 2001 From: kpatel8hs4io <31411746+kpatel8hs4io@users.noreply.github.com> Date: Fri, 26 Sep 2025 10:00:53 -0400 Subject: [PATCH] Update PaymentMethodPage.ts --- playwright-tests/pages/PaymentMethodPage.ts | 66 ++++++++++----------- 1 file changed, 32 insertions(+), 34 deletions(-) diff --git a/playwright-tests/pages/PaymentMethodPage.ts b/playwright-tests/pages/PaymentMethodPage.ts index f150bd76c..00bb9c2e1 100644 --- a/playwright-tests/pages/PaymentMethodPage.ts +++ b/playwright-tests/pages/PaymentMethodPage.ts @@ -95,7 +95,7 @@ export class PaymentMethodPage extends BasePage { let expectedAppointmentDetails = new Map(); expectedAppointmentDetails = await this.getExpectedServiceLocationDateAndTimeSection(testData, expectedAppointmentDetails); - expectedAppointmentDetails = await this.getExpectedVehicleDamageLocations(testData, expectedAppointmentDetails); + expectedAppointmentDetails = await this.getExpectedVehicleDamageAndVehicle(testData, expectedAppointmentDetails); expectedAppointmentDetails = await this.getExpectedContactDetails(testData, expectedAppointmentDetails); expectedAppointmentDetails = await this.getExpectedTextServiceUpdatesOptInOrOut(testData, expectedAppointmentDetails); @@ -280,64 +280,66 @@ l return expectedServicePackageDetails; } - async getExpectedVehicleDamage(testdata: Partial, expectedServicePackageDetails: Map): Promise { + async getExpectedVehicleDamageAndVehicle(testdata: Partial, expectedServicePackageDetails: Map): Promise { - const {vehicleDamage} = testdata; + const {vehicleDetails, vehicleDamage} = testdata; - let vehicleDamageText: string[] = []; - if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.WindshieldOneChip)) { - vehicleDamageText.push("Windshield repair - 1 chip"); + let vehicleDamageText: string= ''; + if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.WindshieldOneChip || item == VehicleDamage.WindshieldTwoChips || item == VehicleDamage.WindshieldThreeChips)) { + vehicleDamageText = "Repair the windshield of your"; } - else if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.WindshieldTwoChips)) { - vehicleDamageText.push("Windshield repair - 2 chips"); - } - - else if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.WindshieldThreeChips)) { - vehicleDamageText.push("Windshield repair - 3 chips"); - } - if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.WindshieldCrack)) { - vehicleDamageText.push("Windshield crack"); + vehicleDamageText = vehicleDamage?.length > 1 ? "Replace the Windshield" : "Replace the windshield"; } - if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.DriverVentGlass)) { - vehicleDamageText.includes("Side door - Driver side") ? vehicleDamageText[vehicleDamageText.length - 1 ] += "\nVent glass" : vehicleDamageText.push("Side door - Driver side", "Vent glass"); + if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.DriverVentGlass) && !vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.WindshieldCrack)) { + vehicleDamageText.includes("Replace") ? vehicleDamageText += ", Driver Vent Glass" : "Replace the Driver Vent Glass"; } if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.DriverFrontDoor)) { - vehicleDamageText.includes("Side door - Driver side") ? vehicleDamageText[vehicleDamageText.length - 1 ] += "\nFront door" : vehicleDamageText.push("Side door - Driver side", "Front door"); + vehicleDamageText.includes("Replace") ? vehicleDamageText += ", Driver Front Glass" : "Replace the Driver Front Glass"; } if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.DriverRearDoor)) { - vehicleDamageText.includes("Side door - Driver side") ? vehicleDamageText[vehicleDamageText.length - 1 ] += "\nBack door" : vehicleDamageText.push("Side door - Driver side", "Back door"); - } + vehicleDamageText.includes("Replace") ? vehicleDamageText += ", Driver Back Glass" : "Replace the Driver Back Glass"; + } + + if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.DriverVentGlass) && vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.WindshieldCrack)) { + vehicleDamageText.includes("Replace") ? vehicleDamageText += ", Driver Vent Glass" : "Replace the Driver Vent Glass"; + } if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.DriverQuarterPanel)) { - vehicleDamageText.includes("Side door - Driver side") ? vehicleDamageText[vehicleDamageText.length - 1 ] += "\nQuarter panel" : vehicleDamageText.push("Side door - Driver side", "Quarter panel"); + vehicleDamageText.includes("Replace") ? vehicleDamageText += ", Driver Quarter Glass" : "Replace the Driver Quarter Glass"; } if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.PassengerVentGlass)) { - vehicleDamageText.includes("Side door - Passenger side") ? vehicleDamageText[vehicleDamageText.length - 1 ] += "\nVent glass" : vehicleDamageText.push("Side door - Passenger side", "Vent glass"); + vehicleDamageText.includes("Replace") ? vehicleDamageText += ", Passenger Vent Glass" : "Replace the Passenger Vent Glass"; } if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.PassengerFrontDoor)) { - vehicleDamageText.includes("Side door - Passenger side") ? vehicleDamageText[vehicleDamageText.length - 1 ] += "\nFront door" : vehicleDamageText.push("Side door - Passenger side", "Front door"); + vehicleDamageText.includes("Replace") ? vehicleDamageText += ", Passenger Front Glass" : "Replace the Passenger Front Glass"; } if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.PassengerRearDoor)) { - vehicleDamageText.includes("Side door - Passenger side") ? vehicleDamageText[vehicleDamageText.length - 1 ] += "\nBack door" : vehicleDamageText.push("Side door - Passenger side", "Back door"); + vehicleDamageText.includes("Replace") ? vehicleDamageText += ", Passenger Back Glass" : "Replace the Passenger Back Glass"; } if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.PassengerQuarterPanel)) { - vehicleDamageText.includes("Side door - Passenger side") ? vehicleDamageText[vehicleDamageText.length - 1 ] += "\nQuarter panel" : vehicleDamageText.push("Side door - Passenger side", "Quarter panel"); + vehicleDamageText.includes("Replace") ? vehicleDamageText += ", Passenger Quarter Glass" : "Replace the Passenger Quarter Glass"; } if (vehicleDamage?.find((item: VehicleDamage) => item == VehicleDamage.RearWindow || item == VehicleDamage.RearSliding)) { - vehicleDamageText.push("Rear window"); + vehicleDamageText.includes("Replace") ? vehicleDamageText += ", Back Glass" : "Replace the Back Glass"; } - expectedServicePackageDetails["Damage"] = vehicleDamageText; + // Replace last comma with " and" if there are multiple damages + if (vehicleDamageText.includes(",") && vehicleDamageText !== "Replace the windshield") + { + vehicleDamageText = vehicleDamageText.replace(/,([^,]*)$/, " and$1") + " of your"; + } + + expectedServicePackageDetails[vehicleDamageText] = [vehicleDetails?.year + " " + vehicleDetails?.make + " " + vehicleDetails?.model]; return expectedServicePackageDetails; } @@ -396,7 +398,6 @@ l let serviceLocationTitle = appointmentDetails?.serviceLocation == ServiceLocation.Mobile ? "We're coming to you" : "You're coming to us"; - let serviceLocation: string[] = []; let serviceLocationText = appointmentDetails?.serviceLocation == ServiceLocation.Mobile ? appointmentDetails?.serviceAddress ? appointmentDetails.serviceAddress.street + ", " + appointmentDetails.serviceAddress.city + ", " + appointmentDetails.serviceAddress.state + " " + appointmentDetails.serviceAddress.postalCode @@ -406,11 +407,8 @@ l : ""; serviceLocationText += " on " serviceLocationText += customerDetails?.apptDate ? await this.getFormattedAppointmentDate(customerDetails.apptDate) + " " + customerDetails?.apptTime?.replace("-", "—") : ""; - serviceLocation.push( - serviceLocationText - ); - expectedServicePackageDetails[serviceLocationTitle] = serviceLocation; + expectedServicePackageDetails[serviceLocationTitle] = [serviceLocationText]; return expectedServicePackageDetails; } @@ -437,7 +435,7 @@ l customerDetails?.phoneNumber ? customerDetails?.phoneNumber : "", ); - expectedServicePackageDetails["Contact details"] = customerDetailsText; + expectedServicePackageDetails["Contact details"] = customerDetailsText return expectedServicePackageDetails; } @@ -449,7 +447,7 @@ l let expectedText = isOptedInForTextMessages ? customerDetails?.phoneNumber : "Not opted in"; - expectedServicePackageDetails["We’ll text service updates to"] = expectedText + expectedServicePackageDetails["We’ll text service updates to"] = [expectedText]; return expectedServicePackageDetails; }