use of io.requery.test.model.Person in project requery by requery.
the class FunctionalTest method testQueryByForeignKey.
@Test
public void testQueryByForeignKey() {
Person person = randomPerson();
data.insert(person);
Phone phone1 = randomPhone();
Phone phone2 = randomPhone();
person.getPhoneNumbers().add(phone1);
person.getPhoneNumbers().add(phone2);
data.update(person);
assertTrue(person.getPhoneNumbersSet().contains(phone1));
try (Result<Phone> result = data.select(Phone.class).where(Phone.OWNER.eq(person)).get()) {
assertTrue(person.getPhoneNumbersList().containsAll(result.toList()));
assertEquals(2, person.getPhoneNumbersList().size());
assertEquals(2, result.toList().size());
}
// by id
try (Result<Phone> result = data.select(Phone.class).where(Phone.OWNER_ID.eq(person.getId())).get()) {
assertTrue(person.getPhoneNumbersList().containsAll(result.toList()));
assertEquals(2, person.getPhoneNumbersList().size());
assertEquals(2, result.toList().size());
}
}
use of io.requery.test.model.Person in project requery by requery.
the class FunctionalTest method testQuerySelectTrim.
@Test
public void testQuerySelectTrim() {
// TODO fix use ltrim/rtrim for SQLServer
Person person = randomPerson();
person.setName(" Name ");
data.insert(person);
Tuple result = data.select(Person.NAME.trim().as("name")).get().first();
String name = result.get(0);
assertEquals(name, "Name");
}
use of io.requery.test.model.Person in project requery by requery.
the class FunctionalTest method testInsertOneToOne.
@Test
public void testInsertOneToOne() {
Address address = randomAddress();
data.insert(address);
assertTrue(address.getId() > 0);
Person person = randomPerson();
data.insert(person);
person.setAddress(address);
data.update(person);
// fetch inverse
assertSame(address.getPerson(), person);
// unset
person.setAddress(null);
}
use of io.requery.test.model.Person in project requery by requery.
the class FunctionalTest method testIterateInsertMany.
@Test
public void testIterateInsertMany() {
Person person = randomPerson();
assertTrue(person.getGroups().toList().isEmpty());
HashSet<Group> toAdd = new HashSet<>();
for (int i = 0; i < 10; i++) {
Group group = new Group();
group.setName("Group" + i);
person.getGroups().add(group);
toAdd.add(group);
}
int count = 0;
for (Group g : person.getGroups()) {
assertTrue(toAdd.contains(g));
count++;
}
assertEquals(10, count);
data.insert(person);
}
use of io.requery.test.model.Person in project requery by requery.
the class FunctionalTest method testFindByKey.
@Test
public void testFindByKey() {
Person person = randomPerson();
data.insert(person);
assertTrue(person.getId() > 0);
Person other = data.findByKey(Person.class, person.getId());
assertSame(person, other);
}
Aggregations