diff options
| author | Jonatan Rhodin <jonatan.rhodin@mullvad.net> | 2024-07-31 15:18:10 +0200 |
|---|---|---|
| committer | Albin <albin@mullvad.net> | 2024-08-23 09:44:47 +0200 |
| commit | 094821c66afe2ad12c1ffa3a34e93f892b0a95b4 (patch) | |
| tree | 964bae2eb20a8f6914537d1fa02c2f032a1a2646 /android | |
| parent | 9122298a6f0ff6f613eb8786717aeb148f3bf7bc (diff) | |
| download | mullvadvpn-094821c66afe2ad12c1ffa3a34e93f892b0a95b4.tar.xz mullvadvpn-094821c66afe2ad12c1ffa3a34e93f892b0a95b4.zip | |
Fix unit tests
Diffstat (limited to 'android')
10 files changed, 41 insertions, 27 deletions
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModel.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModel.kt index 296437203e..325ee42b43 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModel.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModel.kt @@ -123,15 +123,19 @@ class ConnectViewModel( } fun onDisconnectClick() { - viewModelScope.launch { connectionProxy.disconnect().onLeft { - _uiSideEffect.send(UiSideEffect.ConnectError.Generic) - } } + viewModelScope.launch { + connectionProxy.disconnect().onLeft { + _uiSideEffect.send(UiSideEffect.ConnectError.Generic) + } + } } fun onReconnectClick() { - viewModelScope.launch { connectionProxy.reconnect().onLeft { - _uiSideEffect.send(UiSideEffect.ConnectError.Generic) - } } + viewModelScope.launch { + connectionProxy.reconnect().onLeft { + _uiSideEffect.send(UiSideEffect.ConnectError.Generic) + } + } } fun onConnectClick() { @@ -160,9 +164,11 @@ class ConnectViewModel( } fun onCancelClick() { - viewModelScope.launch { connectionProxy.disconnect().onLeft { - _uiSideEffect.send(UiSideEffect.ConnectError.Generic) - } } + viewModelScope.launch { + connectionProxy.disconnect().onLeft { + _uiSideEffect.send(UiSideEffect.ConnectError.Generic) + } + } } fun onManageAccountClick() { diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/OutOfTimeViewModel.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/OutOfTimeViewModel.kt index 887ee8084a..dfa4e6e3cc 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/OutOfTimeViewModel.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/OutOfTimeViewModel.kt @@ -72,9 +72,9 @@ class OutOfTimeViewModel( } fun onDisconnectClick() { - viewModelScope.launch { connectionProxy.disconnect().onLeft { - _uiSideEffect.send(UiSideEffect.GenericError) - } } + viewModelScope.launch { + connectionProxy.disconnect().onLeft { _uiSideEffect.send(UiSideEffect.GenericError) } + } } private fun verifyPurchases() { diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/WelcomeViewModel.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/WelcomeViewModel.kt index 89593fb583..e532045ae2 100644 --- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/WelcomeViewModel.kt +++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/WelcomeViewModel.kt @@ -78,9 +78,9 @@ class WelcomeViewModel( } fun onDisconnectClick() { - viewModelScope.launch { connectionProxy.disconnect().onLeft { - _uiSideEffect.send(UiSideEffect.GenericError) - } } + viewModelScope.launch { + connectionProxy.disconnect().onLeft { _uiSideEffect.send(UiSideEffect.GenericError) } + } } private fun verifyPurchases() { diff --git a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AccountViewModelTest.kt b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AccountViewModelTest.kt index 706d8031e7..d239e01331 100644 --- a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AccountViewModelTest.kt +++ b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AccountViewModelTest.kt @@ -2,6 +2,7 @@ package net.mullvad.mullvadvpn.viewmodel import android.app.Activity import app.cash.turbine.test +import arrow.core.right import io.mockk.coEvery import io.mockk.coVerify import io.mockk.every @@ -93,6 +94,9 @@ class AccountViewModelTest { @Test fun `onLogoutClick should invoke logout on AccountRepository`() { + // Arrange + coEvery { mockAccountRepository.logout() } returns Unit.right() + // Act viewModel.onLogoutClick() diff --git a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModelTest.kt b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModelTest.kt index e6803d4e08..50a16d1432 100644 --- a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModelTest.kt +++ b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/ConnectViewModelTest.kt @@ -234,7 +234,7 @@ class ConnectViewModelTest { @Test fun `onDisconnectClick should invoke disconnect on ConnectionProxy`() = runTest { // Arrange - coEvery { mockConnectionProxy.disconnect() } returns true + coEvery { mockConnectionProxy.disconnect() } returns true.right() // Act viewModel.onDisconnectClick() @@ -246,7 +246,7 @@ class ConnectViewModelTest { @Test fun `onReconnectClick should invoke reconnect on ConnectionProxy`() = runTest { // Arrange - coEvery { mockConnectionProxy.reconnect() } returns true + coEvery { mockConnectionProxy.reconnect() } returns true.right() // Act viewModel.onReconnectClick() @@ -270,7 +270,7 @@ class ConnectViewModelTest { @Test fun `onCancelClick should invoke disconnect on ConnectionProxy`() = runTest { // Arrange - coEvery { mockConnectionProxy.disconnect() } returns true + coEvery { mockConnectionProxy.disconnect() } returns true.right() // Act viewModel.onCancelClick() diff --git a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/DeviceRevokedViewModelTest.kt b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/DeviceRevokedViewModelTest.kt index b63f59b302..51ea31540c 100644 --- a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/DeviceRevokedViewModelTest.kt +++ b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/DeviceRevokedViewModelTest.kt @@ -1,14 +1,13 @@ package net.mullvad.mullvadvpn.viewmodel import app.cash.turbine.test +import arrow.core.right import io.mockk.MockKAnnotations -import io.mockk.Runs import io.mockk.coEvery import io.mockk.coVerify import io.mockk.coVerifyOrder import io.mockk.every import io.mockk.impl.annotations.MockK -import io.mockk.just import io.mockk.mockk import io.mockk.unmockkAll import kotlinx.coroutines.flow.MutableSharedFlow @@ -70,8 +69,8 @@ class DeviceRevokedViewModelTest { @Test fun `onGoToLoginClicked should invoke logout on AccountRepository`() { // Arrange - coEvery { mockConnectionProxy.disconnect() } returns true - coEvery { mockedAccountRepository.logout() } just Runs + coEvery { mockConnectionProxy.disconnect() } returns true.right() + coEvery { mockedAccountRepository.logout() } returns Unit.right() // Act viewModel.onGoToLoginClicked() @@ -83,8 +82,8 @@ class DeviceRevokedViewModelTest { @Test fun `onGoToLoginClicked should invoke disconnect before logout when connected`() { // Arrange - coEvery { mockConnectionProxy.disconnect() } returns true - coEvery { mockedAccountRepository.logout() } just Runs + coEvery { mockConnectionProxy.disconnect() } returns true.right() + coEvery { mockedAccountRepository.logout() } returns Unit.right() // Act viewModel.onGoToLoginClicked() diff --git a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/LoginViewModelTest.kt b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/LoginViewModelTest.kt index 33eb3bdc3c..a9905e9506 100644 --- a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/LoginViewModelTest.kt +++ b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/LoginViewModelTest.kt @@ -208,6 +208,9 @@ class LoginViewModelTest { @Test fun `clearAccountHistory should invoke clearAccountHistory on AccountRepository`() = runTest { + // Arrange + coEvery { mockedAccountRepository.clearAccountHistory() } returns Unit.right() + // Act, Assert loginViewModel.clearAccountHistory() coVerify { mockedAccountRepository.clearAccountHistory() } diff --git a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/OutOfTimeViewModelTest.kt b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/OutOfTimeViewModelTest.kt index bd26effe82..886cb58fda 100644 --- a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/OutOfTimeViewModelTest.kt +++ b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/OutOfTimeViewModelTest.kt @@ -2,6 +2,7 @@ package net.mullvad.mullvadvpn.viewmodel import androidx.lifecycle.viewModelScope import app.cash.turbine.test +import arrow.core.right import io.mockk.coEvery import io.mockk.coVerify import io.mockk.every @@ -146,7 +147,7 @@ class OutOfTimeViewModelTest { @Test fun `onDisconnectClick should invoke disconnect on ConnectionProxy`() = runTest { // Arrange - coEvery { mockConnectionProxy.disconnect() } returns true + coEvery { mockConnectionProxy.disconnect() } returns true.right() // Act viewModel.onDisconnectClick() diff --git a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/WelcomeViewModelTest.kt b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/WelcomeViewModelTest.kt index 1c7a7d0e3b..9ef1455bb7 100644 --- a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/WelcomeViewModelTest.kt +++ b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/WelcomeViewModelTest.kt @@ -2,6 +2,7 @@ package net.mullvad.mullvadvpn.viewmodel import androidx.lifecycle.viewModelScope import app.cash.turbine.test +import arrow.core.right import io.mockk.coEvery import io.mockk.coVerify import io.mockk.every @@ -217,7 +218,7 @@ class WelcomeViewModelTest { @Test fun `when on disconnect click is called should call connection proxy disconnect`() = runTest { // Arrange - coEvery { mockConnectionProxy.disconnect() } returns true + coEvery { mockConnectionProxy.disconnect() } returns true.right() // Act viewModel.onDisconnectClick() diff --git a/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt b/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt index 1ea2e8a251..b377adff38 100644 --- a/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt +++ b/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt @@ -78,8 +78,8 @@ import net.mullvad.mullvadvpn.lib.model.GetDeviceListError import net.mullvad.mullvadvpn.lib.model.GetDeviceStateError import net.mullvad.mullvadvpn.lib.model.GetVersionInfoError import net.mullvad.mullvadvpn.lib.model.LoginAccountError -import net.mullvad.mullvadvpn.lib.model.NameAlreadyExists import net.mullvad.mullvadvpn.lib.model.LogoutAccountError +import net.mullvad.mullvadvpn.lib.model.NameAlreadyExists import net.mullvad.mullvadvpn.lib.model.NewAccessMethodSetting import net.mullvad.mullvadvpn.lib.model.ObfuscationSettings import net.mullvad.mullvadvpn.lib.model.Ownership as ModelOwnership |
