diff --git a/src/layouts/address-lookup/address-lookup.spec.js b/src/layouts/address-lookup/address-lookup.spec.js index ddc65015..6bf15d2e 100644 --- a/src/layouts/address-lookup/address-lookup.spec.js +++ b/src/layouts/address-lookup/address-lookup.spec.js @@ -2,6 +2,7 @@ import addressLookup from '@/layouts/address-lookup/address-lookup.vue'; // Supporting Files +import baseMixin from '@/mixins/base-mixin'; import settleAllPromises from '@/helpers/layout-helper.js'; import { shallowMount } from '@vue/test-utils'; import { getMountOptions } from '@/helpers/unit-test-helper.js'; @@ -84,6 +85,8 @@ function setupMocks({ wrapper.vm.getCmsContent = jest.fn().mockImplementation(() => ''); wrapper.vm.setCmsContent = jest.fn(); + wrapper.vm.$router.navigateWithSpinner = jest.fn(); + wrapper.vm.navigateBack = baseMixin.methods.navigateBack; wrapper.vm.$refs.siteFooter.updateButtonText = jest.fn(); wrapper.vm.$refs.siteFooter.removeLoader = jest.fn(); wrapper.vm.$refs.siteFooter.disableForwardButton = jest.fn(); @@ -164,7 +167,8 @@ describe('address-lookup.vue', () => { }); // eslint-disable-next-line max-len - test('if the looking up VIN by address is not allowed in the state selected display the Vin Lookup By HomeAddress Not Allowed Alert', + test( + 'if the looking up VIN by address is not allowed in the state selected display the Vin Lookup By HomeAddress Not Allowed Alert', async () => { // Arrange const mockRegistrationAddress = { @@ -208,7 +212,8 @@ describe('address-lookup.vue', () => { // Assert expect(wrapper.findComponent({ ref: 'alertVinLookupsByHomeAddressNotAllowed' }).isVisible()).toBe(true); - }); + } + ); test('if no vehicles found, display Vin Not Found alert', async () => { // Arrange @@ -251,10 +256,10 @@ describe('address-lookup.vue', () => { }); // Act - await wrapper.vm.backButtonAction(); + await wrapper.vm.navigateBack(); // Assert - expect(wrapper.vm.$router.navigate).toHaveBeenCalled(); + expect(wrapper.vm.$router.navigateWithSpinner).toHaveBeenCalled(); }); test('if the car entered matches one of the vehicles found navigate forward', async () => { @@ -358,7 +363,8 @@ describe('address-lookup.vue', () => { }); // eslint-disable-next-line max-len - test('if a different vehicle is found than the one entered and the selected glass is not available for that vehicle, navigate back to vehicle-damage page', + test( + 'if a different vehicle is found than the one entered and the selected glass is not available for that vehicle, navigate back to vehicle-damage page', async () => { // Arrange const mockRegistrationAddress = { diff --git a/src/layouts/address-lookup/address-lookup.vue b/src/layouts/address-lookup/address-lookup.vue index 9f86be4e..f040fc93 100644 --- a/src/layouts/address-lookup/address-lookup.vue +++ b/src/layouts/address-lookup/address-lookup.vue @@ -62,7 +62,7 @@ :isDisabled="!meta.valid" :isForwardActionDisabled="!meta.valid" @ForwardClicked="forwardButtonAction" - @backClicked="backButtonAction" /> + @backClicked="navigateBack" /> @@ -205,11 +205,6 @@ export default { arePagePrerequisitesValid() { return useMainStore().order.vehicle.carId !== null; }, - - backButtonAction() { - // route to move backwards - this.$router.navigate(this.navigationScenarios.CLICKED_BACK, this.$route); - }, attachCustomEvents() { this.prependActionToMethod(this, this.forwardButtonAction, () => { this.pushEventToGA( diff --git a/src/layouts/address-vehicles/address-vehicles.spec.js b/src/layouts/address-vehicles/address-vehicles.spec.js index caab2ae3..14d97555 100644 --- a/src/layouts/address-vehicles/address-vehicles.spec.js +++ b/src/layouts/address-vehicles/address-vehicles.spec.js @@ -1,4 +1,5 @@ import addressVehicles from '@/layouts/address-vehicles/address-vehicles.vue'; +import baseMixin from '@/mixins/base-mixin'; import settleAllPromises from '@/helpers/layout-helper.js'; import { shallowMount } from '@vue/test-utils'; import { getMountOptions } from '@/helpers/unit-test-helper.js'; @@ -115,6 +116,8 @@ function setupMocks({ wrapper.vm.getCmsContent = jest.fn().mockImplementation(() => ''); wrapper.vm.setCmsContent = jest.fn(); + wrapper.vm.$router.navigateWithSpinner = jest.fn(); + wrapper.vm.navigateBack = baseMixin.methods.navigateBack; wrapper.vm.$refs.siteFooter.updateButtonText = jest.fn(); wrapper.vm.$refs.siteFooter.removeLoader = jest.fn(); @@ -127,10 +130,10 @@ describe('address-vehicles.vue', () => { const { wrapper } = setupMocks({}); // Act - await wrapper.vm.backButtonAction(); + await wrapper.vm.navigateBack(); // Assert - expect(wrapper.vm.$router.navigate).toBeCalled(); + expect(wrapper.vm.$router.navigateWithSpinner).toBeCalled(); }); test('navigateForward should be called if forwardButtonAction is run', async () => { @@ -190,7 +193,8 @@ describe('address-vehicles.vue', () => { }); // eslint-disable-next-line max-len - test('Should navigate to CLICKED_FORWARD scenario if carId is different and selected glass not available for vehicle on navigateForward', + test( + 'Should navigate to CLICKED_FORWARD scenario if carId is different and selected glass not available for vehicle on navigateForward', async () => { // Arrange const { wrapper } = setupMocks({}); diff --git a/src/layouts/address-vehicles/address-vehicles.vue b/src/layouts/address-vehicles/address-vehicles.vue index 4494d938..142eee57 100644 --- a/src/layouts/address-vehicles/address-vehicles.vue +++ b/src/layouts/address-vehicles/address-vehicles.vue @@ -56,7 +56,7 @@ ref="siteFooter" cmsWidgetName="SiteFooterWidget" :isForwardActionDisabled="!meta.valid" - @backClicked="backButtonAction" + @backClicked="navigateBack" @forwardClicked="forwardButtonAction" /> @@ -231,9 +231,6 @@ export default { } return false; }, - backButtonAction() { - this.$router.navigate(this.navigationScenarios.CLICKED_BACK, this.$route); - }, async forwardButtonAction() { const vinLookup = await useMainStore() .lookupVehicleByVin(this.selectedVehicle.vin) diff --git a/src/layouts/capability-questions/capability-questions.vue b/src/layouts/capability-questions/capability-questions.vue index 09bfe96c..bfa557f0 100644 --- a/src/layouts/capability-questions/capability-questions.vue +++ b/src/layouts/capability-questions/capability-questions.vue @@ -15,7 +15,7 @@ :validationRules="rules.optionRequired" :index="currentGlassIndex" @forwardButtonAction="forwardButtonAction" - @backClick="navigateBack" /> + @backClick="navigateBackByVehicleQuestions" />