diff --git a/src/store/index.js b/src/store/index.js index 383ac713..52767a97 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -758,6 +758,9 @@ export const useMainStore = defineStore({ // These could be undefined this.order.policy.noCoverage = vehicle.noCoverage; + this.order.payment.insuranceCoverage.coverageStatus = vehicle.noCoverage + ? coverageStatuses.NO_COMP + : coverageStatuses.PENDING; this.order.policy.deductible.replace = vehicle.deductible; this.order.policy.deductible.repair = vehicle?.repairWaived ?? false ? 0 : vehicle.deductible; diff --git a/src/store/store.spec.js b/src/store/store.spec.js index 369d387e..7585ef45 100644 --- a/src/store/store.spec.js +++ b/src/store/store.spec.js @@ -197,6 +197,24 @@ describe('Store', () => { expect(store.order.policy).toMatchObject(expectedPolicy); }); + it.only.each([ + [true, coverageStatuses.NO_COMP], + [false, coverageStatuses.PENDING] + ])('UpdateVehicle should set coverageStatus appropriately based on noCoverage value', + (expectedNoCoverage, expectedCoverageStatus) => { + // Arrange + const vehicle = { + noCoverage: expectedNoCoverage + }; + + // Act + store.updateVehicle(vehicle); + + // Assert + expect(store.order.policy.noCoverage).toBe(expectedNoCoverage); + expect(store.order.payment.insuranceCoverage.coverageStatus).toBe(expectedCoverageStatus); + }); + // TODO update test to work also checking store values it('setVehicle should call globalMethods.callHttpClient', () => { // Arrange