@Test public void wal() throws IOException { SafeHelperFactory factory= SafeHelperFactory.fromUser(new SpannableStringBuilder(PASSPHRASE)); SupportSQLiteOpenHelper helper= factory.create(InstrumentationRegistry.getTargetContext(), DB_NAME, new Callback(1)); SupportSQLiteDatabase db=helper.getWritableDatabase(); assertFalse(db.isWriteAheadLoggingEnabled()); assertTrue(db.enableWriteAheadLogging()); assertTrue(db.isWriteAheadLoggingEnabled()); db.close(); factory=SafeHelperFactory.fromUser(new SpannableStringBuilder(PASSPHRASE)); helper= factory.create(InstrumentationRegistry.getTargetContext(), DB_NAME, new Callback(1)); db=helper.getWritableDatabase(); assertTrue(db.isWriteAheadLoggingEnabled()); db.disableWriteAheadLogging(); assertFalse(db.isWriteAheadLoggingEnabled()); db.close(); }
@Test public void notQuiteAsSafeButStillNice() { final Context ctxt=InstrumentationRegistry.getTargetContext(); android.database.sqlite.SQLiteOpenHelper helper = new LessSafeNonRoomHelper(ctxt); helper.getWritableDatabase(); helper.close(); ImportingLessSafeDatabase room = ImportingLessSafeDatabase.gimme(ctxt); SupportSQLiteDatabase db=room.getOpenHelper().getWritableDatabase(); try { assertTrue(db.isWriteAheadLoggingEnabled()); } finally { room.close(); } }
@Test public void safe() { final Context ctxt=InstrumentationRegistry.getTargetContext(); SQLiteDatabase.loadLibs(ctxt); SQLiteOpenHelper helper = new SafeNonRoomHelper(ctxt); helper.getWritableDatabase(PASSPHRASE); helper.close(); ImportingSafeDatabase room = ImportingSafeDatabase.gimme(ctxt); SupportSQLiteDatabase db=room.getOpenHelper().getWritableDatabase(); try { assertTrue(db.isWriteAheadLoggingEnabled()); } finally { room.close(); } }