use of com.dailystudio.dataobject.Template in project devbricks by dailystudio.
the class TemplateTest method testListColumns.
public void testListColumns() {
Template templ = new Template();
assertNotNull(templ);
Column col1 = new IntegerColumn("_id");
Column col2 = new LongColumn("time");
Column col3 = new DoubleColumn("fp");
Column col4 = new TextColumn("dummy");
assertNotNull(col1);
assertNotNull(col2);
assertNotNull(col3);
assertNotNull(col4);
templ.addColumn(col1);
templ.addColumn(col2);
templ.addColumn(col3);
templ.addColumn(col4);
List<Column> columns = templ.listColumns();
assertNotNull(columns);
assertEquals(4, columns.size());
List<Column> expected = new ArrayList<Column>();
expected.add(col1);
expected.add(col2);
expected.add(col3);
expected.add(col4);
Asserts.assertEquals(expected, columns);
}
use of com.dailystudio.dataobject.Template in project devbricks by dailystudio.
the class TemplateTest method testGetColumn.
public void testGetColumn() {
Template templ = new Template();
assertNotNull(templ);
Column col1 = new IntegerColumn("_id");
Column col2 = new LongColumn("time");
Column col3 = new DoubleColumn("fp");
Column col4 = new TextColumn("dummy");
assertNotNull(col1);
assertNotNull(col2);
assertNotNull(col3);
assertNotNull(col4);
templ.addColumn(col1);
templ.addColumn(col2);
templ.addColumn(col3);
templ.addColumn(col4);
Column result = null;
result = templ.getColumn("_id");
assertEquals(col1, result);
result = templ.getColumn("time");
assertEquals(col2, result);
result = templ.getColumn("fp");
assertEquals(col3, result);
result = templ.getColumn("dummy");
assertEquals(col4, result);
result = templ.getColumn(null);
assertNull(result);
result = templ.getColumn("test");
assertNull(result);
}
use of com.dailystudio.dataobject.Template in project devbricks by dailystudio.
the class AsyncDatabaseHelperTest method testQueryWithGroupBy.
public void testQueryWithGroupBy() {
final int count = (3 * 10);
DatabaseObject object = null;
DatabaseObject[] objects = new DatabaseObject[count];
assertNotNull(objects);
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 10; j++) {
object = DatabaseObjectFactory.createDatabaseObject(QueryObject.class);
assertNotNull(object);
object.setValue("intValue", i);
object.setValue("doubleValue", ((double) i * 2));
object.setValue("textValue", String.format("%04d", i * 3));
objects[i * 10 + j] = object;
}
}
AsyncDatabaseHelper helper = new TestAsyncDatabaseHelp(mTargetContext, AUTHORITY, QueryObject.class, true);
assertNotNull(helper);
helper.startBulkInsert(mRandom.nextInt(), "BulkInsert1", objects);
waitHelper(helper);
final Template templ = object.getTemplate();
Column col = templ.getColumn("intValue");
Query query = new Query(QueryObject.class);
assertNotNull(query);
ExpressionToken selToken = col.gte(0).and(col.lt(2));
query.setSelection(selToken);
OrderingToken groupByToken = col.groupBy();
query.setGroupBy(groupByToken);
helper.startQuery(mRandom.nextInt(), "testQueryWithGroupBy", query);
waitHelper(helper);
AbsDatabaseConnectivity connectivity = new DatabaseConnectivity(mTargetContext, AUTHORITY, QueryObject.class);
assertNotNull(connectivity);
connectivity.delete(new Query(QueryObject.class));
}
use of com.dailystudio.dataobject.Template in project devbricks by dailystudio.
the class AsyncDatabaseHelperTest method testQueryCursor.
public void testQueryCursor() {
final int count = 10;
DatabaseObject object = null;
DatabaseObject[] objects = new DatabaseObject[count];
assertNotNull(objects);
for (int i = 0; i < 10; i++) {
object = DatabaseObjectFactory.createDatabaseObject(QueryObject.class);
assertNotNull(object);
object.setValue("intValue", i);
object.setValue("doubleValue", ((double) i * 2));
object.setValue("textValue", String.format("%04d", i * 3));
objects[i] = object;
}
AsyncDatabaseHelper helper = new TestAsyncDatabaseHelp(mTargetContext, AUTHORITY, QueryObject.class, true);
assertNotNull(helper);
helper.startBulkInsert(mRandom.nextInt(), "BulkInsert1", objects);
waitHelper(helper);
final Template templ = object.getTemplate();
Column col = templ.getColumn("intValue");
Query query = null;
ExpressionToken selToken = null;
query = new Query(QueryObject.class);
assertNotNull(query);
selToken = col.gt(5).and(col.lt(9));
query.setSelection(selToken);
helper.startQueryCursor(mRandom.nextInt(), "testQueryCursor1", query);
waitHelper(helper);
selToken = col.gt(5).and(col.lt(9));
query.setSelection(selToken);
helper.startQueryCursor(mRandom.nextInt(), "testQueryCursor2", query);
waitHelper(helper);
AbsDatabaseConnectivity connectivity = new DatabaseConnectivity(mTargetContext, AUTHORITY, QueryObject.class);
assertNotNull(connectivity);
connectivity.delete(new Query(QueryObject.class));
}
use of com.dailystudio.dataobject.Template in project devbricks by dailystudio.
the class AsyncDatabaseHelperTest method testQueryWithProjectionClass.
public void testQueryWithProjectionClass() {
final int count = 10;
DatabaseObject object = null;
DatabaseObject[] objects = new DatabaseObject[count];
assertNotNull(objects);
for (int i = 0; i < 10; i++) {
object = DatabaseObjectFactory.createDatabaseObject(QueryObject.class);
assertNotNull(object);
object.setValue("intValue", i);
object.setValue("doubleValue", ((double) i * 2));
object.setValue("textValue", String.format("%04d", i * 3));
objects[i] = object;
}
AsyncDatabaseHelper helper = new TestAsyncDatabaseHelp(mTargetContext, AUTHORITY, QueryObject.class, true);
assertNotNull(helper);
helper.startBulkInsert(mRandom.nextInt(), "BulkInsert1", objects);
waitHelper(helper);
final Template templ = object.getTemplate();
Column col = templ.getColumn("intValue");
Query query = new Query(QueryObject.class);
assertNotNull(query);
ExpressionToken selToken = col.gt(5).and(col.lt(9));
query.setSelection(selToken);
helper.startQuery(mRandom.nextInt(), "testQueryWithProjectionClass", query, ProjectionObject.class);
waitHelper(helper);
AbsDatabaseConnectivity connectivity = new DatabaseConnectivity(mTargetContext, AUTHORITY, QueryObject.class);
assertNotNull(connectivity);
connectivity.delete(new Query(QueryObject.class));
}
Aggregations