From bbe0381e626a3d9ad428a15e0ed686c0e91d2c74 Mon Sep 17 00:00:00 2001 From: Alexander Polyankin <alexander.polyankin@metabase.com> Date: Wed, 21 Sep 2022 18:52:58 +0300 Subject: [PATCH] Fix models picker not working for non-english locale (#25545) --- .../lib/saved-questions/saved-questions.js | 3 +- .../SavedQuestionPicker.jsx | 2 +- .../25537-model-picker-locale.cy.spec.js | 35 +++++++++++++++++++ 3 files changed, 37 insertions(+), 3 deletions(-) create mode 100644 frontend/test/metabase/scenarios/models/reproductions/25537-model-picker-locale.cy.spec.js diff --git a/frontend/src/metabase/lib/saved-questions/saved-questions.js b/frontend/src/metabase/lib/saved-questions/saved-questions.js index 81191db1902..ff73cfc70fe 100644 --- a/frontend/src/metabase/lib/saved-questions/saved-questions.js +++ b/frontend/src/metabase/lib/saved-questions/saved-questions.js @@ -1,8 +1,7 @@ -import { t } from "ttag"; import { generateSchemaId } from "metabase/lib/schema"; export const SAVED_QUESTIONS_VIRTUAL_DB_ID = -1337; -export const ROOT_COLLECTION_VIRTUAL_SCHEMA_NAME = t`Everything else`; +export const ROOT_COLLECTION_VIRTUAL_SCHEMA_NAME = "Everything else"; export const ROOT_COLLECTION_VIRTUAL_SCHEMA = getCollectionVirtualSchemaId({ id: null, diff --git a/frontend/src/metabase/query_builder/components/DataSelector/saved-question-picker/SavedQuestionPicker.jsx b/frontend/src/metabase/query_builder/components/DataSelector/saved-question-picker/SavedQuestionPicker.jsx index 015effef0ab..f9f9880d81c 100644 --- a/frontend/src/metabase/query_builder/components/DataSelector/saved-question-picker/SavedQuestionPicker.jsx +++ b/frontend/src/metabase/query_builder/components/DataSelector/saved-question-picker/SavedQuestionPicker.jsx @@ -40,7 +40,7 @@ const propTypes = { const getOurAnalyticsCollection = collectionEntity => { return { ...collectionEntity, - schemaName: t`Everything else`, + schemaName: "Everything else", icon: "folder", }; }; diff --git a/frontend/test/metabase/scenarios/models/reproductions/25537-model-picker-locale.cy.spec.js b/frontend/test/metabase/scenarios/models/reproductions/25537-model-picker-locale.cy.spec.js new file mode 100644 index 00000000000..b10d2b8cfca --- /dev/null +++ b/frontend/test/metabase/scenarios/models/reproductions/25537-model-picker-locale.cy.spec.js @@ -0,0 +1,35 @@ +import { restore, startNewQuestion } from "__support__/e2e/helpers"; +import { SAMPLE_DATABASE } from "__support__/e2e/cypress_sample_database"; + +const { ORDERS_ID } = SAMPLE_DATABASE; + +const questionDetails = { + name: "Orders model", + query: { "source-table": ORDERS_ID }, + dataset: true, +}; + +describe("issue 25537", () => { + beforeEach(() => { + restore(); + cy.signInAsAdmin(); + cy.intercept("GET", "/api/database/*/datasets/*").as("getSchemas"); + }); + + it("should be able to pick a saved model when using a non-english locale (metabase#25537)", () => { + setLocale("de"); + cy.createQuestion(questionDetails); + + startNewQuestion(); + cy.icon("model").click(); + cy.wait("@getSchemas"); + + cy.findByText(questionDetails.name).should("exist"); + }); +}); + +const setLocale = locale => { + cy.request("GET", "/api/user/current").then(({ body: { id: user_id } }) => { + cy.request("PUT", `/api/user/${user_id}`, { locale }); + }); +}; -- GitLab