Fix for #167 - Ebean try to do update child nodes instead of inserting them on cascading save resulting in OptimisticLockException

This commit is contained in:
rbygrave
2014-07-15 22:05:56 +12:00
parent aee46955a7
commit 6d1a41f979
6 changed files with 228 additions and 46 deletions
@@ -0,0 +1,40 @@
package com.avaje.tests.insert;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import org.junit.Test;
import com.avaje.ebean.BaseTestCase;
import com.avaje.ebean.Ebean;
import com.avaje.tests.model.orderentity.OrderEntity;
import com.avaje.tests.model.orderentity.OrderItemEntity;
public class TestInsertOnStringKey extends BaseTestCase {
@Test
public void test() {
OrderEntity orderEntity = new OrderEntity();
orderEntity.setId("anyOrderId");
OrderItemEntity orderItemEntity = new OrderItemEntity();
orderItemEntity.setId("anyOrderItemId");
orderItemEntity.setVariantId("anyVariantId");
orderItemEntity.setAmount(BigDecimal.ONE);
orderEntity.setItems(toList(orderItemEntity));
Ebean.save(orderEntity);
}
private List<OrderItemEntity> toList(OrderItemEntity orderItemEntity) {
List<OrderItemEntity> list = new ArrayList<OrderItemEntity>();
list.add(orderItemEntity);
return list;
}
}