diff --git a/frontend/src/metabase/lib/query/aggregation.js b/frontend/src/metabase/lib/query/aggregation.js index 8edb052ed552496589a4bb11693dc1f1fb023ea9..db200c72a1788a84c16e4c52eefcc75e00ffce70 100644 --- a/frontend/src/metabase/lib/query/aggregation.js +++ b/frontend/src/metabase/lib/query/aggregation.js @@ -136,7 +136,7 @@ export function setName( return [ "aggregation-options", getContent(aggregation), - { "display-name": name, ...getOptions(aggregation) }, + { name, "display-name": name, ...getOptions(aggregation) }, ]; } export function setContent( diff --git a/frontend/test/metabase/lib/query/aggregation.unit.spec.js b/frontend/test/metabase/lib/query/aggregation.unit.spec.js index d71812135033a4e85846638d215b102a973efa72..0e723b8f050ecc457317576567fe3c7264e17bd1 100644 --- a/frontend/test/metabase/lib/query/aggregation.unit.spec.js +++ b/frontend/test/metabase/lib/query/aggregation.unit.spec.js @@ -1,4 +1,4 @@ -import { getName } from "metabase/lib/query/aggregation"; +import { getName, setName } from "metabase/lib/query/aggregation"; describe("getName", () => { it("should work with blank display name", () => { @@ -8,3 +8,15 @@ describe("getName", () => { ); }); }); + +describe("setName", () => { + it("should set the name and display-name", () => { + const expr = ["*", ["count"], 2]; + const aggregation = ["aggregation-options", ["*", ["count"], 2], null]; + expect(setName(aggregation, "DoubleCount")).toEqual([ + "aggregation-options", + expr, + { "display-name": "DoubleCount", name: "DoubleCount" }, + ]); + }); +}); diff --git a/frontend/test/metabase/scenarios/question/custom_column.cy.spec.js b/frontend/test/metabase/scenarios/question/custom_column.cy.spec.js index 240cd7ffc0b7ab2bc5cefffd2b5e32f054048991..3838990f5a3f2594b3606de1633c0e4c46f45084 100644 --- a/frontend/test/metabase/scenarios/question/custom_column.cy.spec.js +++ b/frontend/test/metabase/scenarios/question/custom_column.cy.spec.js @@ -207,7 +207,7 @@ describe("scenarios > question > custom columns", () => { }); }); - it.skip("should be able to use custom expression after aggregation (metabase#13857)", () => { + it("should be able to use custom expression after aggregation (metabase#13857)", () => { const CE_NAME = "13857_CE"; const CC_NAME = "13857_CC"; @@ -221,7 +221,11 @@ describe("scenarios > question > custom columns", () => { }, "source-query": { aggregation: [ - ["aggregation-options", ["*", 1, 1], { "display-name": CE_NAME }], + [ + "aggregation-options", + ["*", 1, 1], + { name: CE_NAME, "display-name": CE_NAME }, + ], ], breakout: [ ["datetime-field", ["field-id", ORDERS.CREATED_AT], "month"], diff --git a/frontend/test/metabase/scenarios/question/filter.cy.spec.js b/frontend/test/metabase/scenarios/question/filter.cy.spec.js index 197379504eddab7fa4a6a81a6a523a09be20bb7c..4d4b21a15386eda8bdb1992ddcd9a608138d8b5a 100644 --- a/frontend/test/metabase/scenarios/question/filter.cy.spec.js +++ b/frontend/test/metabase/scenarios/question/filter.cy.spec.js @@ -301,7 +301,7 @@ describe("scenarios > question > filter", () => { cy.findAllByText("Fantastic Wool Shirt").should("not.exist"); }); - it.skip("should filter using Custom Expression from aggregated results (metabase#12839)", () => { + it("should filter using Custom Expression from aggregated results (metabase#12839)", () => { const CE_NAME = "Simple Math"; cy.createQuestion({ @@ -310,7 +310,11 @@ describe("scenarios > question > filter", () => { filter: [">", ["field", CE_NAME, { "base-type": "type/Float" }], 0], "source-query": { aggregation: [ - ["aggregation-options", ["+", 1, 1], { "display-name": CE_NAME }], + [ + "aggregation-options", + ["+", 1, 1], + { name: CE_NAME, "display-name": CE_NAME }, + ], ], breakout: [["field", PRODUCTS.CATEGORY, null]], "source-table": PRODUCTS_ID, diff --git a/frontend/test/metabase/scenarios/question/notebook.cy.spec.js b/frontend/test/metabase/scenarios/question/notebook.cy.spec.js index 1d58a6068958f3cb413f44318e680c1115713d05..2e2ebb7288397806faba7fb5988c176be2f3b7e1 100644 --- a/frontend/test/metabase/scenarios/question/notebook.cy.spec.js +++ b/frontend/test/metabase/scenarios/question/notebook.cy.spec.js @@ -456,7 +456,7 @@ describe("scenarios > question > notebook", () => { }); }); - it.skip("should be able to do subsequent aggregation on a custom expression (metabase#14649)", () => { + it("should be able to do subsequent aggregation on a custom expression (metabase#14649)", () => { cy.createQuestion({ name: "14649_min", query: { @@ -466,7 +466,7 @@ describe("scenarios > question > notebook", () => { [ "aggregation-options", ["sum", ["field", ORDERS.SUBTOTAL, null]], - { "display-name": "Revenue" }, + { name: "Revenue", "display-name": "Revenue" }, ], ], breakout: [