From 268268b08d60fd9ab4b606ff4c0cca1e48d080bd Mon Sep 17 00:00:00 2001
From: Ryan Laurie <30528226+iethree@users.noreply.github.com>
Date: Thu, 29 Aug 2024 09:58:08 -0600
Subject: [PATCH] Flake Jail Update (#47407)

---
 .../temporal-unit-parameters.cy.spec.js       | 110 +++++++++---------
 ...dashboard-filters-reproductions.cy.spec.js |  90 +++++++-------
 2 files changed, 109 insertions(+), 91 deletions(-)

diff --git a/e2e/test/scenarios/dashboard-filters/temporal-unit-parameters.cy.spec.js b/e2e/test/scenarios/dashboard-filters/temporal-unit-parameters.cy.spec.js
index a5f950084d4..747e71fed75 100644
--- a/e2e/test/scenarios/dashboard-filters/temporal-unit-parameters.cy.spec.js
+++ b/e2e/test/scenarios/dashboard-filters/temporal-unit-parameters.cy.spec.js
@@ -488,59 +488,65 @@ describe("scenarios > dashboard > temporal unit parameters", () => {
   });
 
   describe("click behaviors", () => {
-    it("should pass a temporal unit with 'update dashboard filter' click behavior", () => {
-      createDashboardWithMappedQuestion({
-        extraQuestions: [nativeUnitQuestionDetails],
-      }).then(dashboard => visitDashboard(dashboard.id));
-
-      cy.log("unsupported column types are ignored");
-      editDashboard();
-      getDashboardCard(0)
-        .findByLabelText("Click behavior")
-        .click({ force: true });
-      sidebar().within(() => {
-        cy.log("datetime columns cannot be mapped");
-        cy.findByText("Created At").click();
-        cy.findByText("Update a dashboard filter").click();
-        cy.findByText("No available targets").should("be.visible");
-        cy.icon("chevronleft").click();
-
-        cy.log("number columns cannot be mapped");
-        cy.findByText("Count").click();
-        cy.findByText("Update a dashboard filter").click();
-        cy.findByText("No available targets").should("be.visible");
-        cy.button("Cancel").click();
-      });
-
-      cy.log("setup a valid click behavior with a text column");
-      getDashboardCard(1)
-        .findByLabelText("Click behavior")
-        .click({ force: true });
-      sidebar().within(() => {
-        cy.findByText("UNIT").click();
-        cy.findByText("Update a dashboard filter").click();
-        cy.findByText(parameterDetails.name).click();
-      });
-      popover().findByText("UNIT").click();
-      saveDashboard();
-
-      cy.log("verify click behavior with a valid temporal unit");
-      getDashboardCard(1).findByText("year").click();
-      filterWidget().findByText("Year").should("be.visible");
-      getDashboardCard(0).findByText("Created At: Year").should("be.visible");
-
-      cy.log("verify that invalid temporal units are ignored");
-      getDashboardCard(1).findByText("invalid").click();
-      filterWidget()
-        .findByText(/invalid/i)
-        .should("not.exist");
-      getDashboardCard(0).findByText("Created At: Month").should("be.visible");
+    it(
+      "should pass a temporal unit with 'update dashboard filter' click behavior",
+      { tags: "@flaky" },
+      () => {
+        createDashboardWithMappedQuestion({
+          extraQuestions: [nativeUnitQuestionDetails],
+        }).then(dashboard => visitDashboard(dashboard.id));
+
+        cy.log("unsupported column types are ignored");
+        editDashboard();
+        getDashboardCard(0)
+          .findByLabelText("Click behavior")
+          .click({ force: true });
+        sidebar().within(() => {
+          cy.log("datetime columns cannot be mapped");
+          cy.findByText("Created At").click();
+          cy.findByText("Update a dashboard filter").click();
+          cy.findByText("No available targets").should("be.visible");
+          cy.icon("chevronleft").click();
+
+          cy.log("number columns cannot be mapped");
+          cy.findByText("Count").click();
+          cy.findByText("Update a dashboard filter").click();
+          cy.findByText("No available targets").should("be.visible");
+          cy.button("Cancel").click();
+        });
 
-      cy.log("verify that recovering from an invalid temporal unit works");
-      getDashboardCard(1).findByText("year").click();
-      filterWidget().findByText("Year").should("be.visible");
-      getDashboardCard(0).findByText("Created At: Year").should("be.visible");
-    });
+        cy.log("setup a valid click behavior with a text column");
+        getDashboardCard(1)
+          .findByLabelText("Click behavior")
+          .click({ force: true });
+        sidebar().within(() => {
+          cy.findByText("UNIT").click();
+          cy.findByText("Update a dashboard filter").click();
+          cy.findByText(parameterDetails.name).click();
+        });
+        popover().findByText("UNIT").click();
+        saveDashboard();
+
+        cy.log("verify click behavior with a valid temporal unit");
+        getDashboardCard(1).findByText("year").click();
+        filterWidget().findByText("Year").should("be.visible");
+        getDashboardCard(0).findByText("Created At: Year").should("be.visible");
+
+        cy.log("verify that invalid temporal units are ignored");
+        getDashboardCard(1).findByText("invalid").click();
+        filterWidget()
+          .findByText(/invalid/i)
+          .should("not.exist");
+        getDashboardCard(0)
+          .findByText("Created At: Month")
+          .should("be.visible");
+
+        cy.log("verify that recovering from an invalid temporal unit works");
+        getDashboardCard(1).findByText("year").click();
+        filterWidget().findByText("Year").should("be.visible");
+        getDashboardCard(0).findByText("Created At: Year").should("be.visible");
+      },
+    );
 
     it("should pass a temporal unit 'custom destination -> dashboard' click behavior", () => {
       createDashboardWithMappedQuestion({
diff --git a/e2e/test/scenarios/filters-reproductions/dashboard-filters-reproductions.cy.spec.js b/e2e/test/scenarios/filters-reproductions/dashboard-filters-reproductions.cy.spec.js
index 916a7a6ed23..eeb241cb2b6 100644
--- a/e2e/test/scenarios/filters-reproductions/dashboard-filters-reproductions.cy.spec.js
+++ b/e2e/test/scenarios/filters-reproductions/dashboard-filters-reproductions.cy.spec.js
@@ -1834,56 +1834,68 @@ describe("issue 25374", () => {
     cy.location("search").should("eq", "?equal_to=1%2C2%2C3");
   });
 
-  it("should retain comma-separated values when reverting to default (metabase#25374-3)", () => {
-    editDashboard();
-    cy.findByTestId("edit-dashboard-parameters-widget-container")
-      .findByText("Equal to")
-      .click();
-    dashboardParameterSidebar().findByLabelText("Default value").type("1,2,3");
-    saveDashboard();
+  it(
+    "should retain comma-separated values when reverting to default (metabase#25374-3)",
+    { tags: "@flaky" },
+    () => {
+      editDashboard();
+      cy.findByTestId("edit-dashboard-parameters-widget-container")
+        .findByText("Equal to")
+        .click();
+      dashboardParameterSidebar()
+        .findByLabelText("Default value")
+        .type("1,2,3");
+      saveDashboard();
 
-    cy.button("Clear").click();
-    cy.location("search").should("eq", "?equal_to=");
+      cy.button("Clear").click();
+      cy.location("search").should("eq", "?equal_to=");
 
-    cy.button("Reset filter to default state").click();
-    cy.location("search").should("eq", "?equal_to=1%2C2%2C3");
+      cy.button("Reset filter to default state").click();
+      cy.location("search").should("eq", "?equal_to=1%2C2%2C3");
 
-    // Drill-through and go to the question
-    getDashboardCard(0).findByText(questionDetails.name).click();
-    cy.wait("@cardQuery");
+      // Drill-through and go to the question
+      getDashboardCard(0).findByText(questionDetails.name).click();
+      cy.wait("@cardQuery");
 
-    cy.get("[data-testid=cell-data]")
-      .should("contain", "COUNT(*)")
-      .and("contain", "3");
+      cy.get("[data-testid=cell-data]")
+        .should("contain", "COUNT(*)")
+        .and("contain", "3");
 
-    cy.location("search").should("eq", "?num=1%2C2%2C3");
-  });
+      cy.location("search").should("eq", "?num=1%2C2%2C3");
+    },
+  );
 
-  it("should retain comma-separated values when reverting to default via 'Reset all filters' (metabase#25374-4)", () => {
-    editDashboard();
-    cy.findByTestId("edit-dashboard-parameters-widget-container")
-      .findByText("Equal to")
-      .click();
-    dashboardParameterSidebar().findByLabelText("Default value").type("1,2,3");
-    saveDashboard();
+  it(
+    "should retain comma-separated values when reverting to default via 'Reset all filters' (metabase#25374-4)",
+    { tags: "@flaky" },
+    () => {
+      editDashboard();
+      cy.findByTestId("edit-dashboard-parameters-widget-container")
+        .findByText("Equal to")
+        .click();
+      dashboardParameterSidebar()
+        .findByLabelText("Default value")
+        .type("1,2,3");
+      saveDashboard();
 
-    cy.button("Clear").click();
-    cy.location("search").should("eq", "?equal_to=");
+      cy.button("Clear").click();
+      cy.location("search").should("eq", "?equal_to=");
 
-    cy.button("Move, trash, and more…").click();
-    popover().findByText("Reset all filters").should("be.visible").click();
-    cy.location("search").should("eq", "?equal_to=1%2C2%2C3");
+      cy.button("Move, trash, and more…").click();
+      popover().findByText("Reset all filters").should("be.visible").click();
+      cy.location("search").should("eq", "?equal_to=1%2C2%2C3");
 
-    // Drill-through and go to the question
-    getDashboardCard(0).findByText(questionDetails.name).click();
-    cy.wait("@cardQuery");
+      // Drill-through and go to the question
+      getDashboardCard(0).findByText(questionDetails.name).click();
+      cy.wait("@cardQuery");
 
-    cy.get("[data-testid=cell-data]")
-      .should("contain", "COUNT(*)")
-      .and("contain", "3");
+      cy.get("[data-testid=cell-data]")
+        .should("contain", "COUNT(*)")
+        .and("contain", "3");
 
-    cy.location("search").should("eq", "?num=1%2C2%2C3");
-  });
+      cy.location("search").should("eq", "?num=1%2C2%2C3");
+    },
+  );
 });
 
 describe("issue 25908", () => {
-- 
GitLab