diff options
| author | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2024-02-08 16:51:18 +0100 |
|---|---|---|
| committer | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2024-02-19 11:19:12 +0100 |
| commit | 6539f62dcac6289c877563a4d453e48daafc3b8f (patch) | |
| tree | ce76982c8309e7888ae8d190c5bbcadba8e03b59 /android | |
| parent | 67542cba36e7982abb4a035af717a754684d13c2 (diff) | |
| download | mullvadvpn-6539f62dcac6289c877563a4d453e48daafc3b8f.tar.xz mullvadvpn-6539f62dcac6289c877563a4d453e48daafc3b8f.zip | |
Add unit test for system vpn settings available
Diffstat (limited to 'android')
| -rw-r--r-- | android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/VpnSettingsViewModelTest.kt | 16 |
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) + } + } } |
