mirror of
https://github.com/ebean-orm/ebean.git
synced 2024-04-21 10:51:47 +00:00
#919 - io.ebean package initial
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
package io.ebeaninternal.server.text.json;
|
||||
|
||||
import io.ebean.Ebean;
|
||||
import io.ebean.bean.EntityBean;
|
||||
import io.ebeaninternal.api.SpiEbeanServer;
|
||||
import io.ebeaninternal.server.deploy.BeanDescriptor;
|
||||
import org.tests.model.basic.Customer;
|
||||
import org.tests.model.basic.ResetBasicData;
|
||||
import com.fasterxml.jackson.core.JsonFactory;
|
||||
import com.fasterxml.jackson.core.JsonGenerator;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.StringWriter;
|
||||
import java.sql.Date;
|
||||
import java.util.List;
|
||||
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
public class WriteJsonDirtyTest {
|
||||
|
||||
@Test
|
||||
public void test() throws IOException {
|
||||
|
||||
ResetBasicData.reset();
|
||||
List<Customer> customers = Ebean.find(Customer.class).findList();
|
||||
|
||||
Customer customer = Ebean.find(Customer.class).setId(customers.get(0).getId())
|
||||
.setUseCache(false)
|
||||
.findUnique();
|
||||
|
||||
SpiEbeanServer server = (SpiEbeanServer) Ebean.getServer(null);
|
||||
BeanDescriptor<Customer> descriptor = server.getBeanDescriptor(Customer.class);
|
||||
|
||||
customer.setName("dirtyCustName");
|
||||
customer.setAnniversary(new Date(System.currentTimeMillis()));
|
||||
|
||||
EntityBean entityBean = (EntityBean) customer;
|
||||
boolean[] dirtyProperties = entityBean._ebean_getIntercept().getDirtyProperties();
|
||||
|
||||
StringWriter writer = new StringWriter();
|
||||
JsonFactory jsonFactory = new JsonFactory();
|
||||
JsonGenerator generator = jsonFactory.createGenerator(writer);
|
||||
|
||||
WriteJson writeJson = new WriteJson(server, generator, null, null, null, null);
|
||||
descriptor.jsonWriteDirty(writeJson, entityBean, dirtyProperties);
|
||||
|
||||
generator.flush();
|
||||
generator.close();
|
||||
|
||||
String jsonContent = writer.toString();
|
||||
assertTrue(jsonContent.contains("\"name\":"));
|
||||
assertTrue(jsonContent.contains("\"anniversary\":"));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user