diff --git a/src/test/java/com/avaje/tests/m2m/TestM2mDeleteObject.java b/src/test/java/com/avaje/tests/m2m/TestM2mDeleteObject.java index 0daecd353..030cd3566 100644 --- a/src/test/java/com/avaje/tests/m2m/TestM2mDeleteObject.java +++ b/src/test/java/com/avaje/tests/m2m/TestM2mDeleteObject.java @@ -68,4 +68,28 @@ public class TestM2mDeleteObject extends BaseTestCase { Assert.assertEquals(2, permissionList2.size()); } + + @Test + public void test_deleteCascading() { + + Permission p1 = new Permission(); + Permission p2 = new Permission(); + p1.setName("p1"); + p2.setName("p2"); + Ebean.save(p1); + Ebean.save(p2); + + Role role1 = new Role(); + role1.setName("role"); + + Set permissions = new HashSet(); + permissions.add(p2); + role1.setPermissions(permissions); + Ebean.save(role1); + + // only deletes as not associated + Ebean.delete(p1); + // delete cascades + Ebean.delete(role1); + } }