aboutsummaryrefslogtreecommitdiff
path: root/app/src/androidTest/kotlin/com/pitchedapps/frost/db/DatabaseTest.kt
diff options
context:
space:
mode:
authorAllan Wang <me@allanwang.ca>2021-11-18 14:32:08 -0800
committerAllan Wang <me@allanwang.ca>2021-11-18 14:32:08 -0800
commit5662e6f483b93a07f01c352786462406e4d54f4f (patch)
tree105200d606ab7b5fe928f557976e214092a04212 /app/src/androidTest/kotlin/com/pitchedapps/frost/db/DatabaseTest.kt
parent68397505810095136cac25382d93ca9b910d38c9 (diff)
parentab7447c811808568cc7367eef3149aead2d990b3 (diff)
downloadfrost-5662e6f483b93a07f01c352786462406e4d54f4f.tar.gz
frost-5662e6f483b93a07f01c352786462406e4d54f4f.tar.bz2
frost-5662e6f483b93a07f01c352786462406e4d54f4f.zip
Fix merge conflicts
Diffstat (limited to 'app/src/androidTest/kotlin/com/pitchedapps/frost/db/DatabaseTest.kt')
-rw-r--r--app/src/androidTest/kotlin/com/pitchedapps/frost/db/DatabaseTest.kt53
1 files changed, 0 insertions, 53 deletions
diff --git a/app/src/androidTest/kotlin/com/pitchedapps/frost/db/DatabaseTest.kt b/app/src/androidTest/kotlin/com/pitchedapps/frost/db/DatabaseTest.kt
deleted file mode 100644
index 49d18b31..00000000
--- a/app/src/androidTest/kotlin/com/pitchedapps/frost/db/DatabaseTest.kt
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright 2019 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.test.ext.junit.runners.AndroidJUnit4
-import org.junit.runner.RunWith
-import org.koin.core.error.NoBeanDefFoundException
-import org.koin.test.KoinTest
-import kotlin.reflect.KClass
-import kotlin.reflect.full.functions
-import kotlin.test.Test
-import kotlin.test.assertTrue
-
-@RunWith(AndroidJUnit4::class)
-class DatabaseTest : KoinTest {
-
- inline fun <reified T : Any> hasKoin() = hasKoin(T::class)
-
- fun <T : Any> hasKoin(klazz: KClass<T>): Boolean =
- try {
- getKoin().get<T>(klazz, qualifier = null, parameters = null)
- true
- } catch (e: NoBeanDefFoundException) {
- false
- }
-
- /**
- * Database and all daos should be loaded as components
- */
- @Test
- fun testKoins() {
- hasKoin<FrostDatabase>()
- val members = FrostDatabase::class.java.kotlin.functions.filter { it.name.endsWith("Dao") }
- .mapNotNull { it.returnType.classifier as? KClass<*> }
- assertTrue(members.isNotEmpty(), "Failed to find dao interfaces")
- val missingKoins = members.filter { !hasKoin(it) }
- assertTrue(missingKoins.isEmpty(), "Missing koins: $missingKoins")
- }
-}