Merge pull request #1265 from Safelite/feature/humphries/INSR-9937

INSR-9937: Add source system and company code to register claim request
This commit is contained in:
AHumphriesSL 2026-06-18 14:58:20 -04:00 committed by GitHub
commit 5d975359e3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 50 additions and 3 deletions

View file

@ -125,7 +125,8 @@ export const getDefaultState = () => ({
},
firstName: null,
lastName: null,
emailAddress: null
emailAddress: null,
companyCode: null
},
serviceLocation: {
address: null,
@ -596,6 +597,7 @@ export const useMainStore = defineStore({
order.customer.address.zipCode = insured?.zipCode?.toString();
order.customer.firstName = insured?.firstName;
order.customer.lastName = insured?.lastName;
order.customer.companyCode = insured?.companyCode;
// populate additional fields
order.policy.policyData = responsePolicy.policyData;
@ -646,6 +648,7 @@ export const useMainStore = defineStore({
// This is here in case we have to deploy site for other fixes before coverage service gets updated.
isRepair: this.order.damage.isRepair,
isItac: isITAC,
sourceSystem: applicationConfig.APPLICATION_NAME,
insured: {
firstName: this.order.customer.firstName,
lastName: this.order.customer.lastName,
@ -676,6 +679,7 @@ export const useMainStore = defineStore({
actualDeductible: this.currentDeductible.toString() ?? '',
currentRepairDeductible: this.order.currentDeductible.repair,
currentReplaceDeductible: this.order.currentDeductible.replace,
company: this.order.customer.companyCode
},
lossInfo: {
dateOfLoss: this.order.policy.dateOfLoss,
@ -2175,6 +2179,7 @@ export const useMainStore = defineStore({
this.order.customer.address.zipCode = null;
this.order.customer.address.streetAddress = null;
this.order.customer.address.streetAddress2 = null;
this.order.customer.companyCode = null;
},
resetContactInfo() {

View file

@ -16,6 +16,7 @@ import coverageType from '@/constants/coverage-type';
import { getEnumName } from '@/helpers/unit-test-helper';
import { strictEqual } from 'assert';
import partNumberStrings from '@/constants/part-number-strings';
import applicationConfig from '@/constants/application-config';
describe('Store', () => {
let store;
@ -481,6 +482,42 @@ describe('Store', () => {
expect(store.order.insuranceCoverage.coverageStatus).toBe(coverageStatuses.NO_COVERAGE);
expect(store.order.insuranceCoverage.claimNumber).toBe(null);
});
it('calls api with expected data', async () => {
// Arrange
const companyCode = getRandomString(6, 6);
const originalDeductible = {
replace: 500,
repair: 0
};
const currentDeductible = {
replace: 500,
repair: 0
};
store.order.originalDeductible = {
replace: originalDeductible.replace,
repair: originalDeductible.repair
};
store.order.currentDeductible = {
replace: currentDeductible.replace,
repair: currentDeductible.repair
};
store.order.customer.companyCode = companyCode;
globalMethods.callHttpClient = jest.fn().mockReturnValue(Promise.resolve({}));
// Act
await store.registerClaim();
// Asserts
expect(globalMethods.callHttpClient).toHaveBeenCalledWith(expect.objectContaining({
payload: expect.objectContaining({
sourceSystem: applicationConfig.APPLICATION_NAME,
policyInfo: expect.objectContaining({
company: companyCode
})
})
}));
});
});
describe('updateContactInfo method', () => {
@ -1299,6 +1336,7 @@ describe('Store', () => {
const zipCode = getRandomString(6, 6);
const firstName = getRandomString(6, 6);
const lastName = getRandomString(6, 6);
const companyCode = getRandomString(6, 6);
const vehicle = { id: '123' };
@ -1313,7 +1351,8 @@ describe('Store', () => {
state,
zipCode,
firstName,
lastName
lastName,
companyCode
}
],
vehicles: [
@ -1335,6 +1374,7 @@ describe('Store', () => {
await expect(store.order.customer.address.zipCode).toBe(zipCode);
await expect(store.order.customer.firstName).toBe(firstName);
await expect(store.order.customer.lastName).toBe(lastName);
await expect(store.order.customer.companyCode).toBe(companyCode)
await expect(store.order.policy.vehicles).toStrictEqual([vehicle]);
});
it('calls api with expected data', async () => {
@ -1404,7 +1444,8 @@ describe('Store', () => {
lastName: getRandomString(6, 6),
city: getRandomString(6, 6),
state: getRandomString(6, 6),
zipCode: getRandomString(6, 6)
zipCode: getRandomString(6, 6),
companyCode: getRandomString(6, 6)
};
const vehicles = [
{ name: getRandomString(6, 6) },
@ -1435,6 +1476,7 @@ describe('Store', () => {
expect(store.order.customer.address.zipCode).toBe(insured.zipCode);
expect(store.order.customer.firstName).toBe(insured.firstName);
expect(store.order.customer.lastName).toBe(insured.lastName);
expect(store.order.customer.companyCode).toBe(insured.companyCode);
expect(store.order.policy.vehicles).toEqual(vehicles);
});