MCPcopy
hub / github.com/sqlalchemy/sqlalchemy / test_group

Method test_group

test/orm/test_deferred.py:343–404  ·  view source on GitHub ↗

Deferred load with a group

(self)

Source from the content-addressed store, hash-verified

341 sess.flush()
342
343 def test_group(self):
344 """Deferred load with a group"""
345
346 orders, Order = self.tables.orders, self.classes.Order
347
348 self.mapper_registry.map_imperatively(
349 Order,
350 orders,
351 properties=util.OrderedDict(
352 [
353 ("userident", deferred(orders.c.user_id, group="primary")),
354 (
355 "addrident",
356 deferred(orders.c.address_id, group="primary"),
357 ),
358 (
359 "description",
360 deferred(orders.c.description, group="primary"),
361 ),
362 ("opened", deferred(orders.c.isopen, group="primary")),
363 ]
364 ),
365 )
366
367 sess = fixture_session()
368 q = sess.query(Order).order_by(Order.id)
369
370 def go():
371 result = q.all()
372 o2 = result[2]
373 eq_(o2.opened, 1)
374 eq_(o2.userident, 7)
375 eq_(o2.description, "order 3")
376
377 self.sql_eq_(
378 go,
379 [
380 (
381 "SELECT orders.id AS orders_id "
382 "FROM orders ORDER BY orders.id",
383 {},
384 ),
385 (
386 "SELECT orders.user_id, "
387 "orders.address_id, "
388 "orders.description, "
389 "orders.isopen "
390 "FROM orders WHERE orders.id = :pk_1",
391 {"pk_1": 3},
392 ),
393 ],
394 )
395
396 o2 = q.all()[2]
397 eq_(o2.description, "order 3")
398 assert o2 not in sess.dirty
399 o2.description = "order 3"
400

Callers

nothing calls this directly

Calls 9

deferredFunction · 0.90
fixture_sessionFunction · 0.90
eq_Function · 0.90
map_imperativelyMethod · 0.80
sql_eq_Method · 0.80
sql_count_Method · 0.80
order_byMethod · 0.45
queryMethod · 0.45
allMethod · 0.45

Tested by

no test coverage detected