public void testInsertWithDefaultValues() { // insert into things default values; Insert insert = Insert.into(Thing.TABLE).defaultValues(); CompiledStatement compiled = insert.compile(database.getCompileContext()); verifyCompiledSqlArgs(compiled, 0); int rowsBeforeInsert = database.countAll(Thing.class); assertEquals(3, database.insert(insert)); int rowsAfterInsert = database.countAll(Thing.class); assertEquals(rowsBeforeInsert + 1, rowsAfterInsert); // get the newest Thing newThing = null; SquidCursor<Thing> cursor = null; try { cursor = database.query(Thing.class, Query.select(Thing.PROPERTIES).orderBy(Order.desc(Thing.ID)).limit(1)); if (cursor.moveToFirst()) { newThing = new Thing(cursor); } } finally { if (cursor != null) { cursor.close(); } } assertNotNull(newThing); assertEquals(Thing.DEFAULT_FOO, newThing.getFoo()); assertEquals(Thing.DEFAULT_BAR, newThing.getBar().intValue()); assertEquals(Thing.DEFAULT_IS_ALIVE, newThing.isAlive().booleanValue()); }