Search in sources :

Example 16 with Person

use of io.requery.test.model.Person in project requery by requery.

the class FunctionalTest method testInsertOneToManyInverse.

@Test
public void testInsertOneToManyInverse() {
    Person person = randomPerson();
    Phone phone1 = randomPhone();
    Phone phone2 = randomPhone();
    phone1.setOwner(person);
    person.getPhoneNumbers().add(phone1);
    person.getPhoneNumbers().add(phone2);
    data.insert(person);
    HashSet<Phone> set = new HashSet<>(person.getPhoneNumbers().toList());
    assertEquals(2, set.size());
    assertTrue(set.containsAll(Arrays.asList(phone1, phone2)));
    assertEquals(person, phone1.getOwner());
    assertEquals(person, phone2.getOwner());
}
Also used : Phone(io.requery.test.model.Phone) Person(io.requery.test.model.Person) Group_Person(io.requery.test.model.Group_Person) HashSet(java.util.HashSet) Test(org.junit.Test)

Example 17 with Person

use of io.requery.test.model.Person in project requery by requery.

the class FunctionalTest method testFindByCompositeKey.

@Test
public void testFindByCompositeKey() {
    Group group = new Group();
    group.setName("group");
    group.setType(GroupType.PRIVATE);
    Person person = randomPerson();
    person.getGroups().add(group);
    data.insert(person);
    assertTrue(person.getId() > 0);
    // create the composite key
    Map<Attribute<Group_Person, Integer>, Integer> map = new LinkedHashMap<>();
    map.put(Group_Person.GROUPS_ID, group.getId());
    map.put(Group_Person.PERSON_ID, person.getId());
    CompositeKey<Group_Person> compositeKey = new CompositeKey<>(map);
    Group_Person joined = data.findByKey(Group_Person.class, compositeKey);
    assertNotNull(joined);
}
Also used : Group(io.requery.test.model.Group) Group_Person(io.requery.test.model.Group_Person) CompositeKey(io.requery.proxy.CompositeKey) Attribute(io.requery.meta.Attribute) Person(io.requery.test.model.Person) Group_Person(io.requery.test.model.Group_Person) LinkedHashMap(java.util.LinkedHashMap) Test(org.junit.Test)

Example 18 with Person

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");
}
Also used : Person(io.requery.test.model.Person) Group_Person(io.requery.test.model.Group_Person) Tuple(io.requery.query.Tuple) Test(org.junit.Test)

Example 19 with Person

use of io.requery.test.model.Person in project requery by requery.

the class FunctionalTest method testQueryFunctionRandom.

@Test
public void testQueryFunctionRandom() {
    for (int i = 0; i < 10; i++) {
        Person person = randomPerson();
        data.insert(person);
    }
    try (Result<Person> query = data.select(Person.class).orderBy(new Random()).get()) {
        assertEquals(10, query.toList().size());
    }
}
Also used : Random(io.requery.query.function.Random) Person(io.requery.test.model.Person) Group_Person(io.requery.test.model.Group_Person) Test(org.junit.Test)

Example 20 with Person

use of io.requery.test.model.Person in project requery by requery.

the class FunctionalTest method testInsertOneToManyInverseUpdate.

@Test
public void testInsertOneToManyInverseUpdate() {
    Person person = randomPerson();
    data.insert(person);
    Phone phone1 = randomPhone();
    Phone phone2 = randomPhone();
    person.getPhoneNumbers().add(phone1);
    person.getPhoneNumbers().add(phone2);
    data.update(person);
    HashSet<Phone> set = new HashSet<>(person.getPhoneNumbers().toList());
    assertEquals(2, set.size());
    assertTrue(set.containsAll(Arrays.asList(phone1, phone2)));
    assertEquals(person, phone1.getOwner());
    assertEquals(person, phone2.getOwner());
}
Also used : Phone(io.requery.test.model.Phone) Person(io.requery.test.model.Person) Group_Person(io.requery.test.model.Group_Person) HashSet(java.util.HashSet) Test(org.junit.Test)

Aggregations

Person (io.requery.test.model.Person)127 Test (org.junit.Test)122 Group_Person (io.requery.test.model.Group_Person)80 Phone (io.requery.test.model.Phone)24 ArrayList (java.util.ArrayList)18 Tuple (io.requery.query.Tuple)13 AtomicInteger (java.util.concurrent.atomic.AtomicInteger)10 Group (io.requery.test.model.Group)9 Result (io.requery.query.Result)8 Address (io.requery.test.model.Address)8 HashSet (java.util.HashSet)7 CountDownLatch (java.util.concurrent.CountDownLatch)6 ReactiveResult (io.requery.reactivex.ReactiveResult)5 RxResult (io.requery.rx.RxResult)5 SQLException (java.sql.SQLException)5 Disposable (io.reactivex.disposables.Disposable)4 Function (io.reactivex.functions.Function)4 Calendar (java.util.Calendar)4 Subscription (rx.Subscription)4 PersistenceException (io.requery.PersistenceException)3