MCPcopy
hub / github.com/sqlalchemy/sqlalchemy / test_merge_all

Method test_merge_all

test/orm/test_merge.py:1809–1830  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

1807 eq_(sess.query(Address).one(), Address(id=1, email_address="c"))
1808
1809 def test_merge_all(self):
1810 User, users = self.classes.User, self.tables.users
1811
1812 self.mapper_registry.map_imperatively(User, users)
1813 sess = fixture_session()
1814 load = self.load_tracker(User)
1815
1816 ua = User(id=42, name="bob")
1817 ub = User(id=7, name="fred")
1818 eq_(load.called, 0)
1819 uam, ubm = sess.merge_all([ua, ub])
1820 eq_(load.called, 2)
1821 assert uam in sess
1822 assert ubm in sess
1823 eq_(uam, User(id=42, name="bob"))
1824 eq_(ubm, User(id=7, name="fred"))
1825 sess.flush()
1826 sess.expunge_all()
1827 eq_(
1828 sess.query(User).order_by("id").all(),
1829 [User(id=7, name="fred"), User(id=42, name="bob")],
1830 )
1831
1832
1833class M2ONoUseGetLoadingTest(fixtures.MappedTest):

Callers

nothing calls this directly

Calls 11

load_trackerMethod · 0.95
fixture_sessionFunction · 0.90
eq_Function · 0.90
map_imperativelyMethod · 0.80
UserClass · 0.70
merge_allMethod · 0.45
flushMethod · 0.45
expunge_allMethod · 0.45
allMethod · 0.45
order_byMethod · 0.45
queryMethod · 0.45

Tested by

no test coverage detected