#53 - Add test for protected constructor

This commit is contained in:
Rob Bygrave
2014-04-25 15:19:50 +12:00
parent bc75736780
commit 75bcbc06e1
2 changed files with 65 additions and 0 deletions
@@ -0,0 +1,27 @@
package com.avaje.tests.contructor;
import org.junit.Assert;
import org.junit.Test;
import com.avaje.ebean.BaseTestCase;
import com.avaje.ebean.Ebean;
import com.avaje.ebean.EbeanServer;
import com.avaje.tests.model.basic.MProtectedConstructBean;
public class TestProtectedConstructor extends BaseTestCase {
@Test
public void test() {
EbeanServer server = Ebean.getServer(null);
// check that we can construc a bean with a protected constructor
MProtectedConstructBean bean = server.createEntityBean(MProtectedConstructBean.class);
Assert.assertNotNull(bean);
// Note1 that the enhancement ClassAdapterEntity line 239 makes a default constructor publically accessible
// Note2 the ClassAdpater will call DefaultConstructor.add() to add a default constructor if it doesn't exist
}
}
@@ -0,0 +1,38 @@
package com.avaje.tests.model.basic;
import javax.persistence.Entity;
import javax.persistence.Id;
@Entity
public class MProtectedConstructBean {
@Id
Long id;
String name;
// private MProtectedConstructBean() {
//
// }
public MProtectedConstructBean(String name){
this.name = name;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}