Merge pull request #447 from Safelite/CSR-561-qa-bug-fixes

CSR-561 QA Updates
This commit is contained in:
bmauger 2022-05-16 10:36:32 -04:00 committed by GitHub
commit fe63650872
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 31 additions and 16 deletions

View file

@ -24,7 +24,7 @@
<alert class="my-3" :manualHeadline="NoServiceZipHeader" :manualCopy="NoServiceZipBody" v-if="!isRegistrationZipServicable && isVinValid && !isCarIdDifferent" alertClass="alert-danger" /> <alert class="my-3" :manualHeadline="NoServiceZipHeader" :manualCopy="NoServiceZipBody" v-if="!isRegistrationZipServicable && isVinValid && !isCarIdDifferent" alertClass="alert-danger" />
<div class="row my-2"> <div class="row my-2">
<div class="col"> <div class="col">
<textboxQuestion v-if="!isRegistrationZipServicable" cmsWidgetName="ServiceZip" v-model="serviceZip" inputId="serviceZip" validationRules="zip-required" /> <textboxQuestion v-if="!isRegistrationZipServicable" cmsWidgetName="ServiceZip" v-model="serviceZip" inputId="serviceZip" validationRules="zip-required|zip-format" />
</div> </div>
</div> </div>
<alert class="my-3" cmsWidgetName="NoMatchAlertWidget" v-if="!isVinValid" /> <alert class="my-3" cmsWidgetName="NoMatchAlertWidget" v-if="!isVinValid" />
@ -46,25 +46,25 @@ import alert from "@/ux-components/alert/alert";
import textboxQuestion from "@/common-components/textbox-question/textbox-question"; import textboxQuestion from "@/common-components/textbox-question/textbox-question";
import loadingModal from '@/common-components/loading-modal/loading-modal.vue'; import loadingModal from '@/common-components/loading-modal/loading-modal.vue';
// Supporting files // Supporting files
import { import {
fetchCmsContentForPage fetchCmsContentForPage
} from "@/helpers/cms-content-helper"; } from "@/helpers/cms-content-helper";
import { import {
settleAllPromises settleAllPromises
} from "@/helpers/layout-helper"; } from "@/helpers/layout-helper";
import store from "@/store"; import store from "@/store";
import baseMixin from "@/mixins/base-mixin.js"; import baseMixin from "@/mixins/base-mixin.js";
import { import {
storeActions storeActions
} from "@/constants/store-actions"; } from "@/constants/store-actions";
import { import {
storeMutations storeMutations
} from "@/constants/store-mutations"; } from "@/constants/store-mutations";
import { import {
errorMessages errorMessages
} from "@/constants/error-messages"; } from "@/constants/error-messages";
import { import {
navigateAfterSaveToHeritageFunnel navigateAfterSaveToHeritageFunnel
} from "@/helpers/heritage-integration/navigation-helper"; } from "@/helpers/heritage-integration/navigation-helper";
import { import {
getDamageString, getDamageString,
@ -80,6 +80,10 @@ import {
} from "vee-validate"; } from "vee-validate";
// DEFINE VALIDATION RULES // DEFINE VALIDATION RULES
defineRule(
"zip-format",
regex(/(^\d{5}$)|(^\d{5}-\d{4}$)/, errorMessages.SERVICE_ZIP_FORMAT)
);
defineRule( defineRule(
"license-plate-required", "license-plate-required",
required(errorMessages.LICENSE_PLATE_REQUIRED) required(errorMessages.LICENSE_PLATE_REQUIRED)
@ -256,7 +260,7 @@ export default {
vinLookup.data.vehicle, vinLookup.data.vehicle,
zipValidation.data.state zipValidation.data.state
); );
this.navigateForward(); this.navigateForward();
}, },
navigateForward() { navigateForward() {
@ -335,4 +339,4 @@ export default {
loadingModal, loadingModal,
}, },
}; };
</script> </script>

View file

@ -41,7 +41,7 @@
mask="#####" mask="#####"
isRequired isRequired
disableAutoFill disableAutoFill
validationRules="zip-required" validationRules="zip-required|zip-format"
/> />
</div> </div>
</div> </div>
@ -97,10 +97,11 @@
/> />
<alert <alert
class="my-3" class="my-3"
:manualHeadline="PerfectMatchNewVinAlertHeader"
:manualCopy="PerfectMatchNewVinAlertBody"
v-model="customAlertData" v-model="customAlertData"
v-if="perfectMatchNewVinAlert" v-if="perfectMatchNewVinAlert && !noServiceZip && meta.valid"
alertClass="alert-success" alertClass="alert-success"
cmsWidgetName="PerfectMatchNewVinAlert"
/> />
<funnelFooter <funnelFooter
cmsWidgetName="FunnelFooterWidget" cmsWidgetName="FunnelFooterWidget"
@ -139,7 +140,14 @@ import { Form, defineRule } from "vee-validate";
import { navigateAfterSaveToHeritageFunnel } from "@/helpers/heritage-integration/navigation-helper"; import { navigateAfterSaveToHeritageFunnel } from "@/helpers/heritage-integration/navigation-helper";
// DEFINE VALIDATION RULES // DEFINE VALIDATION RULES
defineRule("zip-required", required(errorMessages.SERVICE_ZIP_REQUIRED)); defineRule(
"zip-required",
required(errorMessages.SERVICE_ZIP_REQUIRED)
);
defineRule(
"zip-format",
regex(/(^\d{5}$)|(^\d{5}-\d{4}$)/, errorMessages.SERVICE_ZIP_FORMAT)
);
defineRule( defineRule(
"email-address-required", "email-address-required",
required(errorMessages.EMAIL_ADDRESS_REQUIRED) required(errorMessages.EMAIL_ADDRESS_REQUIRED)
@ -151,7 +159,10 @@ defineRule(
errorMessages.EMAIL_ADDRESS_FORMAT errorMessages.EMAIL_ADDRESS_FORMAT
) )
); );
defineRule("vin-required", required(errorMessages.VIN_REQUIRED)); defineRule(
"vin-required",
required(errorMessages.VIN_REQUIRED)
);
defineRule( defineRule(
"vin-format", "vin-format",
regex(/^[A-HJ-NPR-Z0-9]{17}$/, errorMessages.VIN_FORMAT) regex(/^[A-HJ-NPR-Z0-9]{17}$/, errorMessages.VIN_FORMAT)