diff --git a/modules/drivers/bigquery-cloud-sdk/test/metabase/driver/bigquery_cloud_sdk_test.clj b/modules/drivers/bigquery-cloud-sdk/test/metabase/driver/bigquery_cloud_sdk_test.clj index 580a78c1d1938bcca7078a0c84c60d984194b93f..aaea886563ed7663646db0bcf0e5b5089f1102d2 100644 --- a/modules/drivers/bigquery-cloud-sdk/test/metabase/driver/bigquery_cloud_sdk_test.clj +++ b/modules/drivers/bigquery-cloud-sdk/test/metabase/driver/bigquery_cloud_sdk_test.clj @@ -4,6 +4,7 @@ [clojure.string :as str] [clojure.test :refer :all] [metabase.db.metadata-queries :as metadata-queries] + [metabase.db.query :as mdb.query] [metabase.driver :as driver] [metabase.driver.bigquery-cloud-sdk :as bigquery] [metabase.driver.bigquery-cloud-sdk.common :as bigquery.common] @@ -495,3 +496,12 @@ ["2021-01-10T00:00:00Z" 6]] (mt/rows (qp/process-query query))))))))) + +(deftest format-sql-test + (mt/test-driver :bigquery-cloud-sdk + (testing "native queries are compiled and formatted without whitespace errors (#30676)" + (is (= (str "SELECT\n count(*) AS `count`\nFROM\n `v3_test_data.venues`") + (-> (mt/mbql-query venues {:aggregation [:count]}) + qp/compile-and-splice-parameters + :query + (mdb.query/format-sql :bigquery-cloud-sdk))))))) diff --git a/src/metabase/db/query.clj b/src/metabase/db/query.clj index 6781a6a15a1e6cc49dc5dd71172ff93bf082424d..f84bbd062beb2ea1345c681223c5fb03ccc798ce 100644 --- a/src/metabase/db/query.clj +++ b/src/metabase/db/query.clj @@ -50,6 +50,7 @@ :sparksql Dialect/SparkSql :sqlserver Dialect/TSql :oracle Dialect/PlSql + :bigquery-cloud-sdk Dialect/MySql Dialect/StandardSql))] (.format formatter sql)) sql))))