public void testInsertInTx() { dao.deleteAll(); List<T> list = new ArrayList<T>(); for (int i = 0; i < 20; i++) { list.add(createEntityWithRandomPk()); } dao.insertInTx(list); assertEquals(list.size(), dao.count()); }
public void testLoadAll() { dao.deleteAll(); List<T> list = new ArrayList<T>(); for (int i = 0; i < 15; i++) { T entity = createEntity(nextPk()); list.add(entity); } dao.insertInTx(list); List<T> loaded = dao.loadAll(); assertEquals(list.size(), loaded.size()); }
public void testInsertOrReplaceInTx() { dao.deleteAll(); List<T> listPartial = new ArrayList<T>(); List<T> listAll = new ArrayList<T>(); for (int i = 0; i < 20; i++) { T entity = createEntityWithRandomPk(); if (i % 2 == 0) { listPartial.add(entity); } listAll.add(entity); } dao.insertOrReplaceInTx(listPartial); dao.insertOrReplaceInTx(listAll); assertEquals(listAll.size(), dao.count()); }
protected Cursor queryWithDummyColumnsInFront(int dummyCount, String valueForColumn, K pk) { StringBuilder builder = new StringBuilder("SELECT "); for (int i = 0; i < dummyCount; i++) { builder.append(valueForColumn).append(","); } SqlUtils.appendColumns(builder, "T", dao.getAllColumns()).append(" FROM "); builder.append('"').append(dao.getTablename()).append('"').append(" T"); if (pk != null) { builder.append(" WHERE "); assertEquals(1, dao.getPkColumns().length); builder.append(dao.getPkColumns()[0]).append("="); DatabaseUtils.appendValueToSql(builder, pk); } String select = builder.toString(); Cursor cursor = db.rawQuery(select, null); assertTrue(cursor.moveToFirst()); try { for (int i = 0; i < dummyCount; i++) { assertEquals(valueForColumn, cursor.getString(i)); } if (pk != null) { assertEquals(1, cursor.getCount()); } } catch (RuntimeException ex) { cursor.close(); throw ex; } return cursor; }
public void testCount() { dao.deleteAll(); assertEquals(0, dao.count()); dao.insert(createEntityWithRandomPk()); assertEquals(1, dao.count()); dao.insert(createEntityWithRandomPk()); assertEquals(2, dao.count()); }
public void testDeleteInTx() { List<T> entityList = new ArrayList<T>(); for (int i = 0; i < 10; i++) { T entity = createEntityWithRandomPk(); entityList.add(entity); } dao.insertInTx(entityList); List<T> entitiesToDelete = new ArrayList<T>(); entitiesToDelete.add(entityList.get(0)); entitiesToDelete.add(entityList.get(3)); entitiesToDelete.add(entityList.get(4)); entitiesToDelete.add(entityList.get(8)); dao.deleteInTx(entitiesToDelete); assertEquals(entityList.size() - entitiesToDelete.size(), dao.count()); for (T deletedEntity : entitiesToDelete) { K key = daoAccess.getKey(deletedEntity); assertNotNull(key); assertNull(dao.load(key)); } }
public void testSaveInTx() { if(!checkKeyIsNullable()) { return; } dao.deleteAll(); List<T> listPartial = new ArrayList<T>(); List<T> listAll = new ArrayList<T>(); for (int i = 0; i < 20; i++) { T entity = createEntity(null); if (i % 2 == 0) { listPartial.add(entity); } listAll.add(entity); } dao.saveInTx(listPartial); dao.saveInTx(listAll); assertEquals(listAll.size(), dao.count()); }
public void testQuery() { dao.insert(createEntityWithRandomPk()); K pkForQuery = nextPk(); dao.insert(createEntity(pkForQuery)); dao.insert(createEntityWithRandomPk()); String where = "WHERE " + dao.getPkColumns()[0] + "=?"; List<T> list = dao.queryRaw(where, pkForQuery.toString()); assertEquals(1, list.size()); assertEquals(pkForQuery, daoAccess.getKey(list.get(0))); }
public void testDeleteByKeyInTx() { List<T> entityList = new ArrayList<T>(); for (int i = 0; i < 10; i++) { T entity = createEntityWithRandomPk(); entityList.add(entity); } dao.insertInTx(entityList); List<K> keysToDelete = new ArrayList<K>(); keysToDelete.add(daoAccess.getKey(entityList.get(0))); keysToDelete.add(daoAccess.getKey(entityList.get(3))); keysToDelete.add(daoAccess.getKey(entityList.get(4))); keysToDelete.add(daoAccess.getKey(entityList.get(8))); dao.deleteByKeyInTx(keysToDelete); assertEquals(entityList.size() - keysToDelete.size(), dao.count()); for (K key : keysToDelete) { assertNotNull(key); assertNull(dao.load(key)); } }
protected void runLoadPkTest(int offset) { K pk = nextPk(); T entity = createEntity(pk); dao.insert(entity); Cursor cursor = queryWithDummyColumnsInFront(offset, "42", pk); try { K pk2 = daoAccess.readKey(cursor, offset); assertEquals(pk, pk2); } finally { cursor.close(); } }
public void testReadWithOffset() { K pk = nextPk(); T entity = createEntity(pk); dao.insert(entity); Cursor cursor = queryWithDummyColumnsInFront(5, "42", pk); try { T entity2 = daoAccess.readEntity(cursor, 5); assertEquals(pk, daoAccess.getKey(entity2)); } finally { cursor.close(); } }
public void testInsertOrReplaceTwice() { T entity = createEntityWithRandomPk(); long rowId1 = dao.insert(entity); long rowId2 = dao.insertOrReplace(entity); if (dao.getPkProperty().type == Long.class) { assertEquals(rowId1, rowId2); } }
public void testInsertAndLoad() { K pk = nextPk(); T entity = createEntity(pk); dao.insert(entity); assertEquals(pk, daoAccess.getKey(entity)); T entity2 = dao.load(pk); assertNotNull(entity2); assertEquals(daoAccess.getKey(entity), daoAccess.getKey(entity2)); }
public void testUpdate() { dao.deleteAll(); T entity = createEntityWithRandomPk(); dao.insert(entity); dao.update(entity); assertEquals(1, dao.count()); }
public void testDeleteAll() { List<T> entityList = new ArrayList<T>(); for (int i = 0; i < 10; i++) { T entity = createEntityWithRandomPk(); entityList.add(entity); } dao.insertInTx(entityList); dao.deleteAll(); assertEquals(0, dao.count()); for (T entity : entityList) { K key = daoAccess.getKey(entity); assertNotNull(key); assertNull(dao.load(key)); } }
public void testSave() { if(!checkKeyIsNullable()) { return; } dao.deleteAll(); T entity = createEntity(null); if (entity != null) { dao.save(entity); dao.save(entity); assertEquals(1, dao.count()); } }
public void testInsertAndLoad() { K pk = nextPk(); T entity = createEntity(pk); dao.insert(entity); assertEquals(pk, daoAccess.getKey(entity)); T entity2 = dao.load(pk); assertNotNull(entity2); assertEquals(daoAccess.getKey(entity), daoAccess.getKey(entity2)); }
public void testInsertOrReplaceTwice() { T entity = createEntityWithRandomPk(); long rowId1 = dao.insert(entity); long rowId2 = dao.insertOrReplace(entity); if (dao.getPkProperty().type == Long.class) { assertEquals(rowId1, rowId2); } }
public void testReadWithOffset() { K pk = nextPk(); T entity = createEntity(pk); dao.insert(entity); Cursor cursor = queryWithDummyColumnsInFront(5, "42", pk); try { T entity2 = daoAccess.readEntity(cursor, 5); assertEquals(pk, daoAccess.getKey(entity2)); } finally { cursor.close(); } }
public void testSave() { if(!checkKeyIsNullable()) { return; } dao.deleteAll(); T entity = createEntity(null); if (entity != null) { dao.save(entity); dao.save(entity); assertEquals(1, dao.count()); } }