Search in sources :

Example 1 with Girl2

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

the class EntityCacheTest method testMapRows2Types_entityAware_Max_LEFT.

@Test
public void testMapRows2Types_entityAware_Max_LEFT() {
    DbOomQuery q = new DbOomQuery(sql(TSQL_LEFT));
    Set<Girl2> set1 = q.withHints("g", "g.boys").entityAwareMode(true).listSet(2, Girl2.class, Boy.class);
    assertEquals(2, set1.size());
    for (Girl2 girl : set1) {
        if (girl.id.equals(3)) {
            assertNull(girl.getBoys());
        } else if (girl.id.equals(2)) {
            assertEquals(2, girl.getBoys().size());
        } else {
            fail();
        }
    }
}
Also used : Girl2(jodd.db.oom.tst.Girl2) Test(org.junit.Test)

Example 2 with Girl2

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

the class EntityCacheTest method setUp.

@Override
@Before
public void setUp() throws Exception {
    super.setUp();
    DbOomManager.resetAll();
    DbOomManager dbOom = DbOomManager.getInstance();
    dbOom.registerEntity(Girl2.class);
    dbOom.registerEntity(Boy.class);
    dbSession = new DbThreadSession(cp);
    assertEquals(1, DbEntitySql.insert(new Girl2(1, "Anna", "swim")).query().executeUpdate());
    assertEquals(1, DbEntitySql.insert(new Girl2(2, "Sandra", "piano")).query().executeUpdate());
    assertEquals(1, DbEntitySql.insert(new Girl2(3, "Emma", "nothing")).query().executeUpdate());
    assertEquals(1, DbEntitySql.insert(new Boy(1, "Johny", 2)).query().executeUpdate());
    assertEquals(1, DbEntitySql.insert(new Boy(2, "Marco", 2)).query().executeUpdate());
    assertEquals(1, DbEntitySql.insert(new Boy(3, "Hugo", 1)).query().executeUpdate());
}
Also used : DbThreadSession(jodd.db.DbThreadSession) Boy(jodd.db.oom.tst.Boy) Girl2(jodd.db.oom.tst.Girl2) Before(org.junit.Before)

Example 3 with Girl2

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

the class EntityCacheTest method testMapRows2Types_useCache_useHints_1perRow_LEFT.

@Test
public void testMapRows2Types_useCache_useHints_1perRow_LEFT() {
    DbOomQuery q = new DbOomQuery(sql(TSQL_LEFT));
    List<Girl2> result2 = q.withHints("g", "g.boys").cacheEntities(true).list(Girl2.class, Boy.class);
    assertEquals(4, result2.size());
    Girl2 girl0 = result2.get(0);
    Girl2 girl1 = result2.get(1);
    Girl2 girl2 = result2.get(2);
    Girl2 girl3 = result2.get(3);
    assertTrue(girl1.equals(girl2));
    assertTrue(girl1 == girl2);
    assertFalse(girl3 == girl1);
    assertNull(girl0.getBoys());
    assertNotNull(girl1.getBoys());
    assertEquals(2, girl1.getBoys().size());
    assertNotNull(girl3.getBoys());
    assertEquals(1, girl3.getBoys().size());
    assertEquals("Hugo", girl3.getBoys().get(0).name);
}
Also used : Girl2(jodd.db.oom.tst.Girl2) Test(org.junit.Test)

Example 4 with Girl2

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

the class EntityCacheTest method testMapRows2Types_useCache_useHints_1perRow.

@Test
public void testMapRows2Types_useCache_useHints_1perRow() {
    DbOomQuery q = new DbOomQuery(sql(TSQL));
    List<Girl2> result2 = q.withHints("g", "g.boys").cacheEntities(true).list(Girl2.class, Boy.class);
    assertEquals(3, result2.size());
    Girl2 girl1 = result2.get(0);
    Girl2 girl2 = result2.get(1);
    Girl2 girl3 = result2.get(2);
    assertTrue(girl1.equals(girl2));
    assertTrue(girl1 == girl2);
    assertFalse(girl3 == girl1);
    assertNotNull(girl1.getBoys());
    assertEquals(2, girl1.getBoys().size());
    assertNotNull(girl3.getBoys());
    assertEquals(1, girl3.getBoys().size());
    assertEquals("Hugo", girl3.getBoys().get(0).name);
}
Also used : Girl2(jodd.db.oom.tst.Girl2) Test(org.junit.Test)

Example 5 with Girl2

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

the class EntityCacheTest method testMapRows2Types_entityAware_LEFT.

@Test
public void testMapRows2Types_entityAware_LEFT() {
    DbOomQuery q = new DbOomQuery(sql(TSQL_LEFT));
    List<Girl2> result2 = q.withHints("g", "g.boys").entityAwareMode(true).list(Girl2.class, Boy.class);
    assertEquals(3, result2.size());
    Girl2 girl0 = result2.get(0);
    Girl2 girl1 = result2.get(1);
    Girl2 girl3 = result2.get(2);
    assertNull(girl0.getBoys());
    assertNotNull(girl1.getBoys());
    assertEquals(2, girl1.getBoys().size());
    assertNotNull(girl3.getBoys());
    assertEquals(1, girl3.getBoys().size());
}
Also used : Girl2(jodd.db.oom.tst.Girl2) Test(org.junit.Test)

Aggregations

Girl2 (jodd.db.oom.tst.Girl2)18 Test (org.junit.Test)17 Boy (jodd.db.oom.tst.Boy)3 DbThreadSession (jodd.db.DbThreadSession)2 ResultSet (java.sql.ResultSet)1 SQLException (java.sql.SQLException)1 DbQuery (jodd.db.DbQuery)1 DbSession (jodd.db.DbSession)1 Girl (jodd.db.oom.tst.Girl)1 IdName (jodd.db.oom.tst.IdName)1 Before (org.junit.Before)1