mirror of
https://github.com/ebean-orm/ebean.git
synced 2024-04-21 10:51:47 +00:00
initial add of EbeanORM server based on v2.8.1
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
package com.avaje.tests.batchload;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import junit.framework.Assert;
|
||||
import junit.framework.TestCase;
|
||||
|
||||
import com.avaje.ebean.BeanState;
|
||||
import com.avaje.ebean.Ebean;
|
||||
import com.avaje.ebean.Query;
|
||||
import com.avaje.ebean.cache.ServerCache;
|
||||
import com.avaje.tests.model.basic.Address;
|
||||
import com.avaje.tests.model.basic.Customer;
|
||||
import com.avaje.tests.model.basic.Order;
|
||||
import com.avaje.tests.model.basic.ResetBasicData;
|
||||
|
||||
public class TestQueryJoin extends TestCase {
|
||||
|
||||
|
||||
public void test() {
|
||||
|
||||
ResetBasicData.reset();
|
||||
|
||||
|
||||
// Need to make sure the customer cache is cleared for the later
|
||||
// asserts on the lazy loading
|
||||
ServerCache custCache = Ebean.getServerCacheManager().getBeanCache(Customer.class);
|
||||
custCache.clear();
|
||||
|
||||
Query<Order> query = Ebean.find(Order.class)
|
||||
.select("status")
|
||||
//.join("details","+query(10)")
|
||||
.fetch("customer","+lazy(10) name, status")
|
||||
.fetch("customer.contacts")
|
||||
.orderBy().asc("id");
|
||||
//.join("customer.billingAddress");
|
||||
|
||||
List<Order> list = query.findList();
|
||||
|
||||
//list.get(0).getShipDate();
|
||||
|
||||
Order order = list.get(0);
|
||||
BeanState beanStateOrder = Ebean.getBeanState(order);
|
||||
Assert.assertNotNull(beanStateOrder.getLoadedProps());
|
||||
//Assert.assertTrue(beanStateOrder.getLoadedProps().contains("id"));
|
||||
Assert.assertTrue(beanStateOrder.getLoadedProps().contains("status"));
|
||||
Assert.assertTrue(beanStateOrder.getLoadedProps().contains("shipments"));
|
||||
Assert.assertTrue(beanStateOrder.getLoadedProps().contains("customer"));
|
||||
|
||||
Customer customer = order.getCustomer();
|
||||
BeanState beanStateCustomer = Ebean.getBeanState(customer);
|
||||
Assert.assertNull(beanStateCustomer.getLoadedProps());
|
||||
|
||||
customer.getName();
|
||||
Assert.assertNotNull(beanStateCustomer.getLoadedProps());
|
||||
Assert.assertTrue(beanStateCustomer.getLoadedProps().contains("name"));
|
||||
Assert.assertTrue(beanStateCustomer.getLoadedProps().contains("status"));
|
||||
Assert.assertFalse(beanStateCustomer.getLoadedProps().contains("billingAddress"));
|
||||
|
||||
customer.getName();
|
||||
|
||||
Address billingAddress = customer.getBillingAddress();
|
||||
System.out.println(billingAddress);
|
||||
billingAddress.getLine1();
|
||||
|
||||
Assert.assertTrue(list.size() > 0);
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user