From 18bb346db06980cd55403c5c74180f54ca2a49d5 Mon Sep 17 00:00:00 2001
From: Cam Saul <cammsaul@gmail.com>
Date: Fri, 4 Jan 2019 16:14:50 -0800
Subject: [PATCH] Test updates :wrench: [ci drivers]

---
 resources/migrations/000_migrations.yaml      | 32 +++++++++++++++----
 .../sync/analyze/table_row_count_test.clj     | 21 ++++++------
 2 files changed, 35 insertions(+), 18 deletions(-)

diff --git a/resources/migrations/000_migrations.yaml b/resources/migrations/000_migrations.yaml
index b8cd5fe4e7c..b399a280637 100644
--- a/resources/migrations/000_migrations.yaml
+++ b/resources/migrations/000_migrations.yaml
@@ -5148,9 +5148,19 @@ databaseChangeLog:
       preConditions:
         - onFail: MARK_RAN
         - onUpdateSQL: IGNORE
-        - sqlCheck:
-            expectedResult: 0
-            sql: SELECT count(*) FROM (SELECT count(*) FROM METABASE_TABLE GROUP BY DB_ID, SCHEMA, NAME HAVING count(*) > 1) t1
+        - or:
+            - and:
+                - dbms:
+                    type: mysql,mariadb
+                - sqlCheck:
+                    expectedResult: 0
+                    sql: SELECT count(*) FROM (SELECT count(*) FROM `metabase_table` GROUP BY `db_id`, `schema`, `name` HAVING count(*) > 1) t1
+            - and:
+                - dbms:
+                    type: h2,postgresql
+                - sqlCheck:
+                    expectedResult: 0
+                    sql: SELECT count(*) FROM (SELECT count(*) FROM METABASE_TABLE GROUP BY DB_ID, SCHEMA, NAME HAVING count(*) > 1) t1
       changes:
         - addUniqueConstraint:
             tableName: metabase_table
@@ -5164,9 +5174,19 @@ databaseChangeLog:
       preConditions:
         - onFail: MARK_RAN
         - onUpdateSQL: IGNORE
-        - sqlCheck:
-            expectedResult: 0
-            sql: SELECT count(*) FROM (SELECT count(*) FROM METABASE_FIELD GROUP BY TABLE_ID, PARENT_ID, NAME HAVING count(*) > 1) t1
+        - or:
+            - and:
+                - dbms:
+                    type: mysql,mariadb
+                - sqlCheck:
+                    expectedResult: 0
+                    sql: SELECT count(*) FROM (SELECT count(*) FROM `metabase_field` GROUP BY `table_id`, `parent_id`, `name` HAVING count(*) > 1) t1
+            - and:
+                - dbms:
+                    type: h2,postgresql
+                - sqlCheck:
+                    expectedResult: 0
+                    sql: SELECT count(*) FROM (SELECT count(*) FROM METABASE_FIELD GROUP BY TABLE_ID, PARENT_ID, NAME HAVING count(*) > 1) t1
       changes:
         - addUniqueConstraint:
             tableName: metabase_field
diff --git a/test/metabase/sync/analyze/table_row_count_test.clj b/test/metabase/sync/analyze/table_row_count_test.clj
index c621c180ffd..7277205cd25 100644
--- a/test/metabase/sync/analyze/table_row_count_test.clj
+++ b/test/metabase/sync/analyze/table_row_count_test.clj
@@ -1,22 +1,19 @@
 (ns metabase.sync.analyze.table-row-count-test
   "Tests for the sync logic that updates a Table's row count."
-  (:require [metabase
-             [query-processor-test :as qp-test]
-             [util :as u]]
-            [metabase.models.table :refer [Table]]
+  (:require [metabase.models.table :refer [Table]]
+            [metabase.query-processor-test :as qp-test]
             [metabase.sync.analyze.table-row-count :as table-row-count]
-            [metabase.test.data :as data]
+            [metabase.test
+             [data :as data]
+             [util :as tu]]
             [metabase.test.data.datasets :as datasets]
-            [toucan.db :as db]
-            [toucan.util.test :as tt]))
+            [toucan.db :as db]))
 
 ;; test that syncing table row counts works
 ;; TODO - write a Druid version of this test. Works slightly differently since Druid doesn't have a 'venues' table
 ;; TODO - not sure why this doesn't work on Oracle. Seems to be an issue with the test rather than with the Oracle driver
 (datasets/expect-with-drivers (disj qp-test/non-timeseries-drivers :oracle)
   100
-  (tt/with-temp Table [venues-copy (let [venues-table (Table (data/id :venues))]
-                                     (assoc (select-keys venues-table [:schema :name :db_id])
-                                       :rows 0))]
-    (table-row-count/update-row-count! venues-copy)
-    (db/select-one-field :rows Table :id (u/get-id venues-copy))))
+  (tu/with-temp-vals-in-db Table (data/id :venues) {:rows 0}
+      (table-row-count/update-row-count! (Table (data/id :venues)))
+      (db/select-one-field :rows Table :id (data/id :venues))))
-- 
GitLab