diff options
| author | Albin <albin@mullvad.net> | 2022-06-14 06:22:57 +0200 |
|---|---|---|
| committer | Albin <albin@mullvad.net> | 2022-06-14 07:44:20 +0200 |
| commit | 85ffa84e998175f9f007b450d0756cde8c7530d0 (patch) | |
| tree | 76010559dd537dbb313c8f6b1d4b2f1f99fe8d50 /android/app/src | |
| parent | 3f2417b4436a744463836a562ced84fc2ff60af8 (diff) | |
| download | mullvadvpn-85ffa84e998175f9f007b450d0756cde8c7530d0.tar.xz mullvadvpn-85ffa84e998175f9f007b450d0756cde8c7530d0.zip | |
Fix failing test due to non-loaded di modules
Diffstat (limited to 'android/app/src')
| -rw-r--r-- | android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/ui/fragments/SplitTunnelingFragmentTest.kt | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/ui/fragments/SplitTunnelingFragmentTest.kt b/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/ui/fragments/SplitTunnelingFragmentTest.kt index a241593c00..a9ee9f8438 100644 --- a/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/ui/fragments/SplitTunnelingFragmentTest.kt +++ b/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/ui/fragments/SplitTunnelingFragmentTest.kt @@ -23,6 +23,7 @@ import kotlinx.coroutines.flow.MutableSharedFlow import kotlinx.coroutines.runBlocking import net.mullvad.mullvadvpn.R import net.mullvad.mullvadvpn.RecyclerViewMatcher.Companion.withRecyclerView +import net.mullvad.mullvadvpn.applist.ApplicationsIconManager import net.mullvad.mullvadvpn.applist.ViewIntent import net.mullvad.mullvadvpn.di.APPS_SCOPE import net.mullvad.mullvadvpn.model.ListItemData @@ -33,8 +34,11 @@ import org.junit.Before import org.junit.Rule import org.junit.Test import org.junit.runner.RunWith +import org.koin.core.context.loadKoinModules +import org.koin.core.context.unloadKoinModules import org.koin.core.qualifier.named import org.koin.core.scope.Scope +import org.koin.dsl.module import org.koin.test.KoinTest import org.koin.test.mock.MockProviderRule import org.koin.test.mock.declareMock @@ -45,7 +49,17 @@ class SplitTunnelingFragmentTest : KoinTest { private val mockedViewModel = mockk<SplitTunnelingViewModel>(relaxUnitFun = true) private val sharedFlow = MutableSharedFlow<List<ListItemData>>() - private val scope: Scope = getKoin().getOrCreateScope(APPS_SCOPE, named(APPS_SCOPE)) + private lateinit var scope: Scope + + private val testModule = module { + scope(named(APPS_SCOPE)) { + scoped { + mockk<ApplicationsIconManager>().apply { + every { getAppIcon(any()) } returns mockk(relaxed = true) + } + } + } + } @get:Rule val mockProvider = MockProviderRule.create { clazz -> @@ -57,6 +71,8 @@ class SplitTunnelingFragmentTest : KoinTest { @Before fun setUp() { + loadKoinModules(testModule) + scope = getKoin().getOrCreateScope(APPS_SCOPE, named(APPS_SCOPE)) scope.declareMock<SplitTunnelingViewModel>() every { mockedViewModel.listItems } returns sharedFlow coEvery { mockedViewModel.processIntent(ViewIntent.ViewIsReady) } just Runs @@ -65,6 +81,7 @@ class SplitTunnelingFragmentTest : KoinTest { @After fun tearDown() { scope.close() + unloadKoinModules(testModule) unmockkAll() } |
