diff options
author | Allan Wang <me@allanwang.ca> | 2021-01-24 16:55:33 -0800 |
---|---|---|
committer | Allan Wang <me@allanwang.ca> | 2021-01-24 16:55:33 -0800 |
commit | e0f289862bb76c36c01db9b092cafeb4cf8f6ebc (patch) | |
tree | e5ecea77a407aa86ad63a5713acdd2ee28b53d6d /app/src/androidTest/kotlin/com | |
parent | 2a0d6f895a7d48bd86ca4849c742dd0ca39ff8c5 (diff) | |
download | frost-e0f289862bb76c36c01db9b092cafeb4cf8f6ebc.tar.gz frost-e0f289862bb76c36c01db9b092cafeb4cf8f6ebc.tar.bz2 frost-e0f289862bb76c36c01db9b092cafeb4cf8f6ebc.zip |
Update db to include messenger cookie
Diffstat (limited to 'app/src/androidTest/kotlin/com')
-rw-r--r-- | app/src/androidTest/kotlin/com/pitchedapps/frost/db/CookieMigrationTest.kt | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/app/src/androidTest/kotlin/com/pitchedapps/frost/db/CookieMigrationTest.kt b/app/src/androidTest/kotlin/com/pitchedapps/frost/db/CookieMigrationTest.kt new file mode 100644 index 00000000..6ba6e0b6 --- /dev/null +++ b/app/src/androidTest/kotlin/com/pitchedapps/frost/db/CookieMigrationTest.kt @@ -0,0 +1,58 @@ +/* + * Copyright 2021 Allan Wang + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ +package com.pitchedapps.frost.db + +import androidx.room.Room +import androidx.room.testing.MigrationTestHelper +import androidx.sqlite.db.framework.FrameworkSQLiteOpenHelperFactory +import androidx.test.ext.junit.runners.AndroidJUnit4 +import androidx.test.platform.app.InstrumentationRegistry +import kotlin.test.Test +import org.junit.runner.RunWith + +@RunWith(AndroidJUnit4::class) +class CookieMigrationTest { + + private val TEST_DB = "cookie_migration_test" + + private val ALL_MIGRATIONS = arrayOf(COOKIES_MIGRATION_1_2) + + val helper: MigrationTestHelper = MigrationTestHelper( + InstrumentationRegistry.getInstrumentation(), + FrostPrivateDatabase::class.java.canonicalName, + FrameworkSQLiteOpenHelperFactory() + ) + + @Test + fun migrateAll() { + // Create earliest version of the database. + helper.createDatabase(TEST_DB, 1).apply { + close() + } + + // Open latest version of the database. Room will validate the schema + // once all migrations execute. + Room.databaseBuilder( + InstrumentationRegistry.getInstrumentation().targetContext, + FrostPrivateDatabase::class.java, + TEST_DB + ).addMigrations(*ALL_MIGRATIONS).build().apply { + openHelper.writableDatabase + close() + } + } +} |