#1294 - NPE when delete cascade from bean with SoftDelete to imported OneToOne without SoftDelete

This commit is contained in:
Rob Bygrave committed 2018-02-27 15:31:26 +13:00
1 parent 68a470a086
commit c8e199177c
5 files changed
+185 -8

No files matched your search

@@ -0,0 +1,38 @@
package org.tests.softdelete;
import io.ebean.BaseTestCase;
import io.ebean.Ebean;
import org.ebeantest.LoggedSqlCollector;
import org.junit.Test;
import org.tests.model.softdelete.ESoftDelOneA;
import org.tests.model.softdelete.ESoftDelOneB;
import java.util.List;
import static org.assertj.core.api.Assertions.assertThat;
public class TestSoftDeleteOtoCascade extends BaseTestCase {
@Test
public void test() {
ESoftDelOneA a = new ESoftDelOneA("a1");
ESoftDelOneB b = new ESoftDelOneB("b1");
a.setOneb(b);
b.setOnea(a);
Ebean.save(a);
LoggedSqlCollector.start();
// delete doesn't cascade to ESoftDelOneB as this is a
// soft delete and ESoftDelOneB doesn't have soft delete flag
Ebean.delete(a);
List<String> sql = LoggedSqlCollector.stop();
assertThat(sql).hasSize(1);
assertThat(sql.get(0)).contains("update esoft_del_one_a set deleted=?, version=? where id=? and version=?");
}
}