diff --git a/src/metabase/api/getting_started.clj b/src/metabase/api/getting_started.clj index 7600a1f2af1ffc6a284af2b3ccce9ad209da90cb..444a25dac61781d17ec3dddc1b29a1188bb8ef0d 100644 --- a/src/metabase/api/getting_started.clj +++ b/src/metabase/api/getting_started.clj @@ -33,7 +33,8 @@ :important_segments segment-ids ;; A map of metric_id -> sequence of important field_ids :metric_important_fields (m/map-vals (partial map :field_id) - (group-by :metric_id (db/select ['MetricImportantField :field_id :metric_id] - :metric_id [:in metric-ids])))})) + (group-by :metric_id (when (seq metric-ids) + (db/select ['MetricImportantField :field_id :metric_id] + :metric_id [:in metric-ids]))))})) (define-routes) diff --git a/test/metabase/api/getting_started_guide_test.clj b/test/metabase/api/getting_started_guide_test.clj new file mode 100644 index 0000000000000000000000000000000000000000..6cca9720f8ebd03f67565f42713af693b9e18ee7 --- /dev/null +++ b/test/metabase/api/getting_started_guide_test.clj @@ -0,0 +1,8 @@ +(ns metabase.api.getting-started-guide-test + (:require [expectations :refer :all] + [metabase.test.data.users :refer [user->client]])) + +;; just make sure the getting started guide endpoint works and returns the correct keys +(expect + #{:metric_important_fields :most_important_dashboard :things_to_know :important_metrics :important_segments :important_tables :contact} + (set (keys ((user->client :rasta) :get 200 "getting_started")))) diff --git a/test/metabase/test/data/users.clj b/test/metabase/test/data/users.clj index 1e37a7190edb62f474c073c0704bf024d7d8d4fc..aa07dbe486fff37b26d6cdc1fb90c1fc28ba5e90 100644 --- a/test/metabase/test/data/users.clj +++ b/test/metabase/test/data/users.clj @@ -1,5 +1,6 @@ (ns metabase.test.data.users "Code related to creating / managing fake `Users` for testing purposes." + ;; TODO - maybe this namespace should just be `metabase.test.users`. (:require [medley.core :as m] (metabase [db :as db] [http-client :as http])