Issue#13 Remove BaseUrlProvider

This commit is contained in:
Gergely Hegedus 2022-01-26 22:33:40 +02:00
parent 163bb8cd10
commit 8d33f77cec
4 changed files with 12 additions and 35 deletions

View file

@ -1,8 +1,8 @@
package org.fnives.test.showcase
import android.app.Application
import org.fnives.test.showcase.di.BaseUrlProvider
import org.fnives.test.showcase.di.createAppModules
import org.fnives.test.showcase.model.network.BaseUrl
import org.koin.android.ext.koin.androidContext
import org.koin.core.context.startKoin
@ -10,9 +10,10 @@ class TestShowcaseApplication : Application() {
override fun onCreate() {
super.onCreate()
val baseUrl = BaseUrl(BuildConfig.BASE_URL)
startKoin {
androidContext(this@TestShowcaseApplication)
modules(createAppModules(BaseUrlProvider.get()))
modules(createAppModules(baseUrl))
}
}
}

View file

@ -1,9 +0,0 @@
package org.fnives.test.showcase.di
import org.fnives.test.showcase.BuildConfig
import org.fnives.test.showcase.model.network.BaseUrl
object BaseUrlProvider {
fun get() = BaseUrl(BuildConfig.BASE_URL)
}

View file

@ -1,9 +0,0 @@
package org.fnives.test.showcase.di
import org.fnives.test.showcase.model.network.BaseUrl
import org.fnives.test.showcase.testutils.configuration.SpecificTestConfigurationsFactory
object BaseUrlProvider {
fun get() = BaseUrl(SpecificTestConfigurationsFactory.createServerTypeConfiguration().url)
}

View file

@ -1,29 +1,23 @@
package org.fnives.test.showcase.testutils
import androidx.test.core.app.ApplicationProvider
import org.fnives.test.showcase.TestShowcaseApplication
import org.fnives.test.showcase.di.BaseUrlProvider
import org.fnives.test.showcase.di.createAppModules
import org.junit.rules.TestRule
import org.junit.runner.Description
import org.junit.runners.model.Statement
import org.koin.android.ext.koin.androidContext
import org.koin.core.context.GlobalContext
import org.koin.core.context.startKoin
import org.koin.core.context.stopKoin
class ReloadKoinModulesIfNecessaryTestRule : TestRule {
override fun apply(base: Statement, description: Description): Statement =
object : Statement() {
override fun evaluate() {
if (GlobalContext.getOrNull() == null) {
val application =
ApplicationProvider.getApplicationContext<TestShowcaseApplication>()
startKoin {
androidContext(application)
modules(createAppModules(BaseUrlProvider.get()))
}
}
// TODO
// if (GlobalContext.getOrNull() == null) {
// val application =
// ApplicationProvider.getApplicationContext<TestShowcaseApplication>()
// startKoin {
// androidContext(application)
// modules(createAppModules(BaseUrlProvider.get()))
// }
// }
try {
base.evaluate()
} finally {