public void testToManyWithJoin() {
ToManyEntity entity = new ToManyEntity(1L);
daoSession.insert(entity);
List<DateEntity> dateEntities = entity.getDateEntityList();
assertEquals(0, dateEntities.size());
DateEntityDao dateDao = daoSession.getDateEntityDao();
Date now = new Date();
DateEntity date1 = new DateEntity(1L, null, now);
DateEntity date2 = new DateEntity(2L, null, now);
DateEntity date3 = new DateEntity(3L, null, now);
DateEntity date4 = new DateEntity(4L, null, now);
dateDao.insertInTx(date1, date2, date3, date4);
daoSession.insert(new JoinManyToDateEntity(1L,2L,1L));
daoSession.insert(new JoinManyToDateEntity(2L,1L,3L));
entity.resetDateEntityList();
dateEntities = entity.getDateEntityList();
assertEquals(1, dateEntities.size());
assertEquals(3L, (long) dateEntities.get(0).getId());
daoSession.insert(new JoinManyToDateEntity(3L, 1L, 4L));
entity.resetDateEntityList();
dateEntities = entity.getDateEntityList();
assertEquals(2, dateEntities.size());
}