aboutsummaryrefslogtreecommitdiff
path: root/app/src
diff options
context:
space:
mode:
Diffstat (limited to 'app/src')
-rw-r--r--app/src/androidTest/kotlin/com/pitchedapps/frost/FrostTestApp.kt19
-rw-r--r--app/src/androidTest/kotlin/com/pitchedapps/frost/db/DatabaseTest.kt53
-rw-r--r--app/src/main/AndroidManifest.xml9
3 files changed, 6 insertions, 75 deletions
diff --git a/app/src/androidTest/kotlin/com/pitchedapps/frost/FrostTestApp.kt b/app/src/androidTest/kotlin/com/pitchedapps/frost/FrostTestApp.kt
index 2a834cc8..021e9c1f 100644
--- a/app/src/androidTest/kotlin/com/pitchedapps/frost/FrostTestApp.kt
+++ b/app/src/androidTest/kotlin/com/pitchedapps/frost/FrostTestApp.kt
@@ -19,13 +19,7 @@ package com.pitchedapps.frost
import android.app.Application
import android.content.Context
import androidx.test.runner.AndroidJUnitRunner
-import com.pitchedapps.frost.prefs.Prefs
import dagger.hilt.android.testing.HiltTestApplication
-import org.junit.rules.TestRule
-import org.junit.runner.Description
-import org.junit.runners.model.Statement
-import org.koin.core.component.KoinComponent
-import org.koin.core.component.get
class FrostTestRunner : AndroidJUnitRunner() {
override fun newApplication(
@@ -36,16 +30,3 @@ class FrostTestRunner : AndroidJUnitRunner() {
return super.newApplication(cl, HiltTestApplication::class.java.name, context)
}
}
-
-class FrostTestRule : TestRule {
- override fun apply(base: Statement, description: Description): Statement =
- object : Statement(), KoinComponent {
- override fun evaluate() {
-
- // Reset prefs
- get<Prefs>().reset()
-
- base.evaluate()
- }
- }
-}
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")
- }
-}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 62cf57e9..dfdc9706 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -31,7 +31,7 @@
<activity
android:name=".StartActivity"
- android:label="@string/frost_name"
+ android:exported="true"
android:noHistory="true"
android:theme="@style/FrostTheme.Splash">
<intent-filter>
@@ -174,14 +174,17 @@
<receiver
android:name=".services.UpdateReceiver"
- android:enabled="true">
+ android:enabled="true"
+ android:exported="false">
<intent-filter>
<action android:name="android.intent.action.MY_PACKAGE_REPLACED" />
</intent-filter>
</receiver>
<!--Widgets-->
- <receiver android:name=".widgets.NotificationWidget">
+ <receiver
+ android:name=".widgets.NotificationWidget"
+ android:exported="false">
<intent-filter>
<action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
</intent-filter>