mirror of
https://github.com/AllanWang/Frost-for-Facebook.git
synced 2024-11-08 12:02:33 +01:00
Version bumps, koin removal, android 12 target
This commit is contained in:
parent
b5a5ad755e
commit
ab7447c811
@ -274,9 +274,6 @@ dependencies {
|
||||
|
||||
implementation "androidx.biometric:biometric:${Versions.andxBiometric}"
|
||||
|
||||
testImplementation kau.Dependencies.koinTest
|
||||
androidTestImplementation kau.Dependencies.koinTest
|
||||
|
||||
implementation kau.Dependencies.hilt
|
||||
kapt kau.Dependencies.hiltCompiler
|
||||
testImplementation kau.Dependencies.hiltTest
|
||||
|
@ -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()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -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")
|
||||
}
|
||||
}
|
@ -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>
|
||||
|
@ -1,6 +1,6 @@
|
||||
object Versions {
|
||||
|
||||
const val targetSdk = 30
|
||||
const val targetSdk = 31
|
||||
|
||||
// https://developer.android.com/jetpack/androidx/releases/biometric
|
||||
const val andxBiometric = "1.1.0"
|
||||
@ -12,15 +12,15 @@ object Versions {
|
||||
const val exoMedia = "4.3.0"
|
||||
|
||||
// https://github.com/jhy/jsoup/releases
|
||||
const val jsoup = "1.14.2"
|
||||
const val jsoup = "1.14.3"
|
||||
// https://square.github.io/okhttp/changelog/
|
||||
const val okhttp = "4.9.1"
|
||||
// https://developer.android.com/jetpack/androidx/releases/room
|
||||
const val room = "2.3.0"
|
||||
// http://robolectric.org/getting-started/
|
||||
const val roboelectric = "4.4"
|
||||
const val roboelectric = "4.6"
|
||||
// https://github.com/davemorrissey/subsampling-scale-image-view#quick-start
|
||||
const val scaleImageView = "3.10.0"
|
||||
// https://github.com/node-gradle/gradle-node-plugin/releases
|
||||
const val nodeGradle = "3.0.1"
|
||||
const val nodeGradle = "3.1.1"
|
||||
}
|
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
@ -1,5 +1,5 @@
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.1-all.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
|
@ -3,8 +3,7 @@ apply plugin: "com.diffplug.spotless"
|
||||
spotless {
|
||||
kotlin {
|
||||
target "**/*.kt"
|
||||
// https://github.com/pinterest/ktlint/releases
|
||||
ktlint("0.41.0").userData(["disabled_rules": "no-wildcard-imports"])
|
||||
ktlint(kau.Versions.ktlint).userData(["disabled_rules": "no-wildcard-imports"])
|
||||
licenseHeaderFile '../spotless.license.kt'
|
||||
trimTrailingWhitespace()
|
||||
endWithNewline()
|
||||
|
Loading…
Reference in New Issue
Block a user