From a81ba3c6c4fe68c78bb195097f355713ca8bd49f Mon Sep 17 00:00:00 2001 From: "Chuting (Christina) Yan" <59424839+cctina516@users.noreply.github.com> Date: Fri, 6 Dec 2024 16:49:09 -0600 Subject: [PATCH] Add cypress test for cart event - part of USF 1654 (#227) * Add add-to-cart event test * update * Add all required context --- .../tests/e2eTests/events/add-to-cart.spec.js | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 cypress/src/tests/e2eTests/events/add-to-cart.spec.js diff --git a/cypress/src/tests/e2eTests/events/add-to-cart.spec.js b/cypress/src/tests/e2eTests/events/add-to-cart.spec.js new file mode 100644 index 0000000000..47cccc2b2a --- /dev/null +++ b/cypress/src/tests/e2eTests/events/add-to-cart.spec.js @@ -0,0 +1,33 @@ +import { products } from "../../../fixtures"; +import { expectsEventWithContext } from "../../../assertions"; +/** + * https://github.com/adobe/commerce-events/blob/main/examples/events/add-to-cart.md + * + * Required Contexts: page, storefront, product, shoppingCart, changedProducts + */ + +it("is sent on add to cart button click", () => { + cy.visit(products.configurable.urlPathWithOptions); + // add to cart + cy.get(".product-details__buttons__add-to-cart button") + .should("be.visible") + .click(); + + cy.waitForResource("commerce-events-collector.js").then(() => { + cy.window() + .its("adobeDataLayer") + .then((adobeDataLayer) => { + expectsEventWithContext( + "add-to-cart", + [ + "pageContext", + "storefrontInstanceContext", + "productContext", + "shoppingCartContext", + "changedProductsContext", + ], + adobeDataLayer + ); + }); + }); +});