Refactor move tests from ebean-core to ebean-test

This commit is contained in:
rbygrave
2021-09-08 22:49:23 +12:00
parent 0b00a14fd3
commit eab56d323b
1650 changed files with 185 additions and 147 deletions
@@ -0,0 +1,64 @@
package org.tests.basic;
import io.ebean.BaseTestCase;
import io.ebean.DB;
import org.tests.model.basic.Order;
import org.tests.model.basic.OrderDetail;
import org.tests.model.basic.ResetBasicData;
import org.junit.jupiter.api.Test;
import java.sql.Date;
import java.util.List;
import static org.junit.jupiter.api.Assertions.*;
public class TestManyLazyLoad extends BaseTestCase {
@Test
public void testLazyLoadRef() throws InterruptedException {
ResetBasicData.reset();
awaitL2Cache();
List<Order> list = DB.find(Order.class).order().asc("id").findList();
assertFalse(list.isEmpty());
// just use the first one
Order order = list.get(0);
// get it as a reference
Order order1 = DB.reference(Order.class, order.getId());
assertNotNull(order1);
Date orderDate = order1.getOrderDate();
assertNotNull(orderDate);
List<OrderDetail> details = order1.getDetails();
// lazy load the details
int sz = details.size();
assertTrue(sz > 0);
OrderDetail orderDetail = details.get(0);
Order o = orderDetail.getOrder();
assertSame(o, order1);
// load detail into cache
DB.find(OrderDetail.class, orderDetail.getId());
// change order... list before a scalar property
Order order2 = DB.reference(Order.class, order.getId());
assertNotNull(order2);
List<OrderDetail> details2 = order2.getDetails();
// lazy load the details
int sz2 = details2.size();
assertTrue(sz2 > 0);
Order o2 = details2.get(0).getOrder();
assertSame(o2, order2);
}
}