]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
test fixes from non-gerrit builds
authorMike Bayer <mike_mp@zzzcomputing.com>
Thu, 15 Apr 2021 12:28:34 +0000 (08:28 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Thu, 15 Apr 2021 12:28:34 +0000 (08:28 -0400)
- Fix savepoint test in test_memusage which hasn't been
running, jenkins now has this enabled for more backends

- fix SQL Server failure in test_assorted_eager

- don't mention "from_self()" in the error message for
Query

Fixes: #6277
Change-Id: I0b351032604bd19604143f86f5f055eefd4d0c23

lib/sqlalchemy/orm/query.py
test/aaa_profiling/test_memusage.py
test/orm/test_assorted_eager.py

index 9348d7d48f2a1f5097055c023d706f110e3fa2e3..7436696a8f5ad08133b8fea5b97aa4a4eb4190db 100644 (file)
@@ -306,9 +306,7 @@ class Query(
         if self._limit_clause is not None or self._offset_clause is not None:
             raise sa_exc.InvalidRequestError(
                 "Query.%s() being called on a Query which already has LIMIT "
-                "or OFFSET applied. To modify the row-limited results of a "
-                " Query, call from_self() first.  "
-                "Otherwise, call %s() before limit() or offset() "
+                "or OFFSET applied.  Call %s() before limit() or offset() "
                 "are applied." % (meth, meth)
             )
 
index d8896a3d6120cbda3ed76f489e44e725ebd17b70..5347c6c728030cfdc2383db495996844519b4ba7 100644 (file)
@@ -580,9 +580,8 @@ class MemUsageWBackendTest(EnsureZeroed):
             metadata.drop_all(self.engine)
 
     @testing.requires.savepoints
-    @testing.provide_metadata
     def test_savepoints(self):
-        metadata = self.metadata
+        metadata = MetaData()
 
         some_table = Table(
             "t",
@@ -597,30 +596,28 @@ class MemUsageWBackendTest(EnsureZeroed):
 
         mapper(SomeClass, some_table)
 
-        metadata.create_all()
-
-        session = Session(testing.db)
-
-        target_strings = (
-            session.connection().dialect.identifier_preparer._strings
-        )
+        metadata.create_all(self.engine)
 
-        session.close()
+        with Session(self.engine) as session:
+            target_strings = (
+                session.connection().dialect.identifier_preparer._strings
+            )
 
         @profile_memory(
             assert_no_sessions=False,
             get_num_objects=lambda: len(target_strings),
         )
         def go():
-            session = Session(testing.db)
-            with session.transaction:
-
+            with Session(self.engine) as session, session.begin():
                 sc = SomeClass()
                 session.add(sc)
                 with session.begin_nested():
                     session.query(SomeClass).first()
 
-        go()
+        try:
+            go()
+        finally:
+            metadata.drop_all(self.engine)
 
     @testing.crashes("mysql+cymysql", "blocking")
     def test_unicode_warnings(self):
index 8ca6a8d86bf7d29e808cc724c10355664044b2cd..8667307e4eec5eb030d28903bdc68a3a308f3b8e 100644 (file)
@@ -1171,7 +1171,11 @@ class EagerTest8(fixtures.MappedTest):
         session = fixture_session()
 
         eq_(
-            session.query(Joined).limit(10).offset(0).one(),
+            session.query(Joined)
+            .order_by(Joined.id)
+            .limit(10)
+            .offset(0)
+            .one(),
             Joined(id=1, title="task 1", props_cnt=0),
         )