Merge pull request #3065 from Safelite/feature/CASH-2389

CASH-2389: Service package order experiment
This commit is contained in:
Chris 2026-02-16 10:32:15 -05:00 committed by GitHub
commit cbdbc241b6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 21 additions and 0 deletions

View file

@ -42,6 +42,7 @@ const experimentSettings = {
OFFER_OEM: "OfferOem",
USE_ADYEN_PAYMENT: "UseAdyenPayment",
SHOW_UNVERIFIED_DEDUCT_ENTRY: "ShowUnverifiedDeducEntry",
SERVICE_PACKAGE_ORDER: "ServicePackageOrder",
};
const experimentTriggers = {

View file

@ -35,6 +35,11 @@ jest.mock("@/mixins/experiment-mixin.js", () => ({
return true;
}
},
hasSetting(settingName) {
if (settingName === mockExperimentSettings.PROMO_ON_PACKAGE) {
return false;
}
},
hasSettingEqualTo(settingName, settingValue) {
return false;
},

View file

@ -163,6 +163,16 @@ export default {
}));
this.$emit("currentNumberOfPackages", modifiedAnswers.length);
if (this.experimentPackageOrder()) {
const orderedKeys = this.experimentPackageOrder()
.split(",")
.map((key) => key.trim());
modifiedAnswers.sort(
(a, b) => orderedKeys.indexOf(a.value) - orderedKeys.indexOf(b.value)
);
}
return modifiedAnswers;
},
isDiscountOnOrder() {
@ -235,6 +245,11 @@ export default {
)
);
},
experimentPackageOrder() {
return experimentMixin.methods.hasSetting(experimentSettings.SERVICE_PACKAGE_ORDER)
? experimentMixin.methods.getSettingValue(experimentSettings.SERVICE_PACKAGE_ORDER)
: false;
},
getButtonTypeObject() {
if (this.isAfterpayBreakoutDisplay()) {
return this.servicePackageRadioAfterpayExperiment;