@Override protected SimpleEntity createEntity(Long key) { SimpleEntity entity = new SimpleEntity(); entity.setId(key); return entity; }
@Override public SimpleEntity readEntity(Cursor cursor, int offset) { SimpleEntity entity = new SimpleEntity( // cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id cursor.isNull(offset + 1) ? null : cursor.getShort(offset + 1) != 0, // simpleBoolean cursor.isNull(offset + 2) ? null : (byte) cursor.getShort(offset + 2), // simpleByte cursor.isNull(offset + 3) ? null : cursor.getShort(offset + 3), // simpleShort cursor.isNull(offset + 4) ? null : cursor.getInt(offset + 4), // simpleInt cursor.isNull(offset + 5) ? null : cursor.getLong(offset + 5), // simpleLong cursor.isNull(offset + 6) ? null : cursor.getFloat(offset + 6), // simpleFloat cursor.isNull(offset + 7) ? null : cursor.getDouble(offset + 7), // simpleDouble cursor.isNull(offset + 8) ? null : cursor.getString(offset + 8), // simpleString cursor.isNull(offset + 9) ? null : cursor.getBlob(offset + 9) // simpleByteArray ); return entity; }
public void testListenerMainThread() throws InterruptedException { AsyncOperationListener listener = new AsyncOperationListener() { @Override public synchronized void onAsyncOperationCompleted(AsyncOperation operation) { assertEquals(Looper.getMainLooper(), Looper.myLooper()); testListenerMainThread_done = true; notifyAll(); } }; asyncSession.setListenerMainThread(listener); asyncSession.insert(new SimpleEntity()); assertWaitForCompletion1Sec(); while (!testListenerMainThread_done) { synchronized (listener) { listener.wait(1000); } } }
public void testAsyncOperationWait() { AsyncOperation operation = asyncSession.insert(new SimpleEntity()); asyncSession.waitForCompletion(); assertSingleOperationCompleted(operation); }
public void testQuery() { SimpleEntity entity = new SimpleEntity(); entity.setSimpleString("hello"); daoSession.insert(entity); long id = entity.getId(); SimpleEntity entity2 = new SimpleEntity(); entity2.setSimpleString("content"); daoSession.insert(entity2); long id2 = entity2.getId(); Cursor cursor = getContext().getContentResolver().query(SimpleEntityContentProvider.CONTENT_URI, null, null, null, "_id"); assertEquals(2, cursor.getCount()); int idxId = cursor.getColumnIndexOrThrow(SimpleEntityDao.Properties.Id.columnName); int idxString = cursor.getColumnIndexOrThrow(SimpleEntityDao.Properties.SimpleString.columnName); assertTrue(cursor.moveToFirst()); assertEquals("hello", cursor.getString(idxString)); assertEquals(id, cursor.getLong(idxId)); assertTrue(cursor.moveToNext()); assertEquals("content", cursor.getString(idxString)); assertEquals(id2, cursor.getLong(idxId)); }
public void testNoAutoincrement() { SimpleEntity entity = new SimpleEntity(); daoSession.insert(entity); Long id1 = entity.getId(); assertNotNull(id1); daoSession.delete(entity); SimpleEntity entity2 = new SimpleEntity(); daoSession.insert(entity2); assertEquals(id1, entity2.getId()); }
public void testAsyncOperationWaitMillis() { AsyncOperation operation = asyncSession.insert(new SimpleEntity()); assertTrue(asyncSession.waitForCompletion(1000)); assertSingleOperationCompleted(operation); }
private void assertDbEncryptedAndFunctional(Database db) { EncryptedDbUtils.assertEncryptedDbUsed(db); DaoSession daoSession = new DaoMaster(db).newSession(); daoSession.insert(new SimpleEntity()); assertEquals(1, daoSession.loadAll(SimpleEntity.class).size()); }
public void testSessionReset() { SimpleEntity entity = new SimpleEntity(); daoSession.insert(entity); daoSession.clear(); SimpleEntity entity2 = daoSession.load(SimpleEntity.class, entity.getId()); assertNotSame(entity, entity2); } }
public void testIdentityPerSession() { SimpleEntity entity = new SimpleEntity(); daoSession.insert(entity); DaoSession session2 = daoMaster.newSession(); SimpleEntity entity2 = session2.load(SimpleEntity.class, entity.getId()); assertNotSame(entity, entity2); }
public void testInsertAndLoad() { SimpleEntity entity = new SimpleEntity(); daoSession.insert(entity); Long id = entity.getId(); assertNotNull(id); SimpleEntity entity2 = daoSession.load(SimpleEntity.class, id); assertNotNull(entity2); }
public void testAsyncExceptionCreator() { SimpleEntity entity = new SimpleEntity(); daoSession.insert(entity); AsyncOperation operation = asyncSession.insert(entity); assertWaitForCompletion1Sec(); assertNull(operation.getCreatorStacktrace()); operation = asyncSession.insert(entity, AsyncOperation.FLAG_TRACK_CREATOR_STACKTRACE); assertWaitForCompletion1Sec(); assertNotNull(operation.getCreatorStacktrace()); asyncSession.setSessionFlags(AsyncOperation.FLAG_TRACK_CREATOR_STACKTRACE); operation = asyncSession.insert(entity); assertWaitForCompletion1Sec(); assertNotNull(operation.getCreatorStacktrace()); StackTraceElement[] stack = operation.getCreatorStacktrace().getStackTrace(); boolean found = false; for (StackTraceElement stackTraceElement : stack) { found |= stackTraceElement.getClassName().equals(getClass().getName()); } assertTrue(found); }
public void testIdentity() { SimpleEntity entity = new SimpleEntity(); daoSession.insert(entity); SimpleEntity entity2 = daoSession.load(SimpleEntity.class, entity.getId()); SimpleEntity entity3 = daoSession.load(SimpleEntity.class, entity.getId()); assertSame(entity, entity2); assertSame(entity, entity3); }
public void testAsyncException() { SimpleEntity entity = new SimpleEntity(); daoSession.insert(entity); AsyncOperation operation = asyncSession.insert(entity); assertWaitForCompletion1Sec(); assertSingleOperationCompleted(operation); assertTrue(operation.isFailed()); assertNotNull(operation.getThrowable()); }
public void testMergeInsertAndUpdate() { SimpleEntity entity = new SimpleEntity(); entity.setId(42l); entity.setSimpleString("heho"); SimpleEntity entity2 = new SimpleEntity(); entity2.setId(42l); entity2.setSimpleString("updated"); AsyncOperation op1 = asyncSession.insert(entity, AsyncOperation.FLAG_MERGE_TX); AsyncOperation op2 = asyncSession.update(entity2, AsyncOperation.FLAG_MERGE_TX); assertWaitForCompletion1Sec(); daoSession.clear(); SimpleEntity entity3 = daoSession.load(SimpleEntity.class, 42l); assertNotNull(entity3); assertEquals(entity2.getSimpleString(), entity3.getSimpleString()); assertEquals(2, op1.getMergedOperationsCount()); assertEquals(2, op2.getMergedOperationsCount()); }
public void testOperationGetResultException() { SimpleEntity entity = new SimpleEntity(); daoSession.insert(entity); AsyncOperation operation = asyncSession.insert(entity); try { operation.getResult(); fail("getResult should have thrown"); } catch (AsyncDaoException expected) { // OK } assertTrue(operation.isCompleted()); assertFalse(operation.isCompletedSucessfully()); assertTrue(operation.isFailed()); }
public void testAsyncInsert() { SimpleEntity entity = new SimpleEntity(); entity.setSimpleString("heho"); AsyncOperation operation = asyncSession.insert(entity); assertWaitForCompletion1Sec(); SimpleEntity entity2 = daoSession.load(SimpleEntity.class, entity.getId()); assertNotNull(entity2); assertEquals("heho", entity2.getSimpleString()); assertFalse(operation.isFailed()); assertSingleOperationCompleted(operation); }
public void testAsyncUpdate() { SimpleEntity entity = new SimpleEntity(); entity.setSimpleString("heho"); daoSession.insert(entity); entity.setSimpleString("updated"); AsyncOperation operation = asyncSession.update(entity); assertWaitForCompletion1Sec(); daoSession.clear(); SimpleEntity entity2 = daoSession.load(SimpleEntity.class, entity.getId()); assertNotNull(entity2); assertEquals("updated", entity2.getSimpleString()); assertFalse(operation.isFailed()); assertSingleOperationCompleted(operation); }
public void testOperationGetResult() { SimpleEntity entity = new SimpleEntity(); entity.setSimpleString("heho"); daoSession.insert(entity); daoSession.clear(); AsyncOperation operation = asyncSession.load(SimpleEntity.class, entity.getId()); SimpleEntity result = (SimpleEntity) operation.getResult(); assertTrue(operation.isCompleted()); assertTrue(operation.isCompletedSucessfully()); assertNotNull(result); assertNotSame(entity, result); assertEquals(entity.getId(), result.getId()); assertEquals(entity.getSimpleString(), result.getSimpleString()); }