summaryrefslogtreecommitdiffhomepage
path: root/android/app/src
diff options
context:
space:
mode:
authorJonatan Rhodin <jonatan.rhodin@mullvad.net>2024-02-08 16:51:18 +0100
committerJonatan Rhodin <jonatan.rhodin@mullvad.net>2024-02-19 11:19:12 +0100
commit6539f62dcac6289c877563a4d453e48daafc3b8f (patch)
treece76982c8309e7888ae8d190c5bbcadba8e03b59 /android/app/src
parent67542cba36e7982abb4a035af717a754684d13c2 (diff)
downloadmullvadvpn-6539f62dcac6289c877563a4d453e48daafc3b8f.tar.xz
mullvadvpn-6539f62dcac6289c877563a4d453e48daafc3b8f.zip
Add unit test for system vpn settings available
Diffstat (limited to 'android/app/src')
-rw-r--r--android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModelTest.kt16
1 files changed, 16 insertions, 0 deletions
diff --git a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModelTest.kt b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModelTest.kt
index 51bbe3057c..5d44dca487 100644
--- a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModelTest.kt
+++ b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModelTest.kt
@@ -27,6 +27,7 @@ import net.mullvad.mullvadvpn.model.WireguardTunnelOptions
import net.mullvad.mullvadvpn.repository.SettingsRepository
import net.mullvad.mullvadvpn.usecase.PortRangeUseCase
import net.mullvad.mullvadvpn.usecase.RelayListUseCase
+import net.mullvad.mullvadvpn.usecase.SystemVpnSettingsUseCase
import org.junit.jupiter.api.AfterEach
import org.junit.jupiter.api.BeforeEach
import org.junit.jupiter.api.Test
@@ -39,6 +40,7 @@ class VpnSettingsViewModelTest {
private val mockResources: Resources = mockk()
private val mockPortRangeUseCase: PortRangeUseCase = mockk()
private val mockRelayListUseCase: RelayListUseCase = mockk()
+ private val mockSystemVpnSettingsUseCase: SystemVpnSettingsUseCase = mockk(relaxed = true)
private val mockSettingsUpdate = MutableStateFlow<Settings?>(null)
private val portRangeFlow = MutableStateFlow(emptyList<PortRange>())
@@ -56,6 +58,7 @@ class VpnSettingsViewModelTest {
resources = mockResources,
portRangeUseCase = mockPortRangeUseCase,
relayListUseCase = mockRelayListUseCase,
+ systemVpnSettingsUseCase = mockSystemVpnSettingsUseCase,
dispatcher = UnconfinedTestDispatcher()
)
}
@@ -146,4 +149,17 @@ class VpnSettingsViewModelTest {
mockRelayListUseCase.updateSelectedWireguardConstraints(wireguardConstraints)
}
}
+
+ @Test
+ fun `given useCase systemVpnSettingsAvailable is true then uiState should be systemVpnSettingsAvailable=true`() =
+ runTest {
+ val systemVpnSettingsAvailable = true
+
+ every { mockSystemVpnSettingsUseCase.systemVpnSettingsAvailable() } returns
+ systemVpnSettingsAvailable
+
+ viewModel.uiState.test {
+ assertEquals(systemVpnSettingsAvailable, awaitItem().systemVpnSettingsAvailable)
+ }
+ }
}