From: dankrzeminski32 Date: Mon, 24 Jul 2023 19:20:32 +0000 (-0500) Subject: test cases for close_final=False & close_final=True X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c7e63f61699363679f5fcbe489698b6775974134;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git test cases for close_final=False & close_final=True --- diff --git a/test/orm/test_session.py b/test/orm/test_session.py index 6d599d68ea..8835d2f0a3 100644 --- a/test/orm/test_session.py +++ b/test/orm/test_session.py @@ -1261,6 +1261,29 @@ class SessionStateTest(_fixtures.FixtureTest): assert u1 not in sess assert object_session(u1) is None + def test_session_close_final(self): + users, User = self.tables.users, self.classes.User + self.mapper_registry.map_imperatively(User, users) + + s1 = fixture_session(close_final=True) + u1 = User() + + close_all_sessions() + + assert_raises(sa.exc.InvalidRequestError, s1.add, u1) + + def test_session_close_not_final(self): + users, User = self.tables.users, self.classes.User + self.mapper_registry.map_imperatively(User, users) + + s1 = fixture_session(close_final=False) + u1 = User() + + close_all_sessions() + s1.add(u1) + + assert u1 in s1 + class DeferredRelationshipExpressionTest(_fixtures.FixtureTest): run_inserts = None