(
self, passive_deletes_fixture, connection, cascade_deletes
)
| 1622 | |
| 1623 | @testing.combinations(True, False, argnames="cascade_deletes") |
| 1624 | def test_remove_orphans( |
| 1625 | self, passive_deletes_fixture, connection, cascade_deletes |
| 1626 | ): |
| 1627 | A, B = passive_deletes_fixture(True, cascade_deletes) |
| 1628 | |
| 1629 | sess = fixture_session(bind=connection) |
| 1630 | |
| 1631 | b1, b2, b3 = B(), B(), B() |
| 1632 | a1 = A(data="d1", bs=[b1, b2, b3]) |
| 1633 | sess.add(a1) |
| 1634 | sess.commit() |
| 1635 | |
| 1636 | eq_(sess.scalars(a1.bs.select()).all(), [b1, b2, b3]) |
| 1637 | |
| 1638 | a1.bs.remove(b2) |
| 1639 | |
| 1640 | sess.commit() |
| 1641 | |
| 1642 | eq_(sess.scalars(a1.bs.select()).all(), [b1, b3]) |
| 1643 | |
| 1644 | if cascade_deletes: |
| 1645 | eq_(sess.scalar(select(func.count()).select_from(B)), 2) |
| 1646 | else: |
| 1647 | eq_(sess.scalar(select(func.count()).select_from(B)), 3) |
| 1648 | |
| 1649 | |
| 1650 | class WriteOnlyBulkTest( |
nothing calls this directly
no test coverage detected