diff --git a/src/layouts/welcome-page/welcome-page.spec.js b/src/layouts/welcome-page/welcome-page.spec.js index 573b8fce..29520d8c 100644 --- a/src/layouts/welcome-page/welcome-page.spec.js +++ b/src/layouts/welcome-page/welcome-page.spec.js @@ -179,13 +179,8 @@ describe('navigation', () => { test('if duplicates found, navigate to duplicate check page', async () => { // Arrange const { wrapper } = getMountedComponent({}); - - const duplicatesExist = { - policyLookupResponse: {}, - duplicateCheckResponse: [{ test: 'a'}] - }; - - settleAllPromises.mockImplementation(() => Promise.resolve(duplicatesExist)); + useMainStore().getDuplicateReferrals = jest.fn().mockImplementation(() => Promise.resolve({})); + useMainStore().applicationUser.duplicateOrders = [{ test: 'a' }]; // Act await wrapper.vm.forwardButtonAction(); @@ -199,39 +194,18 @@ describe('navigation', () => { { [routerParams.SAVE_SESSION_SYNCHRONOUS]: true } ); }); - test('if policy and vehicles are found, navigate to policy-vehicle page', async () => { + test('if policy and vehicles are found but no duplicates, navigate to policy-vehicle page', async () => { // Arrange - const mockvehicles = [ - { - vin: 'TEST_VIN' - }, - { - vin: 'TEST_VIN2' - } + const { wrapper } = setupMocks({}); + useMainStore().getDuplicateReferrals = jest.fn().mockImplementation(() => Promise.resolve({})); + + useMainStore().applicationUser.duplicateOrders = []; + useMainStore().order.policy.policyLookupSuccessful = true; + useMainStore().order.policy.vehicles = [ + { vin: 'TEST_VIN' }, + { vin: 'TEST_VIN2' } ]; - const { wrapper } = setupMocks({ - policies: [{ - vehicles: [ - { - vin: 'TEST_VIN' - }, - { - vin: 'TEST_VIN2' - } - ] - }] - }); - - await wrapper.setData({ - vehiclesFound: mockvehicles - }); - - useMainStore().issConfig.isCoverageEnabled = true; - useMainStore().order.policy.policyNumber = 'p_0001'; - useMainStore().order.policy.dateOfLoss = '2022-01-28'; - useMainStore().order.accountNumber = '00000'; - // Act await wrapper.vm.forwardButtonAction(); @@ -243,20 +217,14 @@ describe('navigation', () => { { [routerParams.SAVE_SESSION_SYNCHRONOUS]: true } ); }); - test('if policy is found, but no vehicles, navigate to vehicle-selection page', async () => { + test('if policy is found, but no vehicles and no duplicates, navigate to vehicle-selection page', async () => { // Arrange - const { wrapper } = setupMocks({ - policies: [{}] - }); + const { wrapper } = setupMocks({}); + useMainStore().getDuplicateReferrals = jest.fn().mockImplementation(() => Promise.resolve({})); - await wrapper.setData({ - vehiclesFound: null - }); - - useMainStore().issConfig.isCoverageEnabled = true; - useMainStore().order.policy.policyNumber = 'p_0001'; - useMainStore().order.policy.dateOfLoss = '2022-01-28'; - useMainStore().order.accountNumber = '00000'; + useMainStore().applicationUser.duplicateOrders = []; + useMainStore().order.policy.policyLookupSuccessful = true; + useMainStore().order.policy.vehicles = []; // Act @@ -270,16 +238,34 @@ describe('navigation', () => { { [routerParams.SAVE_SESSION_SYNCHRONOUS]: true } ); }); - test('if policy is not found, navigate to policy-holder-details page', async () => { + test('if policy is found, but null vehicles and no duplicates, navigate to vehicle-selection page', async () => { // Arrange - const { wrapper } = setupMocks({ - policies: null - }); + const { wrapper } = setupMocks({}); + useMainStore().getDuplicateReferrals = jest.fn().mockImplementation(() => Promise.resolve({})); - useMainStore().issConfig.isCoverageEnabled = true; - useMainStore().order.policy.policyNumber = 'p_0001'; - useMainStore().order.policy.dateOfLoss = '2022-01-28'; - useMainStore().order.accountNumber = '00000'; + useMainStore().applicationUser.duplicateOrders = []; + useMainStore().order.policy.policyLookupSuccessful = true; + useMainStore().order.policy.vehicles = null; + + // Act + + await wrapper.vm.forwardButtonAction(); + + // Assert + expect(wrapper.vm.$router.navigate).toHaveBeenCalledWith( + navigationScenarios.CLICKED_FORWARD_POLICY_VERIFIED_NO_VEHICLES, + undefined, + {}, + { [routerParams.SAVE_SESSION_SYNCHRONOUS]: true } + ); + }); + test('if policy is not found and no duplicates, navigate to policy-holder-details page', async () => { + // Arrange + const { wrapper } = setupMocks({}); + useMainStore().getDuplicateReferrals = jest.fn().mockImplementation(() => Promise.resolve({})); + + useMainStore().order.policy.policyLookupSuccessful = false; + useMainStore().applicationUser.duplicateOrders = []; // Act await wrapper.vm.navigateForward(); diff --git a/src/layouts/welcome-page/welcome-page.vue b/src/layouts/welcome-page/welcome-page.vue index d2ad05b0..c4d49845 100644 --- a/src/layouts/welcome-page/welcome-page.vue +++ b/src/layouts/welcome-page/welcome-page.vue @@ -167,6 +167,7 @@