diff --git a/e2e/support/helpers/e2e-action-helpers.js b/e2e/support/helpers/e2e-action-helpers.js index 9a1f644f7a574433205da22731cf6fdcc9a496ee..a79669df90f19ab555c19d20a574294f95b4d2fc 100644 --- a/e2e/support/helpers/e2e-action-helpers.js +++ b/e2e/support/helpers/e2e-action-helpers.js @@ -9,7 +9,9 @@ export function enableActionsForDB(dbId = SAMPLE_DB_ID) { } export function fillActionQuery(query) { - cy.get(".ace_content").type(query, { parseSpecialCharSequences: false }); + cy.get(".ace_content:visible").type(query, { + parseSpecialCharSequences: false, + }); } /** * diff --git a/e2e/test/scenarios/models/model-actions.cy.spec.js b/e2e/test/scenarios/models/model-actions.cy.spec.js index d8a2f35bc8579a4da66cae362cd1ddb0a9cc0a5d..e7370d59864fc3e62559807248da478ac0616d2e 100644 --- a/e2e/test/scenarios/models/model-actions.cy.spec.js +++ b/e2e/test/scenarios/models/model-actions.cy.spec.js @@ -330,6 +330,26 @@ describe( cy.findByLabelText("Success message").should("be.disabled"); }); }); + + it("should display parameters for variable template tags only", () => { + cy.visit("/"); + cy.findByText("New").click(); + popover().findByText("Action").click(); + cy.findByText("Select a database").click(); + popover().within(() => cy.findByText("QA Postgres12").click()); + + fillActionQuery("{{#1-orders-model}}"); + cy.findByLabelText("#1-orders-model").should("not.exist"); + + fillActionQuery("{{snippet:101}}"); + cy.findByLabelText("#1-orders-model").should("not.exist"); + cy.findByLabelText("101").should("not.exist"); + + fillActionQuery("{{id}}"); + cy.findByLabelText("#1-orders-model").should("not.exist"); + cy.findByLabelText("101").should("not.exist"); + cy.findByLabelText("Id").should("be.visible"); + }); }, ); diff --git a/frontend/src/metabase/actions/containers/ActionCreator/utils.ts b/frontend/src/metabase/actions/containers/ActionCreator/utils.ts index 0a5262b32d793c4db2137f1ee0cc4f64d97c78a0..0b25761c314385025e6217ea567622e8d7bd796f 100644 --- a/frontend/src/metabase/actions/containers/ActionCreator/utils.ts +++ b/frontend/src/metabase/actions/containers/ActionCreator/utils.ts @@ -75,7 +75,7 @@ export const setTemplateTagTypesFromFieldSettings = ( const query = question.query() as NativeQuery; let tempQuestion = question.clone(); - query.templateTagsWithoutSnippets().forEach((tag: TemplateTag) => { + query.variableTemplateTags().forEach((tag: TemplateTag) => { const currentQuery = tempQuestion.query() as NativeQuery; const fieldType = fields[tag.id]?.fieldType ?? "string"; const nextTag = {