mirror of
https://github.com/ebean-orm/ebean.git
synced 2024-04-21 10:51:47 +00:00
Merge pull request #3002 from ebean-orm/feature/improveLogging-markedAsDeleted
Improve the logging around MarkedAsDeleted
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
package org.tests.basic;
|
||||
|
||||
import io.ebean.xtest.BaseTestCase;
|
||||
import io.ebean.DB;
|
||||
import io.ebean.xtest.BaseTestCase;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.tests.model.basic.ResetBasicData;
|
||||
import org.tests.model.interfaces.Address;
|
||||
@@ -9,23 +9,18 @@ import org.tests.model.interfaces.IAddress;
|
||||
import org.tests.model.interfaces.IPerson;
|
||||
import org.tests.model.interfaces.Person;
|
||||
|
||||
public class TestManyOneInterface extends BaseTestCase {
|
||||
class TestManyOneInterface extends BaseTestCase {
|
||||
|
||||
@Test
|
||||
public void test() {
|
||||
|
||||
void test() {
|
||||
ResetBasicData.reset();
|
||||
|
||||
IAddress a = new Address("hello");
|
||||
|
||||
IPerson p = new Person();
|
||||
|
||||
DB.save(p);
|
||||
IAddress a = new Address("hello", p);
|
||||
p.setDefaultAddress(a);
|
||||
|
||||
DB.save(a);
|
||||
DB.save(p);
|
||||
|
||||
//Assert.assertTrue();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package org.tests.model.interfaces;
|
||||
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.Version;
|
||||
|
||||
@Entity
|
||||
@@ -13,10 +14,14 @@ public class Address implements IAddress {
|
||||
@Version
|
||||
private int version;
|
||||
|
||||
@ManyToOne(targetEntity=Person.class, optional=false)
|
||||
private IPerson person;
|
||||
|
||||
private String street;
|
||||
|
||||
public Address(String street) {
|
||||
public Address(String street, IPerson person) {
|
||||
this.street = street;
|
||||
this.person = person;
|
||||
}
|
||||
|
||||
public long getOid() {
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
package org.tests.model.interfaces;
|
||||
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.Version;
|
||||
import javax.persistence.*;
|
||||
import java.util.List;
|
||||
|
||||
@Entity
|
||||
public class Person implements IPerson {
|
||||
@@ -13,6 +11,8 @@ public class Person implements IPerson {
|
||||
@Version
|
||||
private int version;
|
||||
|
||||
@OneToMany(targetEntity=Address.class)
|
||||
private List<IAddress> addresses;
|
||||
@ManyToOne(targetEntity = Address.class)
|
||||
private IAddress defaultAddress;
|
||||
|
||||
@@ -42,4 +42,11 @@ public class Person implements IPerson {
|
||||
this.version = version;
|
||||
}
|
||||
|
||||
public List<IAddress> getAddresses() {
|
||||
return addresses;
|
||||
}
|
||||
|
||||
public void setAddresses(List<IAddress> addresses) {
|
||||
this.addresses = addresses;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,16 +1,17 @@
|
||||
package org.tests.model.interfaces;
|
||||
|
||||
import io.ebean.xtest.BaseTestCase;
|
||||
import io.ebean.DB;
|
||||
import io.ebean.xtest.BaseTestCase;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
public class TestTargetEntity extends BaseTestCase {
|
||||
class TestTargetEntity extends BaseTestCase {
|
||||
|
||||
@Test
|
||||
public void test() {
|
||||
|
||||
void test() {
|
||||
Person person = setup();
|
||||
|
||||
Persona persona = new Persona("junk");
|
||||
@@ -20,17 +21,48 @@ public class TestTargetEntity extends BaseTestCase {
|
||||
Persona found = DB.find(Persona.class, persona.getId());
|
||||
assertThat(found).isNotNull();
|
||||
assertThat(found.persona()).isEqualTo("junk");
|
||||
assertThat(found.getPerson().getDefaultAddress().getStreet()).isEqualTo("street");
|
||||
IPerson person1 = found.getPerson();
|
||||
IAddress address = person1.getDefaultAddress();
|
||||
assertThat(address.getStreet()).isEqualTo("street");
|
||||
|
||||
person1.setDefaultAddress(null);
|
||||
DB.save(person1);
|
||||
DB.delete(address);
|
||||
DB.delete(persona);
|
||||
DB.delete(person);
|
||||
DB.delete(person.getDefaultAddress());
|
||||
DB.delete(person1);
|
||||
}
|
||||
|
||||
@Test
|
||||
void addresses() {
|
||||
Person p0 = new Person();
|
||||
Person p1 = new Person();
|
||||
DB.saveAll(p0, p1);
|
||||
|
||||
Address address0 = new Address("a0", p0);
|
||||
Address address1 = new Address("a1", p0);
|
||||
Address address2 = new Address("a2", p1);
|
||||
Address address3 = new Address("a3", p1);
|
||||
DB.saveAll(address0, address1, address2, address3);
|
||||
|
||||
p0.setDefaultAddress(address0);
|
||||
p1.setDefaultAddress(address2);
|
||||
DB.saveAll(p0, p1);
|
||||
|
||||
List<Person> list = DB.find(Person.class).findList();
|
||||
for (Person person : list) {
|
||||
IAddress da0 = person.getDefaultAddress();
|
||||
da0.getStreet();
|
||||
}
|
||||
|
||||
list.get(0).getAddresses()
|
||||
.size();
|
||||
}
|
||||
|
||||
private Person setup() {
|
||||
Address address = new Address("street");
|
||||
DB.save(address);
|
||||
Person person = new Person();
|
||||
DB.save(person);
|
||||
Address address = new Address("street", person);
|
||||
DB.save(address);
|
||||
person.setDefaultAddress(address);
|
||||
DB.save(person);
|
||||
return person;
|
||||
|
||||
Reference in New Issue
Block a user