Refactor new helper to call common flushPagePrereqsLogs

This commit is contained in:
Matt Sykes 2026-03-09 11:29:18 -04:00
parent 6997c2160d
commit e138dfe508
7 changed files with 40 additions and 25 deletions

View file

@ -17,6 +17,12 @@ export function logPagePrereqsEnd(source, preReqResult) {
}
}
export function flushPagePrereqsLogs(source, preReqResult, logQueue) {
logPagePrereqsStart(source, preReqResult);
logQueue.forEach((fn) => fn());
logPagePrereqsEnd(source, preReqResult);
}
function queueLogging(logQueue, logFn) {
if (logQueue) {
logQueue.push(logFn);

View file

@ -36,6 +36,30 @@ describe("page-prerequisites-helper.js", () => {
});
});
describe("flushPagePrereqsLogs", () => {
test("calls logPagePrereqsStart, executes logQueue, and logPagePrereqsEnd", () => {
const logQueue = [
jest.fn(),
jest.fn(),
];
pagePrereqsHelper.flushPagePrereqsLogs("payment.vue", true, logQueue);
expect(debugLog).toHaveBeenCalledWith(
"--- payment.vue pagePrereqs start ---",
null,
false
);
expect(debugLog).toHaveBeenCalledWith(
"--- payment.vue pagePrereqs end ---",
null,
false
);
expect(logQueue[0]).toHaveBeenCalled();
expect(logQueue[1]).toHaveBeenCalled();
});
});
describe("logPagePrereqsEnd", () => {
test("calls debugLog with source and forceLog when preReqResult is false", () => {
pagePrereqsHelper.logPagePrereqsEnd("payment-method.vue", false);

View file

@ -79,8 +79,7 @@ import { AppointmentTypeStrings } from "@/constants/schedule-constants";
import textLink from "@/ux-components/text-link/text-link";
import analyticsMixin from "@/mixins/analytics-mixin";
import {
logPagePrereqsStart,
logPagePrereqsEnd,
flushPagePrereqsLogs,
hasSchedulingInfo,
} from "@/helpers/page-prerequisites-helper";
export default {
@ -130,9 +129,7 @@ export default {
const preReqResult = serviceLocationPreReqs && scheduleInfoPreReqs;
logPagePrereqsStart("mobile-details.vue", preReqResult);
logQueue.forEach((fn) => fn());
logPagePrereqsEnd("mobile-details.vue", preReqResult);
flushPagePrereqsLogs("mobile-details.vue", preReqResult, logQueue);
return preReqResult;
},

View file

@ -84,8 +84,7 @@ import { coverageStatus } from "@/constants/insurance";
import { deepClone } from "@/helpers/object-helper";
import store from "@/store";
import {
logPagePrereqsStart,
logPagePrereqsEnd,
flushPagePrereqsLogs,
hasServiceLocationInfo,
hasInsuranceInfo,
hasSchedulingInfo,
@ -152,9 +151,7 @@ export default {
hasSchedulingInfo(order, logQueue) &&
hasCustomerInfo(order, logQueue) &&
hasPaymentMethodInfo(order, logQueue);
logPagePrereqsStart("payment-adyen.vue", result);
logQueue.forEach((fn) => fn());
logPagePrereqsEnd("payment-adyen.vue", result);
flushPagePrereqsLogs("payment-adyen.vue", result, logQueue);
return result;
},

View file

@ -179,8 +179,7 @@ import { getBoolFromString } from "@/helpers/boolean-helper";
import { getAmountDue, addPricesToLineItems } from "@/helpers/pricing-helper.js";
import { consumeQueryFromStash } from "@/router/methods/helpers/querystring-stash";
import {
logPagePrereqsStart,
logPagePrereqsEnd,
flushPagePrereqsLogs,
hasServiceLocationInfo,
hasInsuranceInfo,
hasSchedulingInfo,
@ -395,9 +394,7 @@ export default {
hasInsuranceInfo(order, logQueue) &&
hasSchedulingInfo(order, logQueue) &&
hasCustomerInfo(order, logQueue);
logPagePrereqsStart("payment-method.vue", result);
logQueue.forEach((fn) => fn());
logPagePrereqsEnd("payment-method.vue", result);
flushPagePrereqsLogs("payment-method.vue", result, logQueue);
return result;
},
getPaymentMethodFromStore() {

View file

@ -243,8 +243,7 @@ import { coverageStatus } from "@/constants/insurance";
import { getDisplayAmountDue, getAmountDue } from "@/helpers/pricing-helper.js";
import { debugLog } from "@/helpers/debug-log-helper.js";
import {
logPagePrereqsStart,
logPagePrereqsEnd,
flushPagePrereqsLogs,
hasServiceLocationInfo,
hasInsuranceInfo,
hasSchedulingInfo,
@ -451,9 +450,7 @@ export default {
hasSchedulingInfo(order, logQueue) &&
hasCustomerInfo(order, logQueue) &&
hasPaymentMethodInfo(order, logQueue);
logPagePrereqsStart("payment.vue", result);
logQueue.forEach((fn) => fn());
logPagePrereqsEnd("payment.vue", result);
flushPagePrereqsLogs("payment.vue", result, logQueue);
return result;
},
getAnswersNullSafe(widgetName) {

View file

@ -184,8 +184,7 @@ import { consumeQueryFromStash } from "@/router/methods/helpers/querystring-stas
import { storeMutations } from "@/constants/store-mutations";
import { debugLog } from "@/helpers/debug-log-helper";
import {
logPagePrereqsStart,
logPagePrereqsEnd,
flushPagePrereqsLogs,
hasServiceZipInfo,
hasGlassPartsOrRepairInfo,
} from "@/helpers/page-prerequisites-helper.js";
@ -753,9 +752,7 @@ export default {
);
});
logPagePrereqsStart("quote.vue", preReqResult);
logQueue.forEach((fn) => fn());
logPagePrereqsEnd("quote.vue", preReqResult);
flushPagePrereqsLogs("quote.vue", preReqResult, logQueue);
return preReqResult;
},
vapsItemsSelectedAction(vapsItemsSelected) {