diff options
author | mike bayer <mike_mp@zzzcomputing.com> | 2023-05-17 15:15:42 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@bbpush.zzzcomputing.com> | 2023-05-17 15:15:42 +0000 |
commit | 0fe5ef94e381f045ab4e93684a64e8aa2d1f4f3b (patch) | |
tree | eacee6ac400f4b7e3dc1d804b2d9d08c652e0a88 /test | |
parent | c222723168c0f53d8b80ba58463831cdf9c0e8da (diff) | |
parent | 4b37ded2897c3ae9384ecdd6209699a0fdc513a3 (diff) | |
download | sqlalchemy-main.tar.gz |
Diffstat (limited to 'test')
-rw-r--r-- | test/orm/test_options.py | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/test/orm/test_options.py b/test/orm/test_options.py index 47ffedb07..3b088b998 100644 --- a/test/orm/test_options.py +++ b/test/orm/test_options.py @@ -28,6 +28,7 @@ from sqlalchemy.orm import undefer from sqlalchemy.orm import util as orm_util from sqlalchemy.orm import with_polymorphic from sqlalchemy.testing import fixtures +from sqlalchemy.testing import is_not from sqlalchemy.testing.assertions import assert_raises_message from sqlalchemy.testing.assertions import AssertsCompiledSQL from sqlalchemy.testing.assertions import emits_warning @@ -1288,20 +1289,18 @@ class PickleTest(fixtures.MappedTest): def test_pickle_relationship_loader(self, user_address_fixture): User, Address = user_address_fixture - for i in range(3): - opt = joinedload(User.addresses) - - q1 = fixture_session().query(User).options(opt) - c1 = q1._compile_context() + opt = joinedload(User.addresses) - pickled = pickle.dumps(opt) + pickled = pickle.dumps(opt) - opt2 = pickle.loads(pickled) + opt2 = pickle.loads(pickled) - q2 = fixture_session().query(User).options(opt2) - c2 = q2._compile_context() + is_not(opt, opt2) + assert isinstance(opt, Load) + assert isinstance(opt2, Load) - eq_(c1.attributes, c2.attributes) + for k in opt.__slots__: + eq_(getattr(opt, k), getattr(opt2, k)) class LocalOptsTest(PathTest, QueryTest): |