101 lines
No EOL
3.2 KiB
TypeScript
101 lines
No EOL
3.2 KiB
TypeScript
//Imports here
|
|
import { ITestData, getDefaultExperimentsData } from 'framework/TestData'
|
|
import { ServiceLocation, DamageType, PartQuestionType, VehicleDamage, PaymentType, Flow } from 'safelite-playwright-core';
|
|
import { PaymentMethod } from "framework/localTypes/Enums";
|
|
import { ITestCase } from '../framework/Typedefs'
|
|
import { VehicleLookupType } from 'safelite-playwright-core';
|
|
import { getDefaultTestData, setFakerSeedFromTestName } from 'safelite-playwright-core';
|
|
|
|
// Set the seed based on test name for consistent but unique data
|
|
setFakerSeedFromTestName("InsuranceUSAAMsr");
|
|
|
|
// Now get the test data with the seeded faker
|
|
const insuranceUSAAMsrData: Partial<ITestData> = {
|
|
...getDefaultTestData(), // Get default data with current seed
|
|
|
|
// Key feature: Insurance flow with Acuity
|
|
paymentMethod: PaymentMethod.Insurance,
|
|
|
|
// Insurance claim flags
|
|
isDuplicateClaim: true,
|
|
flow: Flow.Managed,
|
|
isUseVehicleOnPolicy: true,
|
|
|
|
// Override customer details for Kentucky location
|
|
customerDetails: {
|
|
...getDefaultTestData().customerDetails!,
|
|
address: {
|
|
street: getDefaultTestData().customerDetails!.address.street,
|
|
city: 'Cleaveland',
|
|
state: 'Ohio',
|
|
postalCode: '44125',
|
|
country: 'United States'
|
|
}
|
|
},
|
|
|
|
// Insurance claim details
|
|
claimDetails: {
|
|
client: 'USAA',
|
|
policyNumber: 'MOCK900040MSR',
|
|
policyDeductible: 100.00,
|
|
damageDate: new Date(new Date().setDate(new Date().getDate() - 1)).toLocaleDateString('en-US', {month: '2-digit', day: '2-digit', year: 'numeric'}),
|
|
damageCause: DamageType.Rock
|
|
},
|
|
|
|
// Heavy duty truck details with VIN lookup
|
|
vehicleDetails: {
|
|
...getDefaultTestData().vehicleDetails!,
|
|
year: '2023',
|
|
make: 'Hyundai',
|
|
model: 'Elantra',
|
|
style: '4 door sedan'
|
|
},
|
|
|
|
isRecalVehicle: true,
|
|
|
|
// No need to override vehicleDamage as it already defaults to WindshieldCrack
|
|
|
|
// Override for mobile service
|
|
appointmentDetails: {
|
|
serviceLocation: ServiceLocation.Mobile,
|
|
appointmentDate: getDefaultTestData().appointmentDetails?.appointmentDate,
|
|
serviceAddress: {
|
|
// Use street address from current faker seed
|
|
street: "13300 Carpenter Rd",
|
|
city: 'Cleveland',
|
|
state: 'OH',
|
|
postalCode: '44125',
|
|
country: 'United States'
|
|
}
|
|
},
|
|
|
|
// Part questions for windshield
|
|
partQuestions: [
|
|
{
|
|
partQuestionType: PartQuestionType.GeneralQuestion1,
|
|
isOnPage: true,
|
|
optionToSelect: 'Yes'
|
|
},
|
|
],
|
|
|
|
// Override payment details (empty because we skip payment method page in insurance flow)
|
|
paymentDetails: {
|
|
paymentType: PaymentType.PayAtService
|
|
},
|
|
|
|
// Experiments
|
|
experiments: {
|
|
...getDefaultExperimentsData()
|
|
}
|
|
}
|
|
|
|
const insuranceUSAAMsrTests: ITestCase[] = [];
|
|
|
|
const tc = {
|
|
name: `InsuranceUSAAMsr`,
|
|
tags: ['@E2E','@InsuranceAcuityPaypal', '@test_report', '@Insurance', '@CASH-1187', '@CASH-848'],
|
|
testData: insuranceUSAAMsrData
|
|
};
|
|
insuranceUSAAMsrTests.push(tc);
|
|
|
|
export default insuranceUSAAMsrTests; |