MCPcopy
hub / github.com/sqlalchemy/sqlalchemy / test_basic

Method test_basic

test/orm/test_deferred.py:60–98  ·  view source on GitHub ↗

A basic deferred load.

(self)

Source from the content-addressed store, hash-verified

58
59class DeferredTest(AssertsCompiledSQL, _fixtures.FixtureTest):
60 def test_basic(self):
61 """A basic deferred load."""
62
63 Order, orders = self.classes.Order, self.tables.orders
64
65 self.mapper_registry.map_imperatively(
66 Order,
67 orders,
68 properties={"description": deferred(orders.c.description)},
69 )
70
71 o = Order()
72 self.assert_(o.description is None)
73
74 q = fixture_session().query(Order).order_by(Order.id)
75
76 def go():
77 result = q.all()
78 o2 = result[2]
79 o2.description
80
81 self.sql_eq_(
82 go,
83 [
84 (
85 "SELECT orders.id AS orders_id, "
86 "orders.user_id AS orders_user_id, "
87 "orders.address_id AS orders_address_id, "
88 "orders.isopen AS orders_isopen "
89 "FROM orders ORDER BY orders.id",
90 {},
91 ),
92 (
93 "SELECT orders.description "
94 "FROM orders WHERE orders.id = :pk_1",
95 {"pk_1": 3},
96 ),
97 ],
98 )
99
100 def test_basic_w_new_style(self):
101 """sanity check that mapped_column(deferred=True) works"""

Callers

nothing calls this directly

Calls 8

deferredFunction · 0.90
fixture_sessionFunction · 0.90
map_imperativelyMethod · 0.80
sql_eq_Method · 0.80
OrderClass · 0.70
assert_Method · 0.45
order_byMethod · 0.45
queryMethod · 0.45

Tested by

no test coverage detected