diff --git a/src/test/java/com/avaje/tests/cascade/TestPrivateOwned.java b/src/test/java/com/avaje/tests/cascade/TestPrivateOwned.java index b6bedd9d4..eee63b5ff 100644 --- a/src/test/java/com/avaje/tests/cascade/TestPrivateOwned.java +++ b/src/test/java/com/avaje/tests/cascade/TestPrivateOwned.java @@ -1,16 +1,18 @@ package com.avaje.tests.cascade; -import java.util.List; -import java.util.Set; - -import org.junit.Assert; -import org.junit.Test; - import com.avaje.ebean.BaseTestCase; import com.avaje.ebean.Ebean; import com.avaje.ebean.bean.BeanCollection; import com.avaje.tests.model.basic.TSDetail; import com.avaje.tests.model.basic.TSMaster; +import org.junit.Test; + +import java.util.List; +import java.util.Set; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; public class TestPrivateOwned extends BaseTestCase { @@ -33,9 +35,9 @@ public class TestPrivateOwned extends BaseTestCase { BeanCollection bc = (BeanCollection) details; Set modifyRemovals = bc.getModifyRemovals(); - Assert.assertNotNull(modifyRemovals); - Assert.assertTrue(modifyRemovals.size() == 1); - Assert.assertTrue(modifyRemovals.contains(removedDetail)); + assertNotNull(modifyRemovals); + assertTrue(modifyRemovals.size() == 1); + assertTrue(modifyRemovals.contains(removedDetail)); Ebean.save(master); @@ -43,11 +45,31 @@ public class TestPrivateOwned extends BaseTestCase { List detailsReload = masterReload.getDetails(); // the removed bean has really been removed - Assert.assertTrue(detailsReload.size() == 1); + assertTrue(detailsReload.size() == 1); TSMaster master3 = Ebean.find(TSMaster.class, m0.getId()); List details3 = master3.getDetails(); details3.clear(); } + + @Test + public void insertThenUpdate() { + + TSMaster m0 = new TSMaster(); + m0.setName("m2"); + + m0.addDetail(new TSDetail("m2 detail 1")); + m0.addDetail(new TSDetail("m2 detail 2")); + + Ebean.save(m0); + assertThat(m0.getDetails()).hasSize(2); + + m0.getDetails().remove(0); + Ebean.save(m0); + + TSMaster masterReload = Ebean.find(TSMaster.class, m0.getId()); + assertThat(masterReload.getDetails()).hasSize(1); + } + }