@Override public void run() { dao.update(entity); } });
@Override public void run() { dao.update(entity); } };
public void testDeleteQuerySimple() { ArrayList<TestEntity> inserted = insert(3); int value = getSimpleInteger(1); inserted.get(2).setSimpleInteger(value); dao.update(inserted.get(2)); DeleteQuery<TestEntity> deleteQuery = dao.queryBuilder().where(Properties.SimpleInteger.eq(value)) .buildDelete(); deleteQuery.executeDeleteWithoutDetachingEntities(); List<TestEntity> allAfterDelete = dao.loadAll(); assertEquals(1, allAfterDelete.size()); assertEquals(getSimpleInteger(0), (int) allAfterDelete.get(0).getSimpleInteger()); }
initThreads(runnable1, runnable2, runnable3); dao.update(entity); doTx(new Runnable() { @Override
public void testIsNullIsNotNull() { ArrayList<TestEntity> inserted = insert(2); TestEntity testEntityNull = inserted.get(0); TestEntity testEntityNotNull = inserted.get(1); testEntityNull.setSimpleInteger(null); testEntityNotNull.setSimpleInteger(42); dao.update(testEntityNull); dao.update(testEntityNotNull); TestEntity testEntityNull2 = dao.queryBuilder().where(Properties.SimpleInteger.isNull()).uniqueOrThrow(); assertEquals(testEntityNull.getId(), testEntityNull2.getId()); TestEntity testEntityNotNull2 = dao.queryBuilder().where(Properties.SimpleInteger.isNotNull()).uniqueOrThrow(); assertEquals(testEntityNotNull.getId(), testEntityNotNull2.getId()); }
public void testCountQueryTwoParametersOr() { int value = getSimpleInteger(1); String valueString = getSimpleString(2); QueryBuilder<TestEntity> queryBuilder = dao.queryBuilder(); queryBuilder.whereOr(Properties.SimpleInteger.eq(value), Properties.SimpleString.eq(valueString)); CountQuery<TestEntity> query = queryBuilder.buildCount(); assertEquals(0, query.count()); ArrayList<TestEntity> inserted = insert(3); assertEquals(2, query.count()); inserted.get(1).setSimpleInteger(getSimpleInteger(2)); dao.update(inserted.get(1)); assertEquals(1, query.count()); inserted.get(2).setSimpleString(getSimpleString(3)); dao.update(inserted.get(2)); assertEquals(0, query.count()); }
public void testCountQueryTwoParameters() { int value = getSimpleInteger(1); String valueString = getSimpleString(1); QueryBuilder<TestEntity> queryBuilder = dao.queryBuilder(); queryBuilder.where(Properties.SimpleInteger.eq(value), Properties.SimpleString.eq(valueString)); CountQuery<TestEntity> query = queryBuilder.buildCount(); assertEquals(0, query.count()); ArrayList<TestEntity> inserted = insert(3); assertEquals(1, query.count()); inserted.get(2).setSimpleInteger(value); dao.update(inserted.get(2)); assertEquals(1, query.count()); inserted.get(2).setSimpleString(valueString); dao.update(inserted.get(2)); assertEquals(2, query.count()); dao.deleteAll(); assertEquals(0, query.count()); }
public void testCountQuerySimple() { int value = getSimpleInteger(1); CountQuery<TestEntity> query = dao.queryBuilder().where(Properties.SimpleInteger.eq(value)).buildCount(); assertEquals(0, query.count()); ArrayList<TestEntity> inserted = insert(3); assertEquals(1, query.count()); inserted.get(2).setSimpleInteger(value); dao.update(inserted.get(2)); assertEquals(2, query.count()); dao.deleteAll(); assertEquals(0, query.count()); }
public void testEqByteArray() { ArrayList<TestEntity> inserted = insert(3); TestEntity testEntity = inserted.get(1); byte[] byteArray = {96, 77, 37, -21}; testEntity.setSimpleByteArray(byteArray); dao.update(testEntity); // Unsupported: Query<TestEntity> query = dao.queryBuilder().where(Properties.SimpleByteArray.eq(byteArray)).build(); // Works, but probably voids any index on BLOBs (Note: there's no hex2blob function and X'?' is bad syntax): // String conditionString = "HEX(" + Properties.SimpleByteArray.columnName + ")=?"; // WhereCondition condition = new WhereCondition.StringCondition(conditionString, SqlUtils.toHex(byteArray)); String conditionString = Properties.SimpleByteArray.columnName + '=' + SqlUtils.escapeBlobArgument(byteArray); WhereCondition condition = new WhereCondition.StringCondition(conditionString); Query<TestEntity> query = dao.queryBuilder().where(condition).build(); TestEntity testEntity2 = query.uniqueOrThrow(); assertEquals(testEntity.getId(), testEntity2.getId()); // Unsupported: query.setParameter(0, new byte[]{96, 77, 37, -21, 99}); // Unsupported: assertNull(query.unique()); }
public void testEqDate() { ArrayList<TestEntity> inserted = insert(3); TestEntity testEntity = inserted.get(1); Date date = new Date(); testEntity.setSimpleDate(date); dao.update(testEntity); Query<TestEntity> queryDate = dao.queryBuilder().where(Properties.SimpleDate.eq(date)).build(); TestEntity testEntity2 = queryDate.uniqueOrThrow(); assertEquals(testEntity.getId(), testEntity2.getId()); queryDate.setParameter(0, date); testEntity2 = queryDate.uniqueOrThrow(); assertEquals(testEntity.getId(), testEntity2.getId()); testEntity2 = dao.queryBuilder().where(Properties.SimpleDate.eq(date.getTime())).uniqueOrThrow(); assertEquals(testEntity.getId(), testEntity2.getId()); }
public void testLike() { TestEntity entity = insert(3).get(1); entity.setSimpleString("greenrobot"); dao.update(entity); Query<TestEntity> query = dao.queryBuilder().where(Properties.SimpleString.like("%robot")).build(); TestEntity entity2 = query.uniqueOrThrow(); assertEquals(entity.getId(), entity2.getId()); query.setParameter(0, "green%"); entity2 = query.uniqueOrThrow(); assertEquals(entity.getId(), entity2.getId()); query.setParameter(0, "%enrob%"); entity2 = query.uniqueOrThrow(); assertEquals(entity.getId(), entity2.getId()); query.setParameter(0, "%nothere%"); entity2 = query.unique(); assertNull(entity2); }
public void testEqBoolean() { ArrayList<TestEntity> inserted = insert(3); TestEntity testEntity = inserted.get(1); testEntity.setSimpleBoolean(true); dao.update(testEntity); Query<TestEntity> queryBoolean = dao.queryBuilder().where(Properties.SimpleBoolean.eq(true)).build(); TestEntity testEntity2 = queryBoolean.uniqueOrThrow(); assertEquals(testEntity.getId(), testEntity2.getId()); queryBoolean.setParameter(0, true); testEntity2 = queryBoolean.uniqueOrThrow(); assertEquals(testEntity.getId(), testEntity2.getId()); testEntity2 = dao.queryBuilder().where(Properties.SimpleBoolean.eq(Boolean.TRUE)).uniqueOrThrow(); assertEquals(testEntity.getId(), testEntity2.getId()); testEntity2 = dao.queryBuilder().where(Properties.SimpleBoolean.eq("TRUE")).uniqueOrThrow(); assertEquals(testEntity.getId(), testEntity2.getId()); testEntity2 = dao.queryBuilder().where(Properties.SimpleBoolean.eq("truE")).uniqueOrThrow(); assertEquals(testEntity.getId(), testEntity2.getId()); }