//Imports here import { ITestData } from 'framework/TestData' import { VehicleDamage, PartQuestionType, PaymentType } from 'safelite-playwright-core'; import { ITestCase } from '../framework/Typedefs' import { VehicleLookupType } from 'safelite-playwright-core'; import { getDefaultTestData, setFakerSeedFromTestName } from 'safelite-playwright-core'; import { PaymentMethod } from 'framework/localTypes/Enums'; // Set the seed before generating any data setFakerSeedFromTestName("CashReplaceMultiGlassPromoInshop"); // Now get the test data with the seeded faker const cashReplaceMultiGlassPromoInshopData: Partial = { ...getDefaultTestData(), // Get default data with current seed // CASH Client paymentMethod: PaymentMethod.SelfPay, // Flag for recalibration vehicle isRecalVehicle: true, // Override customer details - different postal code customerDetails: { ...getDefaultTestData().customerDetails!, address: { ...getDefaultTestData().customerDetails!.address, postalCode: '43085' } }, // Override vehicle details with VIN lookup vehicleDetails: { ...getDefaultTestData().vehicleDetails!, year: '2019', make: 'Subaru', model: 'Outback', style: '4 door station wagon', vin: '4S4BSENC4K3221004', vehicleLookupType: VehicleLookupType.Vin }, // Key feature: multiple damaged glasses vehicleDamage: [ VehicleDamage.WindshieldCrack, VehicleDamage.DriverFrontDoor, VehicleDamage.DriverRearDoor, VehicleDamage.DriverVentGlass, VehicleDamage.PassengerVentGlass, VehicleDamage.RearWindow ], // Override payment details paymentDetails: { paymentType: PaymentType.PayAtService, // Add promo code promoCode: '20CALL', }, // Vehicle part questions for multiple glass parts vehiclePartQuestions: [ { partQuestionType: PartQuestionType.WindshieldColor, isOnPage: true, optionToSelect: 'Green Tint, Blue Shade', secondaryQuestionOptionToSelect: 'solar, lane departure warning system, heated glass wiper park, high beam assist, soundproofing' }, { partQuestionType: PartQuestionType.DriverFrontColor, isOnPage: true, optionToSelect: 'Green Tint', secondaryQuestionOptionToSelect: 'solar, driver side, front, soundproofing, laminated' }, { partQuestionType: PartQuestionType.DriverRearColor, isOnPage: true, optionToSelect: 'Gray Tint Privacy', secondaryQuestionOptionToSelect: 'solar, driver side, rear' }, { partQuestionType: PartQuestionType.DriverVentColor, isOnPage: true, optionToSelect: 'Gray Tint Privacy', secondaryQuestionOptionToSelect: 'solar, driver side, rear' }, { partQuestionType: PartQuestionType.PassengerVentColor, isOnPage: true, optionToSelect: 'Gray Tint Privacy', secondaryQuestionOptionToSelect: 'solar, passenger side, rear' }, { partQuestionType: PartQuestionType.RearWindowColor, isOnPage: true, optionToSelect: 'Green Tint', secondaryQuestionOptionToSelect: 'heated glass, solar, antenna, manual liftgate, 1 hole' } ] } const cashReplaceMultiGlassPromoInshopTests: ITestCase[] = []; const tc = { name: `CashReplaceMultiGlassPromoInshop`, tags: ['@E2E','@CashReplaceMultiGlassPromoInshop', '@test_report', '@CASH', '@CASH-848'], testData: cashReplaceMultiGlassPromoInshopData }; cashReplaceMultiGlassPromoInshopTests.push(tc); export default cashReplaceMultiGlassPromoInshopTests;