#919 - io.ebean package initial

This commit is contained in:
Rob Bygrave
2016-12-11 23:23:22 +13:00
parent 5821dc96b9
commit 971e2dc91b
2134 changed files with 10721 additions and 8652 deletions
@@ -0,0 +1,20 @@
package org.tests.enhancement;
import io.ebean.BaseTestCase;
import org.tests.model.basic.MRole;
import org.tests.model.basic.MUser;
import org.junit.Test;
import java.util.ArrayList;
import java.util.List;
public class TestConstructorManyAddAll extends BaseTestCase {
@Test
public void test() {
List<MRole> startRoles = new ArrayList<>();
MUser mUser = new MUser(startRoles);
mUser.getRoles();
}
}
@@ -0,0 +1,29 @@
package org.tests.enhancement;
import io.ebean.BaseTestCase;
import io.ebean.bean.EntityBean;
import io.ebean.bean.EntityBeanIntercept;
import org.tests.model.basic.PFile;
import org.tests.model.basic.PFileContent;
import org.junit.Assert;
import org.junit.Test;
public class TestConstructorPutfieldReplacement extends BaseTestCase {
@Test
public void test() {
PFile persistentFile = new PFile("test.txt", new PFileContent("test".getBytes()));
EntityBean eb = (EntityBean) persistentFile;
EntityBeanIntercept ebi = eb._ebean_getIntercept();
int namePos = ebi.findProperty("name");
int fileContentPos = ebi.findProperty("fileContent");
Assert.assertTrue(ebi.isLoadedProperty(namePos));
Assert.assertTrue(ebi.isLoadedProperty(fileContentPos));
}
}
@@ -0,0 +1,54 @@
package org.tests.enhancement;
import io.ebean.BaseTestCase;
import org.tests.model.basic.Product;
import org.junit.Assert;
import org.junit.Test;
/**
* Note take care if you run this test in an IDE with a debugger as that can trigger the equals and
* hashCode (and the identity value can get populated un-normally).
*/
public class TestEnhancementEquals extends BaseTestCase {
@Test
public void testEqualsBasedOnIdValue() {
Product product1 = new Product();
product1.setId(345);
product1.setName("blah");
Product product2 = new Product();
product2.setId(345);
Assert.assertEquals("equal based on id", product1, product2);
Assert.assertEquals("hashCode equal based on id", product1.hashCode(), product2.hashCode());
product2.setName("kumera");
Assert.assertEquals("still equal based on identity", product1, product2);
Assert.assertEquals("still hashCode equal based on id", product1.hashCode(), product2.hashCode());
}
@Test
public void testWhenEqualsTouchedFirst() {
Product product1 = new Product();
product1.setName("blah");
int hashcode1 = product1.hashCode();
// equals has been called so the hashCode and 'identity' has been baked in
product1.setId(345);
int hashcode2 = product1.hashCode();
Assert.assertEquals("hashCode can't change", hashcode1, hashcode2);
Product product2 = new Product();
product2.setId(345);
Assert.assertFalse("Not equal now", product1.equals(product2));
Assert.assertTrue("Different hashCode", product1.hashCode() != product2.hashCode());
}
}