Merge pull request #332 from Safelite/feature/digital/SSR-498

Feature/digital/ssr 498
This commit is contained in:
katiekroell 2023-06-01 15:17:52 -04:00 committed by GitHub
commit 76178d0ac6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 51 additions and 36 deletions

View file

@ -122,8 +122,7 @@ const mockMixin = {
function setupMocks({ function setupMocks({
pageHeaderWidgetHeaderText, pageHeaderWidgetHeaderText,
// cmsPageContent = "CMS content goes here", mountOptionsMockData = {},
// unverifiedNonADASRepairBodyText = "repair body text",
}) { }) {
//Mock api responses //Mock api responses
const apiResponses = { const apiResponses = {
@ -142,6 +141,7 @@ pageHeaderWidgetHeaderText,
unverifiedNonADASRepairBodyText: "Repair body text", unverifiedNonADASRepairBodyText: "Repair body text",
}, },
}; };
useMainStore().order = { useMainStore().order = {
vehicle: { vehicle: {
vin: "TESTVIN", vin: "TESTVIN",
@ -171,9 +171,7 @@ pageHeaderWidgetHeaderText,
settleAllPromises.mockImplementation(() => apiPromise); settleAllPromises.mockImplementation(() => apiPromise);
fetchCmsContentForPage.mockImplementation(() => Promise.resolve()); fetchCmsContentForPage.mockImplementation(() => Promise.resolve());
const mountOptions = getMountOptions({ const mountOptions = getMountOptions({});
});
mountOptions.mixins = [baseMixin, vehicleQuestionsMixin]; mountOptions.mixins = [baseMixin, vehicleQuestionsMixin];
@ -181,12 +179,6 @@ pageHeaderWidgetHeaderText,
wrapper.vm.setCmsContent = baseMixin.methods.setCmsContent; wrapper.vm.setCmsContent = baseMixin.methods.setCmsContent;
// //Mock CMS content
// const cmsContent = {
// PageContent: cmsPageContent,
// NonADASRepairBodyText: unverifiedNonADASRepairBodyText,
// };
return { wrapper }; return { wrapper };
} }

View file

@ -9,34 +9,29 @@
<div class="col"> <div class="col">
<div class="select-car-form rounded pb-1"> <div class="select-car-form rounded pb-1">
<textBlock <textBlock
cmsWidgetName="verifyingCoverageStatement" cmsWidgetName="verifyingCoverageStatement"
typeStyle="h5" typeStyle="h5"
justifyText="center" justifyText="center"
class="mt-4 mb-4" class="mt-4 mb-4"
id="coverage-statement-text-block" id="coverage-statement-text-block" />
/>
<div> <div>
<p v-html="continueWithSchedulingBodyText" class="mt-0 small" ></p> <p v-html="continueWithSchedulingBodyText" class="mt-0 small" ></p>
</div> </div>
<textBlock <textBlock
cmsWidgetName="whatHappensNextCopy" cmsWidgetName="whatHappensNextCopy"
class="mt-4 mb-2 fw-bold" class="mt-4 mb-2 fw-bold"
id="coverage-statement-text-block" id="coverage-statement-text-block" />
/>
<div> <div>
<p class="small" v-html="bodyText" ref="coverageStatementBodyText"></p> <p class="small" v-html="bodyText" ref="coverageStatementBodyText"></p>
</div> </div>
<steeringText cmsWidgetName="MASteeringText" ></steeringText> <steeringText cmsWidgetName="MASteeringText" ></steeringText>
</div> </div>
<siteFooter <siteFooter
cmsWidgetName="SiteFooterWidget" cmsWidgetName="SiteFooterWidget"
:isForwardActionDisabled="!meta.valid" :isForwardActionDisabled="!meta.valid"
@backClicked="navigateBack" @backClicked="navigateBack"
@forwardClicked="forwardButtonAction" @forwardClicked="forwardButtonAction"
ref="siteFooter" ref="siteFooter" />
/>
</div> </div>
</div> </div>
</div> </div>

View file

@ -452,9 +452,15 @@ export default {
this.hasGlassLocationWithMultipleParts(partsOrQuestions); this.hasGlassLocationWithMultipleParts(partsOrQuestions);
const hasChildPartQuestions = this.hasChildPartQuestions(partsOrQuestions); const hasChildPartQuestions = this.hasChildPartQuestions(partsOrQuestions);
const hasCapabilityQuestions = this.hasCapabilityQuestions(partsOrQuestions); const hasCapabilityQuestions = this.hasCapabilityQuestions(partsOrQuestions);
let backNavigationScenario = self.mainStore.vehicle.vin let backNavigationScenario = "";
? navigationScenarios.CLICKED_BACK_WITH_VIN_AND_NO_MORE_QUESTIONS if (self.mainStore.order.damage.isRepair) {
: navigationScenarios.CLICKED_BACK_WITH_NO_VIN_NOR_QUESTIONS; backNavigationScenario = navigationScenarios.CLICKED_BACK_WITH_REPAIR;
}
else {
backNavigationScenario = self.mainStore.vehicle.vin
? navigationScenarios.CLICKED_BACK_WITH_VIN_AND_NO_MORE_QUESTIONS
: navigationScenarios.CLICKED_BACK_WITH_NO_VIN_NOR_QUESTIONS;
}
const currentPage = self.$route.query.issPage; const currentPage = self.$route.query.issPage;
if ( if (

View file

@ -2080,6 +2080,21 @@ describe("vehicle-questions-mixin", () => {
}); });
describe("navigateBack", () => { describe("navigateBack", () => {
test("current page is coverage-statement and damage is repair => go to vehicle-damage", () => {
// Arrange
const { wrapper } = setupMocks({ issPage: issPageValues.COVERAGE_STATEMENT });
useMainStore().order.damage.isRepair = true;
// Act
wrapper.vm.navigateBack();
// Assert
expect(wrapper.vm.$router.navigate).toHaveBeenCalledWith(
navigationScenarios.CLICKED_BACK_WITH_REPAIR,
{ query: { issPage: issPageValues.COVERAGE_STATEMENT } }
);
});
test("current page is molding questions and there are part questions, multiple parts to choose, and capability questions => go to vehicle-parts", () => { test("current page is molding questions and there are part questions, multiple parts to choose, and capability questions => go to vehicle-parts", () => {
// Arrange // Arrange
const { wrapper } = setupMocks({ issPage: issPageValues.MOLDING_QUESTIONS }); const { wrapper } = setupMocks({ issPage: issPageValues.MOLDING_QUESTIONS });

View file

@ -52,6 +52,9 @@ const navigationScenarios = {
CLICKED_BACK_WITH_VIN_AND_NO_MORE_QUESTIONS: "CLICKED_BACK_WITH_VIN_AND_NO_MORE_QUESTIONS", CLICKED_BACK_WITH_VIN_AND_NO_MORE_QUESTIONS: "CLICKED_BACK_WITH_VIN_AND_NO_MORE_QUESTIONS",
CLICKED_BACK_WITH_NO_VIN_NOR_QUESTIONS: "CLICKED_BACK_WITH_NO_VIN_NOR_QUESTIONS", CLICKED_BACK_WITH_NO_VIN_NOR_QUESTIONS: "CLICKED_BACK_WITH_NO_VIN_NOR_QUESTIONS",
// Coverage Statement
CLICKED_BACK_WITH_REPAIR: "CLICKED_BACK_WITH_REPAIR",
//Provider Preference //Provider Preference
CLICKED_FORWARD_WITH_SAFELITE: "CLICKED_FORWARD_WITH_SAFELITE", CLICKED_FORWARD_WITH_SAFELITE: "CLICKED_FORWARD_WITH_SAFELITE",
CLICKED_FORWARD_WITH_TPA_ENABLED: "CLICKED_FORWARD_WITH_TPA_ENABLED", CLICKED_FORWARD_WITH_TPA_ENABLED: "CLICKED_FORWARD_WITH_TPA_ENABLED",

View file

@ -474,10 +474,14 @@ const routingTable = function(store) {
scenario: navigationScenarios.CLICKED_BACK_WITH_CAPABILITY_QUESTIONS, scenario: navigationScenarios.CLICKED_BACK_WITH_CAPABILITY_QUESTIONS,
destinationIssPageValue: issPageValues.CAPABILITY_QUESTIONS destinationIssPageValue: issPageValues.CAPABILITY_QUESTIONS
}, },
{
scenario: navigationScenarios.CLICKED_BACK_WITH_REPAIR,
destinationIssPageValue: issPageValues.VEHICLE_DAMAGE
},
{ {
scenario: navigationScenarios.CLICKED_FORWARD, scenario: navigationScenarios.CLICKED_FORWARD,
destinationIssPageValue: issPageValues.PROVIDER_PREFERENCE destinationIssPageValue: issPageValues.PROVIDER_PREFERENCE
} },
] ]
}, },
{ {