From: Mike Bayer Date: Tue, 3 Nov 2009 04:30:18 +0000 (+0000) Subject: added a test for #1349 X-Git-Tag: rel_0_6beta1~199 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=659ca0c5088b2b6dcd66e33bb9aff79aaffc421a;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git added a test for #1349 --- diff --git a/test/orm/test_cascade.py b/test/orm/test_cascade.py index c523fb5f01..3b9481dae9 100644 --- a/test/orm/test_cascade.py +++ b/test/orm/test_cascade.py @@ -742,6 +742,28 @@ class M2MCascadeTest(_base.MappedTest): assert b.count().scalar() == 0 assert a.count().scalar() == 1 + @testing.resolve_artifact_names + def test_delete_orphan_dynamic(self): + mapper(A, a, properties={ + # if no backref here, delete-orphan failed until [ticket:427] was + # fixed + 'bs': relation(B, secondary=atob, + cascade="all, delete-orphan", single_parent=True,lazy="dynamic") + }) + mapper(B, b) + + sess = create_session() + b1 = B(data='b1') + a1 = A(data='a1', bs=[b1]) + sess.add(a1) + sess.flush() + + a1.bs.remove(b1) + sess.flush() + assert atob.count().scalar() ==0 + assert b.count().scalar() == 0 + assert a.count().scalar() == 1 + @testing.resolve_artifact_names def test_delete_orphan_cascades(self): mapper(A, a, properties={