Search in sources :

Example 11 with Boy

use of jodd.db.oom.tst.Boy in project jodd by oblac.

the class EntityCacheTest method testMapRows2Types_useCache_noHints.

@Test
public void testMapRows2Types_useCache_noHints() {
    DbOomQuery q = new DbOomQuery(sql(TSQL));
    List<Object[]> result = q.cacheEntities(true).list(Girl2.class, Boy.class);
    assertEquals(3, result.size());
    Girl2 girl1 = (Girl2) result.get(0)[0];
    Girl2 girl2 = (Girl2) result.get(1)[0];
    Girl2 girl3 = (Girl2) result.get(2)[0];
    assertTrue(girl1.equals(girl2));
    assertTrue(girl1 == girl2);
    assertFalse(girl3 == girl1);
    Boy boy1 = (Boy) result.get(0)[1];
    Boy boy2 = (Boy) result.get(1)[1];
    Boy boy3 = (Boy) result.get(2)[1];
    assertTrue(boy1.id != boy2.id);
    assertFalse(boy1 == boy2);
    assertFalse(boy2 == boy3);
    assertNull(girl1.getBoys());
    assertNull(girl3.getBoys());
}
Also used : Boy(jodd.db.oom.tst.Boy) Girl2(jodd.db.oom.tst.Girl2) Test(org.junit.Test)

Example 12 with Boy

use of jodd.db.oom.tst.Boy in project jodd by oblac.

the class EntityCacheTest method testMapRows2Types_useCache_noHints_LEFT.

@Test
public void testMapRows2Types_useCache_noHints_LEFT() {
    DbOomQuery q = new DbOomQuery(sql(TSQL_LEFT));
    List<Object[]> result = q.cacheEntities(true).list(Girl2.class, Boy.class);
    assertEquals(4, result.size());
    Girl2 girl0 = (Girl2) result.get(0)[0];
    Girl2 girl1 = (Girl2) result.get(1)[0];
    Girl2 girl2 = (Girl2) result.get(2)[0];
    Girl2 girl3 = (Girl2) result.get(3)[0];
    assertEquals("Emma", girl0.name);
    assertTrue(girl1.equals(girl2));
    assertTrue(girl1 == girl2);
    assertFalse(girl3 == girl1);
    Boy boy0 = (Boy) result.get(0)[1];
    Boy boy1 = (Boy) result.get(1)[1];
    Boy boy2 = (Boy) result.get(2)[1];
    Boy boy3 = (Boy) result.get(3)[1];
    assertNull(boy0);
    assertTrue(boy1.id != boy2.id);
    assertFalse(boy1 == boy2);
    assertFalse(boy2 == boy3);
    assertNull(girl1.getBoys());
    assertNull(girl3.getBoys());
}
Also used : Boy(jodd.db.oom.tst.Boy) Girl2(jodd.db.oom.tst.Girl2) Test(org.junit.Test)

Aggregations

Boy (jodd.db.oom.tst.Boy)12 Test (org.junit.Test)11 DbSqlBuilder (jodd.db.oom.sqlgen.DbSqlBuilder)9 BadBoy (jodd.db.oom.tst.BadBoy)9 Girl2 (jodd.db.oom.tst.Girl2)3 ArrayList (java.util.ArrayList)1 List (java.util.List)1 DbThreadSession (jodd.db.DbThreadSession)1 ParameterValue (jodd.db.oom.sqlgen.ParameterValue)1 Before (org.junit.Before)1