CSR-1629
unit test case fixes
This commit is contained in:
parent
7f58966fa5
commit
933434adff
1 changed files with 28 additions and 23 deletions
|
|
@ -1,5 +1,4 @@
|
|||
import analyticsMixin from "@/mixins/analytics-mixin";
|
||||
import baseMixin from "@/mixins/base-mixin";
|
||||
import {
|
||||
setupMocksForJsFiles,
|
||||
setupCookies,
|
||||
|
|
@ -853,13 +852,14 @@ describe("analyticsMixin.js", () => {
|
|||
});
|
||||
});
|
||||
describe("push product array and ecommerce cart to data layer", () => {
|
||||
const mocks = setupMocksForJsFiles();
|
||||
it("should push product array to data layer correctly", () => {
|
||||
// Mock the methods
|
||||
baseMixin.methods.hasSubmittedOrder = jest.fn();
|
||||
baseMixin.methods.getSubmittedOrder = jest.fn();
|
||||
baseMixin.methods.getTotalPriceOfAllLineItemsAndChildParts = jest.fn();
|
||||
baseMixin.methods.hasSubmittedOrder.mockReturnValue(true);
|
||||
baseMixin.methods.getSubmittedOrder.mockReturnValue({
|
||||
mocks.baseMixin.methods.hasSubmittedOrder = jest.fn();
|
||||
mocks.baseMixin.methods.getSubmittedOrder = jest.fn();
|
||||
mocks.baseMixin.methods.getTotalPriceOfAllLineItemsAndChildParts = jest.fn();
|
||||
mocks.baseMixin.methods.hasSubmittedOrder.mockReturnValue(true);
|
||||
mocks.baseMixin.methods.getSubmittedOrder.mockReturnValue({
|
||||
lineItems: {
|
||||
glassParts: [{ partNumber: "GP1", partType: "glass" }],
|
||||
supportingItems: [{ partNumber: "SI1", partType: "support" }],
|
||||
|
|
@ -867,22 +867,24 @@ describe("analyticsMixin.js", () => {
|
|||
promos: [{ partNumber: "DISCOUNT", partType: "promo", promoCode: "PROMO4" }],
|
||||
},
|
||||
});
|
||||
baseMixin.methods.getTotalPriceOfAllLineItemsAndChildParts.mockReturnValue(100);
|
||||
mocks.baseMixin.methods.getTotalPriceOfAllLineItemsAndChildParts.mockReturnValue(100);
|
||||
|
||||
// Call the function
|
||||
analyticsMixin.methods.pushProductArrayToDataLayer();
|
||||
|
||||
// Assertions
|
||||
expect(baseMixin.methods.hasSubmittedOrder).toHaveBeenCalled();
|
||||
expect(baseMixin.methods.getSubmittedOrder).toHaveBeenCalled();
|
||||
expect(baseMixin.methods.getTotalPriceOfAllLineItemsAndChildParts).toHaveBeenCalled();
|
||||
expect(mocks.baseMixin.methods.hasSubmittedOrder).toHaveBeenCalled();
|
||||
expect(mocks.baseMixin.methods.getSubmittedOrder).toHaveBeenCalled();
|
||||
expect(
|
||||
mocks.baseMixin.methods.getTotalPriceOfAllLineItemsAndChildParts
|
||||
).toHaveBeenCalled();
|
||||
});
|
||||
it("should push eCommerce cart to data layer correctly", () => {
|
||||
// Mock the methods
|
||||
(baseMixin.methods.hasSubmittedOrder = jest.fn()),
|
||||
(baseMixin.methods.getSubmittedOrder = jest.fn()),
|
||||
baseMixin.methods.hasSubmittedOrder.mockReturnValue(true);
|
||||
baseMixin.methods.getSubmittedOrder.mockReturnValue({
|
||||
mocks.baseMixin.methods.hasSubmittedOrder = jest.fn();
|
||||
mocks.baseMixin.methods.getSubmittedOrder = jest.fn();
|
||||
mocks.baseMixin.methods.hasSubmittedOrder.mockReturnValue(true);
|
||||
mocks.baseMixin.methods.getSubmittedOrder.mockReturnValue({
|
||||
lineItems: {
|
||||
supportingItems: [
|
||||
{ partType: "RECALIBRATION", partNumber: "R1" },
|
||||
|
|
@ -900,13 +902,16 @@ describe("analyticsMixin.js", () => {
|
|||
analyticsMixin.methods.pushECommerceCartToDataLayer();
|
||||
|
||||
// Assertions
|
||||
expect(baseMixin.methods.hasSubmittedOrder).toHaveBeenCalled();
|
||||
expect(baseMixin.methods.getSubmittedOrder).toHaveBeenCalled();
|
||||
expect(baseMixin.methods.getTotalPriceOfAllLineItemsAndChildParts).toHaveBeenCalled();
|
||||
expect(mocks.baseMixin.methods.hasSubmittedOrder).toHaveBeenCalled();
|
||||
expect(mocks.baseMixin.methods.getSubmittedOrder).toHaveBeenCalled();
|
||||
expect(
|
||||
mocks.baseMixin.methods.getTotalPriceOfAllLineItemsAndChildParts
|
||||
).toHaveBeenCalled();
|
||||
});
|
||||
});
|
||||
|
||||
describe("pushCommissionJunctionGtmDataToDataLayer", () => {
|
||||
const mocks = setupMocksForJsFiles();
|
||||
it("should handle empty affiliateCookies", () => {
|
||||
store.getters = {
|
||||
applicationUser: {
|
||||
|
|
@ -914,17 +919,17 @@ describe("analyticsMixin.js", () => {
|
|||
},
|
||||
};
|
||||
|
||||
baseMixin.methods.hasSubmittedOrder = jest.fn();
|
||||
baseMixin.methods.hasSubmittedOrder.mockReturnValue(false);
|
||||
mocks.baseMixin.methods.hasSubmittedOrder = jest.fn();
|
||||
mocks.baseMixin.methods.hasSubmittedOrder.mockReturnValue(false);
|
||||
const result = analyticsMixin.methods.pushCommissionJunctionGtmDataToDataLayer();
|
||||
expect(result).toBeUndefined();
|
||||
});
|
||||
|
||||
test("Pushes populated data to data layer", () => {
|
||||
baseMixin.methods.hasSubmittedOrder = jest.fn();
|
||||
baseMixin.methods.hasSubmittedOrder.mockReturnValue(true);
|
||||
baseMixin.methods.getSubmittedOrder = jest.fn();
|
||||
baseMixin.methods.getSubmittedOrder.mockReturnValue({
|
||||
mocks.baseMixin.methods.hasSubmittedOrder = jest.fn();
|
||||
mocks.baseMixin.methods.hasSubmittedOrder.mockReturnValue(true);
|
||||
mocks.baseMixin.methods.getSubmittedOrder = jest.fn();
|
||||
mocks.baseMixin.methods.getSubmittedOrder.mockReturnValue({
|
||||
vehicle: {
|
||||
year: "2020",
|
||||
make: "acura",
|
||||
|
|
|
|||
Loading…
Reference in a new issue