Add basetest

Remove duplicate FakeLocalProvider.
There are other duplicates, but this proves the concept.
This commit is contained in:
Paul Klauser
2024-06-04 17:55:19 -04:00
parent deb10a2b14
commit 437e04193c
12 changed files with 25 additions and 12 deletions

View File

@ -102,6 +102,7 @@ dependencies {
testImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutines_version"
testImplementation "androidx.arch.core:core-testing:2.2.0"
testImplementation(libs.turbine)
testImplementation(project(":basetest"))
androidTestImplementation "androidx.room:room-testing:2.2.5"
androidTestImplementation 'androidx.test:runner:1.4.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
@ -113,6 +114,7 @@ dependencies {
androidTestImplementation 'androidx.test:rules:1.4.0'
androidTestImplementation "androidx.arch.core:core-testing:2.2.0"
androidTestImplementation(libs.turbine)
androidTestImplementation(project(":basetest"))
// Testing Navigation
androidTestImplementation "androidx.navigation:navigation-testing:2.3.1"

View File

@ -3,6 +3,7 @@ package com.willowtree.vocable
import androidx.room.Room
import androidx.test.core.app.ApplicationProvider
import androidx.test.ext.junit.runners.AndroidJUnit4
import com.willowtree.vocable.basetest.utils.FakeLocaleProvider
import com.willowtree.vocable.presets.Category
import com.willowtree.vocable.presets.PresetCategories
import com.willowtree.vocable.presets.PresetPhrase
@ -13,8 +14,8 @@ import com.willowtree.vocable.room.RoomStoredCategoriesRepository
import com.willowtree.vocable.room.RoomStoredPhrasesRepository
import com.willowtree.vocable.room.VocableDatabase
import com.willowtree.vocable.utility.FakeDateProvider
import com.willowtree.vocable.utility.VocableKoinTestRule
import com.willowtree.vocable.utility.StubLegacyCategoriesAndPhrasesRepository
import com.willowtree.vocable.utility.VocableKoinTestRule
import com.willowtree.vocable.utils.locale.LocalesWithText
import kotlinx.coroutines.flow.first
import kotlinx.coroutines.test.runTest

View File

@ -6,9 +6,9 @@ import androidx.test.core.app.ApplicationProvider
import androidx.test.ext.junit.runners.AndroidJUnit4
import com.willowtree.vocable.CategoriesUseCase
import com.willowtree.vocable.FakeUUIDProvider
import com.willowtree.vocable.FakeLocaleProvider
import com.willowtree.vocable.MainDispatcherRule
import com.willowtree.vocable.PhrasesUseCase
import com.willowtree.vocable.basetest.utils.FakeLocaleProvider
import com.willowtree.vocable.presets.Category
import com.willowtree.vocable.presets.PresetCategories
import com.willowtree.vocable.presets.RoomPresetCategoriesRepository

View File

@ -3,8 +3,8 @@ package com.willowtree.vocable.settings
import androidx.arch.core.executor.testing.InstantTaskExecutorRule
import com.willowtree.vocable.FakeCategoriesUseCase
import com.willowtree.vocable.MainDispatcherRule
import com.willowtree.vocable.basetest.utils.FakeLocaleProvider
import com.willowtree.vocable.presets.Category
import com.willowtree.vocable.utils.FakeLocaleProvider
import com.willowtree.vocable.utils.FakeLocalizedResourceUtility
import com.willowtree.vocable.utils.locale.LocalesWithText
import kotlinx.coroutines.flow.first

View File

@ -1,7 +0,0 @@
package com.willowtree.vocable.utils
import com.willowtree.vocable.utils.locale.LocaleProvider
class FakeLocaleProvider : LocaleProvider {
override fun getDefaultLocaleString(): String = "en_US"
}

1
basetest/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
/build

11
basetest/build.gradle.kts Normal file
View File

@ -0,0 +1,11 @@
plugins {
id("vocable.library")
}
android {
namespace = "com.willowtree.vocable.basetest"
}
dependencies {
implementation(project(":app"))
}

View File

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest/>

View File

@ -1,4 +1,4 @@
package com.willowtree.vocable
package com.willowtree.vocable.basetest.utils
import com.willowtree.vocable.utils.locale.LocaleProvider

View File

@ -5,4 +5,5 @@ plugins {
alias(libs.plugins.safe.args) apply false
alias(libs.plugins.google.services) apply false
alias(libs.plugins.crashlytics) apply false
alias(libs.plugins.android.library) apply false
}

View File

@ -18,4 +18,5 @@ androidApplication = { id = "com.android.application", version.ref = "agp" }
kotlinAndroid = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
safe-args = { id = "androidx.navigation.safeargs.kotlin", version.ref = "safe-args" }
google-services = { id = "com.google.gms.google-services", version.ref = "google-services" }
crashlytics = { id = "com.google.firebase.crashlytics", version.ref = "crashlytics" }
crashlytics = { id = "com.google.firebase.crashlytics", version.ref = "crashlytics" }
android-library = { id = "com.android.library", version.ref = "agp" }

View File

@ -19,3 +19,4 @@ dependencyResolutionManagement {
rootProject.name = "vocable-android"
include(":app")
include(":basetest")