MCPcopy Create free account
hub / github.com/sqlalchemy/sqlalchemy / test_replace_with_select

Method test_replace_with_select

test/orm/test_froms.py:2893–2933  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

2891 __dialect__ = "default"
2892
2893 def test_replace_with_select(self):
2894 users, Address, addresses, User = (
2895 self.tables.users,
2896 self.classes.Address,
2897 self.tables.addresses,
2898 self.classes.User,
2899 )
2900
2901 self.mapper_registry.map_imperatively(
2902 User, users, properties={"addresses": relationship(Address)}
2903 )
2904 self.mapper_registry.map_imperatively(Address, addresses)
2905
2906 sel = users.select().where(users.c.id.in_([7, 8])).alias()
2907 sess = fixture_session()
2908
2909 ua = aliased(User, sel)
2910 eq_(
2911 sess.query(ua).all(),
2912 [User(id=7), User(id=8)],
2913 )
2914
2915 eq_(
2916 sess.query(ua).filter(ua.id == 8).all(),
2917 [User(id=8)],
2918 )
2919
2920 eq_(
2921 sess.query(ua).order_by(desc(ua.name)).all(),
2922 [User(name="jack", id=7), User(name="ed", id=8)],
2923 )
2924
2925 eq_(
2926 sess.query(ua).order_by(asc(ua.name)).all(),
2927 [User(name="ed", id=8), User(name="jack", id=7)],
2928 )
2929
2930 eq_(
2931 sess.query(ua).options(joinedload(ua.addresses)).first(),
2932 User(name="jack", addresses=[Address(id=1)]),
2933 )
2934
2935 def test_select_from_aliased_one(self):
2936 User, users = self.classes.User, self.tables.users

Callers

nothing calls this directly

Calls 15

relationshipFunction · 0.90
fixture_sessionFunction · 0.90
aliasedFunction · 0.90
eq_Function · 0.90
descFunction · 0.90
ascFunction · 0.90
joinedloadFunction · 0.90
map_imperativelyMethod · 0.80
UserClass · 0.70
AddressClass · 0.70
aliasMethod · 0.45
whereMethod · 0.45

Tested by

no test coverage detected