Search in sources :

Example 6 with DatabaseStorage

use of com.microsoft.appcenter.utils.storage.StorageHelper.DatabaseStorage in project mobile-center-sdk-android by Microsoft.

the class StorageHelperAndroidTest method databaseStorage.

@Test
public void databaseStorage() throws IOException {
    Log.i(TAG, "Testing Database Storage");
    /* Get instance to access database. */
    DatabaseStorage databaseStorage = DatabaseStorage.getDatabaseStorage("test-databaseStorage", "databaseStorage", 1, mSchema, new DatabaseStorage.DatabaseErrorListener() {

        @Override
        public void onError(String operation, RuntimeException e) {
            throw e;
        }
    });
    // noinspection TryFinallyCanBeTryWithResources (try with resources statement is API >= 19)
    try {
        runDatabaseStorageTest(databaseStorage, false);
    } finally {
        /* Close. */
        // noinspection ThrowFromFinallyBlock
        databaseStorage.close();
    }
}
Also used : DatabaseStorage(com.microsoft.appcenter.utils.storage.StorageHelper.DatabaseStorage) SmallTest(android.support.test.filters.SmallTest) Test(org.junit.Test)

Example 7 with DatabaseStorage

use of com.microsoft.appcenter.utils.storage.StorageHelper.DatabaseStorage in project mobile-center-sdk-android by Microsoft.

the class StorageHelperAndroidTest method databaseStorageUpgrade.

@Test
public void databaseStorageUpgrade() throws IOException {
    Log.i(TAG, "Testing Database Storage Upgrade");
    /* Create a schema for v1. */
    ContentValues schema = new ContentValues();
    schema.put("COL_STRING", "");
    /* Create a row for v1. */
    ContentValues oldVersionValue = new ContentValues();
    oldVersionValue.put("COL_STRING", "Hello World");
    /* Get instance to access database. */
    DatabaseStorage databaseStorage = DatabaseStorage.getDatabaseStorage("test-databaseStorageUpgrade", "databaseStorageUpgrade", 1, schema, new DatabaseStorage.DatabaseErrorListener() {

        @Override
        public void onError(String operation, RuntimeException e) {
            throw e;
        }
    });
    try {
        /* Database will always create a column for identifiers so default length of all tables is 1. */
        assertEquals(2, databaseStorage.getColumnNames().length);
    } finally {
        /* Close. */
        // noinspection ThrowFromFinallyBlock
        databaseStorage.close();
    }
    /* Get instance to access database with a newer schema. */
    databaseStorage = DatabaseStorage.getDatabaseStorage("test-databaseStorageUpgrade", "databaseStorageUpgrade", 2, mSchema, new DatabaseStorage.DatabaseErrorListener() {

        @Override
        public void onError(String operation, RuntimeException e) {
            throw e;
        }
    });
    try {
        assertEquals(11, databaseStorage.getColumnNames().length);
    } finally {
        /* Close. */
        // noinspection ThrowFromFinallyBlock
        databaseStorage.close();
    }
}
Also used : ContentValues(android.content.ContentValues) DatabaseStorage(com.microsoft.appcenter.utils.storage.StorageHelper.DatabaseStorage) SmallTest(android.support.test.filters.SmallTest) Test(org.junit.Test)

Aggregations

DatabaseStorage (com.microsoft.appcenter.utils.storage.StorageHelper.DatabaseStorage)7 SmallTest (android.support.test.filters.SmallTest)6 Test (org.junit.Test)6 ContentValues (android.content.ContentValues)3 SuppressLint (android.annotation.SuppressLint)1