mirror of
https://github.com/ebean-orm/ebean.git
synced 2024-04-21 10:51:47 +00:00
Add additional test for PrimaryKeyJoinColumn
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
package org.tests.model.onetoone.calcd;
|
||||
|
||||
import io.ebean.Model;
|
||||
import io.ebean.annotation.ConstraintMode;
|
||||
import io.ebean.annotation.DbForeignKey;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
@Entity
|
||||
@Table(name = "calcd_data")
|
||||
public class CalcDData extends Model {
|
||||
|
||||
@Id
|
||||
private Integer id;
|
||||
|
||||
@OneToOne(optional = false, cascade = CascadeType.ALL)
|
||||
@DbForeignKey(onDelete = ConstraintMode.CASCADE)
|
||||
@PrimaryKeyJoinColumn//(name = "Id", referencedColumnName = "Id")
|
||||
private CalcDInput input;
|
||||
|
||||
private final String name;
|
||||
|
||||
public CalcDData(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public CalcDInput getInput() {
|
||||
return input;
|
||||
}
|
||||
|
||||
public void setInput(CalcDInput input) {
|
||||
this.input = input;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
package org.tests.model.onetoone.calcd;
|
||||
|
||||
import io.ebean.Model;
|
||||
|
||||
import javax.persistence.*;
|
||||
|
||||
@Entity
|
||||
@Table(name = "calcd_input")
|
||||
public class CalcDInput extends Model {
|
||||
|
||||
@Id
|
||||
private Integer id;
|
||||
|
||||
@OneToOne(optional = false, fetch = FetchType.EAGER, orphanRemoval = true, mappedBy = "input")
|
||||
private CalcDData data;
|
||||
|
||||
private final String name;
|
||||
|
||||
public CalcDInput(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public CalcDData getData() {
|
||||
return data;
|
||||
}
|
||||
|
||||
public void setData(CalcDData data) {
|
||||
this.data = data;
|
||||
}
|
||||
}
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
package org.tests.model.onetoone.calcd;
|
||||
|
||||
import io.ebean.DB;
|
||||
import org.junit.Test;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
public class TestOneToOnePrimaryKeyJoinMapping {
|
||||
|
||||
@Test
|
||||
public void test() {
|
||||
|
||||
CalcDInput inputs = new CalcDInput("input0");
|
||||
|
||||
CalcDData data = new CalcDData("data0");
|
||||
inputs.setData(data);
|
||||
inputs.save();
|
||||
|
||||
CalcDInput found = DB.find(CalcDInput.class, inputs.getId());
|
||||
|
||||
assertThat(found).isNotNull();
|
||||
assertThat(found.getName()).isEqualTo("input0");
|
||||
assertThat(found.getData().getName()).isEqualTo("data0");
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user