MCPcopy
hub / github.com/sqlalchemy/sqlalchemy / test_o2m_delete_parent

Method test_o2m_delete_parent

test/orm/test_unitofwork.py:1724–1760  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

1722 eq_(len(u2.addresses), 1)
1723
1724 def test_o2m_delete_parent(self):
1725 Address, addresses, users, User = (
1726 self.classes.Address,
1727 self.tables.addresses,
1728 self.tables.users,
1729 self.classes.User,
1730 )
1731
1732 self.mapper_registry.map_imperatively(
1733 User,
1734 users,
1735 properties=dict(
1736 address=relationship(
1737 self.mapper_registry.map_imperatively(Address, addresses),
1738 lazy="select",
1739 uselist=False,
1740 )
1741 ),
1742 )
1743
1744 u = User(name="one2onetester")
1745 a = Address(email_address="myonlyaddress@foo.com")
1746 u.address = a
1747
1748 session = fixture_session()
1749 session.add(u)
1750 session.flush()
1751
1752 session.delete(u)
1753 session.flush()
1754
1755 assert a.id is not None
1756 assert a.user_id is None
1757 assert sa.orm.attributes.instance_state(a).key in session.identity_map
1758 assert (
1759 sa.orm.attributes.instance_state(u).key not in session.identity_map
1760 )
1761
1762 def test_one_to_one(self):
1763 Address, addresses, users, User = (

Callers

nothing calls this directly

Calls 8

relationshipFunction · 0.90
fixture_sessionFunction · 0.90
map_imperativelyMethod · 0.80
UserClass · 0.70
AddressClass · 0.70
addMethod · 0.45
flushMethod · 0.45
deleteMethod · 0.45

Tested by

no test coverage detected