]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
fix SQLite on conflict tests
authorMike Bayer <mike_mp@zzzcomputing.com>
Thu, 19 Dec 2024 22:50:21 +0000 (17:50 -0500)
committerMike Bayer <mike_mp@zzzcomputing.com>
Thu, 19 Dec 2024 22:50:21 +0000 (17:50 -0500)
in I4d66ec1473321616a1707da324a7dfe7a61ec94e we added new tests
in the sqlite suite but we forgot to extend from fixtures.TestBase,
so these tests did not get run at all.  repair tests

Change-Id: Iaec17a754e0ab1d4b43f063706b512ed335a7465

test/dialect/test_sqlite.py

index 5f483214b69b779a1eed5f51a4132c9388fbc262..997ce893515a7f34eaf2a94bba9a7dd9e65367b5 100644 (file)
@@ -2938,7 +2938,7 @@ class RegexpTest(fixtures.TestBase, testing.AssertsCompiledSQL):
         )
 
 
-class OnConflictCompileTest(AssertsCompiledSQL):
+class OnConflictCompileTest(AssertsCompiledSQL, fixtures.TestBase):
     __dialect__ = "sqlite"
 
     @testing.combinations(
@@ -2998,8 +2998,8 @@ class OnConflictCompileTest(AssertsCompiledSQL):
                 f"INSERT INTO users (id, name) VALUES (?, ?) {expected}",
             )
 
-    @testing.combinations("control", "excluded", "dict")
-    def test_set_excluded(self, scenario, users):
+    @testing.combinations("control", "excluded", "dict", argnames="scenario")
+    def test_set_excluded(self, scenario, users, users_w_key):
         """test #8014, sending all of .excluded to set"""
 
         if scenario == "control":
@@ -3011,7 +3011,6 @@ class OnConflictCompileTest(AssertsCompiledSQL):
                 "DO UPDATE SET id = excluded.id, name = excluded.name",
             )
         else:
-            users_w_key = self.tables.users_w_key
 
             stmt = insert(users_w_key)
 
@@ -3035,9 +3034,7 @@ class OnConflictCompileTest(AssertsCompiledSQL):
                     "DO UPDATE SET id = excluded.id, name = excluded.name",
                 )
 
-    def test_on_conflict_do_update_exotic_targets_six(
-        self, connection, users_xtra
-    ):
+    def test_on_conflict_do_update_exotic_targets_six(self, users_xtra):
         users = users_xtra
 
         unique_partial_index = schema.Index(
@@ -3048,16 +3045,6 @@ class OnConflictCompileTest(AssertsCompiledSQL):
             sqlite_where=users_xtra.c.lets_index_this == "unique_name",
         )
 
-        conn = connection
-        conn.execute(
-            insert(users),
-            dict(
-                id=1,
-                name="name1",
-                login_email="mail1@gmail.com",
-                lets_index_this="unique_name",
-            ),
-        )
         i = insert(users)
         i = i.on_conflict_do_update(
             index_elements=unique_partial_index.columns,
@@ -3094,6 +3081,16 @@ class OnConflictCompileTest(AssertsCompiledSQL):
             Column("name", String(50)),
         )
 
+    @testing.fixture
+    def users_w_key(self):
+        metadata = MetaData()
+        return Table(
+            "users_w_key",
+            metadata,
+            Column("id", Integer, primary_key=True),
+            Column("name", String(50), key="name_keyed"),
+        )
+
     @testing.fixture
     def users_xtra(self):
         metadata = MetaData()