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