From 7dc95f7f36fcc63a57eb46b72895162e0c9e5030 Mon Sep 17 00:00:00 2001 From: FrankRua Date: Wed, 7 Sep 2022 09:29:10 -0400 Subject: [PATCH 1/2] refactor to use correct SQL values --- src/store/index.js | 42 ++++++++++++++++++++++-------------------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/src/store/index.js b/src/store/index.js index ed6021ed5..2c83269aa 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -379,26 +379,28 @@ export const getters = { payment: (state) => state.order.payment, experimentOrder: (state) => { return { - vehicleYear: state.order.vehicle.year, - vehicleMake: state.order.vehicle.make, - vehicleModel: state.order.vehicle.model, - vehicleStyle: state.order.vehicle.style, - isRepair: state.order.damage.isRepair, - numberOfChips: state.order.damage.numberOfChips, - carId: state.order.vehicle.carId, - serviceCity: state.order.serviceLocation.city, - serviceState: state.order.serviceLocation.state, - serviceZipCode: state.order.serviceLocation.zipCode, - parentAccountNumber: state.order.accountNumber, - isCoverageVerified: state.order.payment.insuranceCoverage.isVerified, - orderPartNumbers: [...getAllValuesOfPropertyInArrayOfObjects(state.order.lineItems.glassParts, "partNumber"), ...getAllValuesOfPropertyInArrayOfObjects(state.order.lineItems.otherParts, "partNumber")], - orderPartTypes: [...getAllValuesOfPropertyInArrayOfObjects(state.order.lineItems.glassParts, "recalibrationType"), ...getAllValuesOfPropertyInArrayOfObjects(state.order.lineItems.otherParts, "recalibrationType")], - hasRecalibrationPart: getAllValuesOfPropertyInArrayOfObjects(state.order.lineItems.glassParts, "requiresRecalibration")?.length > 0, - selectedMultiGlass: state.order.damage.glassToReplace?.length > 1, - selectedWindshieldGlass: getAllValuesOfPropertyInArrayOfObjects(state.order.damage.glassToReplace, "glassLocation").includes(damageLocationsSelected.WINDSHIELD), - selectedBackGlass: getAllValuesOfPropertyInArrayOfObjects(state.order.damage.glassToReplace, "glassLocation").includes(damageLocationsSelected.REAR), - selectedDriverSideGlass: getAllValuesOfPropertyInArrayOfObjects(state.order.damage.glassToReplace, "glassLocation").includes(damageLocationsSelected.DRIVER), - selectedPassengerSideGlass: getAllValuesOfPropertyInArrayOfObjects(state.order.damage.glassToReplace, "glassLocation").includes(damageLocationsSelected.PASSENGER) + funnelVehicleYear: state.order.vehicle.year, + funnelVehicleMake: state.order.vehicle.make, + funnelVehicleModel: state.order.vehicle.model, + funnelVehicleStyle: state.order.vehicle.style, + funnelIsRepair: state.order.damage.isRepair, + funnelNumberOfChips: state.order.damage.numberOfChips, + funnelCarId: state.order.vehicle.carId, + funnelServiceCity: state.order.serviceLocation.city, + funnelServiceState: state.order.serviceLocation.state, + funnelServiceZipCode: state.order.serviceLocation.zipCode, + funnelParentAccountNumber: state.order.accountNumber, + funnelIsCoverageVerified: state.order.payment.insuranceCoverage.isVerified, + funnelHasRecalibrationPart: getAllValuesOfPropertyInArrayOfObjects(state.order.lineItems.glassParts, "requiresRecalibration")?.length > 0, + funnelSelectedMultiGlass: state.order.damage.glassToReplace?.length > 1, + funnelSelectedWindshieldGlass: getAllValuesOfPropertyInArrayOfObjects(state.order.damage.glassToReplace, "glassLocation").includes(damageLocationsSelected.WINDSHIELD), + funnelSelectedBackGlass: getAllValuesOfPropertyInArrayOfObjects(state.order.damage.glassToReplace, "glassLocation").includes(damageLocationsSelected.REAR), + funnelSelectedDriverSideGlass: getAllValuesOfPropertyInArrayOfObjects(state.order.damage.glassToReplace, "glassLocation").includes(damageLocationsSelected.DRIVER), + funnelSelectedPassengerSideGlass: getAllValuesOfPropertyInArrayOfObjects(state.order.damage.glassToReplace, "glassLocation").includes(damageLocationsSelected.PASSENGER), + + funnelOrderPartNumbers: [...getAllValuesOfPropertyInArrayOfObjects(state.order.lineItems.glassParts, "partNumber"), ...getAllValuesOfPropertyInArrayOfObjects(state.order.lineItems.otherParts, "partNumber")], + + funnelOrderPartTypes: [...getAllValuesOfPropertyInArrayOfObjects(state.order.lineItems.glassParts, "recalibrationType"), ...getAllValuesOfPropertyInArrayOfObjects(state.order.lineItems.otherParts, "recalibrationType")], } }, experimentSettings: (state) => state.applicationUser.experiments.map(x => x.settings).reduce((r, c) => Object.assign(r, c), {}) ?? {} From 2d4a75938f6b782e5c67fe09f44499a2ac74f768 Mon Sep 17 00:00:00 2001 From: FrankRua Date: Wed, 7 Sep 2022 10:59:10 -0400 Subject: [PATCH 2/2] fixed unit tests --- src/store/store.spec.js | 280 ++++++++++++++++++++-------------------- 1 file changed, 140 insertions(+), 140 deletions(-) diff --git a/src/store/store.spec.js b/src/store/store.spec.js index cec370042..8a710fe99 100644 --- a/src/store/store.spec.js +++ b/src/store/store.spec.js @@ -1299,64 +1299,64 @@ describe("Getters", () => { // Arrange const storeState = state; const mockStateValues = { - vehicleYear: 1000, - vehicleMake: "CarMake", - vehicleModel: "CarModel", - vehicleStyle: "SuperCoolStyle", - isRepair: true, - numberOfChips: 9999999, - carId: "Gibberish", - serviceCity: "Columbus", - serviceState: "OH-IO", - serviceZipCode: 43215, - parentAccountNumber: "999999", - isCoverageVerified: true, - glassParts: null, - otherParts: null, - glassToReplace: null + funnelVehicleYear: 1000, + funnelVehicleMake: "CarMake", + funnelVehicleModel: "CarModel", + funnelVehicleStyle: "SuperCoolStyle", + funnelIsRepair: true, + funnelNumberOfChips: 9999999, + funnelCarId: "Gibberish", + funnelServiceCity: "Columbus", + funnelServiceState: "OH-IO", + funnelServiceZipCode: 43215, + funnelParentAccountNumber: "999999", + funnelIsCoverageVerified: true, + funnelGlassParts: null, + funnelOtherParts: null, + funnelGlassToReplace: null } //Act - mutations.updateYear(storeState, mockStateValues.vehicleYear); - mutations.updateMake(storeState, mockStateValues.vehicleMake); - mutations.updateModel(storeState, mockStateValues.vehicleModel); - mutations.updateStyle(storeState, mockStateValues.vehicleStyle); - mutations.updateIsRepair(storeState, mockStateValues.isRepair); - mutations.updateNumberOfChips(storeState, mockStateValues.numberOfChips); - mutations.updateCarId(storeState, mockStateValues.carId); + mutations.updateYear(storeState, mockStateValues.funnelVehicleYear); + mutations.updateMake(storeState, mockStateValues.funnelVehicleMake); + mutations.updateModel(storeState, mockStateValues.funnelVehicleModel); + mutations.updateStyle(storeState, mockStateValues.funnelVehicleStyle); + mutations.updateIsRepair(storeState, mockStateValues.funnelIsRepair); + mutations.updateNumberOfChips(storeState, mockStateValues.funnelNumberOfChips); + mutations.updateCarId(storeState, mockStateValues.funnelCarId); mutations.updateServiceLocation(storeState, { - city: mockStateValues.serviceCity, - state: mockStateValues.serviceState, - zipCode: mockStateValues.serviceZipCode + city: mockStateValues.funnelServiceCity, + state: mockStateValues.funnelServiceState, + zipCode: mockStateValues.funnelServiceZipCode }); - mutations.updateParentAcctNumber(storeState, mockStateValues.parentAccountNumber); - mutations.updateInsuranceVerifiedStatus(storeState, mockStateValues.isCoverageVerified); - mutations.updateGlassParts(storeState, mockStateValues.glassParts); - mutations.updateOtherParts(storeState, mockStateValues.otherParts); - mutations.updateGlassToReplace(storeState, mockStateValues.glassToReplace); + mutations.updateParentAcctNumber(storeState, mockStateValues.funnelParentAccountNumber); + mutations.updateInsuranceVerifiedStatus(storeState, mockStateValues.funnelIsCoverageVerified); + mutations.updateGlassParts(storeState, mockStateValues.funnelGlassParts); + mutations.updateOtherParts(storeState, mockStateValues.funnelOtherParts); + mutations.updateGlassToReplace(storeState, mockStateValues.funnelGlassToReplace); //Assert expect(getters.experimentOrder(storeState)).toEqual({ - vehicleYear: mockStateValues.vehicleYear, - vehicleMake: mockStateValues.vehicleMake, - vehicleModel: mockStateValues.vehicleModel, - vehicleStyle: mockStateValues.vehicleStyle, - isRepair: mockStateValues.isRepair, - numberOfChips: mockStateValues.numberOfChips, - carId: mockStateValues.carId, - serviceCity: mockStateValues.serviceCity, - serviceState: mockStateValues.serviceState, - serviceZipCode: mockStateValues.serviceZipCode, - parentAccountNumber: mockStateValues.parentAccountNumber, - isCoverageVerified: mockStateValues.isCoverageVerified, - orderPartNumbers: [], - orderPartTypes: [], - hasRecalibrationPart: false, - selectedMultiGlass: false, - selectedWindshieldGlass: false, - selectedBackGlass: false, - selectedDriverSideGlass: false, - selectedPassengerSideGlass: false + funnelVehicleYear: mockStateValues.funnelVehicleYear, + funnelVehicleMake: mockStateValues.funnelVehicleMake, + funnelVehicleModel: mockStateValues.funnelVehicleModel, + funnelVehicleStyle: mockStateValues.funnelVehicleStyle, + funnelIsRepair: mockStateValues.funnelIsRepair, + funnelNumberOfChips: mockStateValues.funnelNumberOfChips, + funnelCarId: mockStateValues.funnelCarId, + funnelServiceCity: mockStateValues.funnelServiceCity, + funnelServiceState: mockStateValues.funnelServiceState, + funnelServiceZipCode: mockStateValues.funnelServiceZipCode, + funnelParentAccountNumber: mockStateValues.funnelParentAccountNumber, + funnelIsCoverageVerified: mockStateValues.funnelIsCoverageVerified, + funnelOrderPartNumbers: [], + funnelOrderPartTypes: [], + funnelHasRecalibrationPart: false, + funnelSelectedMultiGlass: false, + funnelSelectedWindshieldGlass: false, + funnelSelectedBackGlass: false, + funnelSelectedDriverSideGlass: false, + funnelSelectedPassengerSideGlass: false }); }); @@ -1364,64 +1364,64 @@ describe("Getters", () => { // Arrange const storeState = state; const mockStateValues = { - vehicleYear: 1000, - vehicleMake: "CarMake", - vehicleModel: "CarModel", - vehicleStyle: "SuperCoolStyle", - isRepair: true, - numberOfChips: 9999999, - carId: "Gibberish", - serviceCity: "Columbus", - serviceState: "OH-IO", - serviceZipCode: 43215, - parentAccountNumber: "999999", - isCoverageVerified: true, - glassParts: [], - otherParts: [], - glassToReplace: [] + funnelVehicleYear: 1000, + funnelVehicleMake: "CarMake", + funnelVehicleModel: "CarModel", + funnelVehicleStyle: "SuperCoolStyle", + funnelIsRepair: true, + funnelNumberOfChips: 9999999, + funnelCarId: "Gibberish", + funnelServiceCity: "Columbus", + funnelServiceState: "OH-IO", + funnelServiceZipCode: 43215, + funnelParentAccountNumber: "999999", + funnelIsCoverageVerified: true, + funnelGlassParts: [], + funnelOtherParts: [], + funnelGlassToReplace: [] } //Act - mutations.updateYear(storeState, mockStateValues.vehicleYear); - mutations.updateMake(storeState, mockStateValues.vehicleMake); - mutations.updateModel(storeState, mockStateValues.vehicleModel); - mutations.updateStyle(storeState, mockStateValues.vehicleStyle); - mutations.updateIsRepair(storeState, mockStateValues.isRepair); - mutations.updateNumberOfChips(storeState, mockStateValues.numberOfChips); - mutations.updateCarId(storeState, mockStateValues.carId); + mutations.updateYear(storeState, mockStateValues.funnelVehicleYear); + mutations.updateMake(storeState, mockStateValues.funnelVehicleMake); + mutations.updateModel(storeState, mockStateValues.funnelVehicleModel); + mutations.updateStyle(storeState, mockStateValues.funnelVehicleStyle); + mutations.updateIsRepair(storeState, mockStateValues.funnelIsRepair); + mutations.updateNumberOfChips(storeState, mockStateValues.funnelNumberOfChips); + mutations.updateCarId(storeState, mockStateValues.funnelCarId); mutations.updateServiceLocation(storeState, { - city: mockStateValues.serviceCity, - state: mockStateValues.serviceState, - zipCode: mockStateValues.serviceZipCode + city: mockStateValues.funnelServiceCity, + state: mockStateValues.funnelServiceState, + zipCode: mockStateValues.funnelServiceZipCode }); - mutations.updateParentAcctNumber(storeState, mockStateValues.parentAccountNumber); - mutations.updateInsuranceVerifiedStatus(storeState, mockStateValues.isCoverageVerified); - mutations.updateGlassParts(storeState, mockStateValues.glassParts); - mutations.updateOtherParts(storeState, mockStateValues.otherParts); - mutations.updateGlassToReplace(storeState, mockStateValues.glassToReplace); + mutations.updateParentAcctNumber(storeState, mockStateValues.funnelParentAccountNumber); + mutations.updateInsuranceVerifiedStatus(storeState, mockStateValues.funnelIsCoverageVerified); + mutations.updateGlassParts(storeState, mockStateValues.funnelGlassParts); + mutations.updateOtherParts(storeState, mockStateValues.funnelOtherParts); + mutations.updateGlassToReplace(storeState, mockStateValues.funnelGlassToReplace); //Assert expect(getters.experimentOrder(storeState)).toEqual({ - vehicleYear: mockStateValues.vehicleYear, - vehicleMake: mockStateValues.vehicleMake, - vehicleModel: mockStateValues.vehicleModel, - vehicleStyle: mockStateValues.vehicleStyle, - isRepair: mockStateValues.isRepair, - numberOfChips: mockStateValues.numberOfChips, - carId: mockStateValues.carId, - serviceCity: mockStateValues.serviceCity, - serviceState: mockStateValues.serviceState, - serviceZipCode: mockStateValues.serviceZipCode, - parentAccountNumber: mockStateValues.parentAccountNumber, - isCoverageVerified: mockStateValues.isCoverageVerified, - orderPartNumbers: [], - orderPartTypes: [], - hasRecalibrationPart: false, - selectedMultiGlass: false, - selectedWindshieldGlass: false, - selectedBackGlass: false, - selectedDriverSideGlass: false, - selectedPassengerSideGlass: false + funnelVehicleYear: mockStateValues.funnelVehicleYear, + funnelVehicleMake: mockStateValues.funnelVehicleMake, + funnelVehicleModel: mockStateValues.funnelVehicleModel, + funnelVehicleStyle: mockStateValues.funnelVehicleStyle, + funnelIsRepair: mockStateValues.funnelIsRepair, + funnelNumberOfChips: mockStateValues.funnelNumberOfChips, + funnelCarId: mockStateValues.funnelCarId, + funnelServiceCity: mockStateValues.funnelServiceCity, + funnelServiceState: mockStateValues.funnelServiceState, + funnelServiceZipCode: mockStateValues.funnelServiceZipCode, + funnelParentAccountNumber: mockStateValues.funnelParentAccountNumber, + funnelIsCoverageVerified: mockStateValues.funnelIsCoverageVerified, + funnelOrderPartNumbers: [], + funnelOrderPartTypes: [], + funnelHasRecalibrationPart: false, + funnelSelectedMultiGlass: false, + funnelSelectedWindshieldGlass: false, + funnelSelectedBackGlass: false, + funnelSelectedDriverSideGlass: false, + funnelSelectedPassengerSideGlass: false }); }); @@ -1482,26 +1482,26 @@ describe("Getters", () => { //Assert expect(getters.experimentOrder(storeState)).toEqual({ - vehicleYear: mockStateValues.vehicleYear, - vehicleMake: mockStateValues.vehicleMake, - vehicleModel: mockStateValues.vehicleModel, - vehicleStyle: mockStateValues.vehicleStyle, - isRepair: mockStateValues.isRepair, - numberOfChips: mockStateValues.numberOfChips, - carId: mockStateValues.carId, - serviceCity: mockStateValues.serviceCity, - serviceState: mockStateValues.serviceState, - serviceZipCode: mockStateValues.serviceZipCode, - parentAccountNumber: mockStateValues.parentAccountNumber, - isCoverageVerified: mockStateValues.isCoverageVerified, - orderPartNumbers: ["WINDSHIELDPARTNUMBER"], - orderPartTypes: ["ADAS, maybe"], - hasRecalibrationPart: true, - selectedMultiGlass: false, - selectedWindshieldGlass: true, - selectedBackGlass: false, - selectedDriverSideGlass: false, - selectedPassengerSideGlass: false + funnelVehicleYear: mockStateValues.vehicleYear, + funnelVehicleMake: mockStateValues.vehicleMake, + funnelVehicleModel: mockStateValues.vehicleModel, + funnelVehicleStyle: mockStateValues.vehicleStyle, + funnelIsRepair: mockStateValues.isRepair, + funnelNumberOfChips: mockStateValues.numberOfChips, + funnelCarId: mockStateValues.carId, + funnelServiceCity: mockStateValues.serviceCity, + funnelServiceState: mockStateValues.serviceState, + funnelServiceZipCode: mockStateValues.serviceZipCode, + funnelParentAccountNumber: mockStateValues.parentAccountNumber, + funnelIsCoverageVerified: mockStateValues.isCoverageVerified, + funnelOrderPartNumbers: ["WINDSHIELDPARTNUMBER"], + funnelOrderPartTypes: ["ADAS, maybe"], + funnelHasRecalibrationPart: true, + funnelSelectedMultiGlass: false, + funnelSelectedWindshieldGlass: true, + funnelSelectedBackGlass: false, + funnelSelectedDriverSideGlass: false, + funnelSelectedPassengerSideGlass: false }); }); @@ -1588,26 +1588,26 @@ describe("Getters", () => { //Assert expect(getters.experimentOrder(storeState)).toEqual({ - vehicleYear: mockStateValues.vehicleYear, - vehicleMake: mockStateValues.vehicleMake, - vehicleModel: mockStateValues.vehicleModel, - vehicleStyle: mockStateValues.vehicleStyle, - isRepair: mockStateValues.isRepair, - numberOfChips: mockStateValues.numberOfChips, - carId: mockStateValues.carId, - serviceCity: mockStateValues.serviceCity, - serviceState: mockStateValues.serviceState, - serviceZipCode: mockStateValues.serviceZipCode, - parentAccountNumber: mockStateValues.parentAccountNumber, - isCoverageVerified: mockStateValues.isCoverageVerified, - orderPartNumbers: ["BACKGLASS_PN", "DRIVERGLASS_PN", "PASSENGERGLASS_PN"], - orderPartTypes: [], - hasRecalibrationPart: false, - selectedMultiGlass: true, - selectedWindshieldGlass: false, - selectedBackGlass: true, - selectedDriverSideGlass: true, - selectedPassengerSideGlass: true + funnelVehicleYear: mockStateValues.vehicleYear, + funnelVehicleMake: mockStateValues.vehicleMake, + funnelVehicleModel: mockStateValues.vehicleModel, + funnelVehicleStyle: mockStateValues.vehicleStyle, + funnelIsRepair: mockStateValues.isRepair, + funnelNumberOfChips: mockStateValues.numberOfChips, + funnelCarId: mockStateValues.carId, + funnelServiceCity: mockStateValues.serviceCity, + funnelServiceState: mockStateValues.serviceState, + funnelServiceZipCode: mockStateValues.serviceZipCode, + funnelParentAccountNumber: mockStateValues.parentAccountNumber, + funnelIsCoverageVerified: mockStateValues.isCoverageVerified, + funnelOrderPartNumbers: ["BACKGLASS_PN", "DRIVERGLASS_PN", "PASSENGERGLASS_PN"], + funnelOrderPartTypes: [], + funnelHasRecalibrationPart: false, + funnelSelectedMultiGlass: true, + funnelSelectedWindshieldGlass: false, + funnelSelectedBackGlass: true, + funnelSelectedDriverSideGlass: true, + funnelSelectedPassengerSideGlass: true }); }); })