summaryrefslogtreecommitdiffhomepage
path: root/android/app/src/test
diff options
context:
space:
mode:
authorJonatan Rhodin <jonatan.rhodin@mullvad.net>2025-08-08 16:44:24 +0200
committerJonatan Rhodin <jonatan.rhodin@mullvad.net>2025-09-30 14:19:34 +0200
commit2c3f0c3c91b4e750c557f7e89015dd493a7cd4bf (patch)
tree86b8264577274b2503e1209a1f5cdfd486cc16b3 /android/app/src/test
parent7221f569af139c76d0848af2eb064ef3859cb94b (diff)
downloadmullvadvpn-2c3f0c3c91b4e750c557f7e89015dd493a7cd4bf.tar.xz
mullvadvpn-2c3f0c3c91b4e750c557f7e89015dd493a7cd4bf.zip
Improve account data fetching
Add a new account data fetch every time a user enters the connect screen This is limited to at a maximum one fetch every minute. Add a check that the user is still logged in to the same account before updating the account data cache. Change account fetching behavior in the account screen to fetch on every enter instead of init.
Diffstat (limited to 'android/app/src/test')
-rw-r--r--android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AccountViewModelTest.kt4
-rw-r--r--android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AddTimeViewModelTest.kt4
2 files changed, 5 insertions, 3 deletions
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 7a6b756bf5..26fc228729 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,9 +2,11 @@ package net.mullvad.mullvadvpn.viewmodel
import app.cash.turbine.test
import arrow.core.right
+import io.mockk.Runs
import io.mockk.coEvery
import io.mockk.coVerify
import io.mockk.every
+import io.mockk.just
import io.mockk.mockk
import io.mockk.unmockkAll
import java.time.ZonedDateTime
@@ -61,7 +63,7 @@ class AccountViewModelTest {
every { mockAccountRepository.accountData } returns accountExpiryState
every { mockDeviceRepository.deviceState } returns deviceState
coEvery { mockPaymentUseCase.paymentAvailability } returns paymentAvailability
- coEvery { mockAccountRepository.getAccountData() } returns null
+ coEvery { mockAccountRepository.refreshAccountData(any()) } just Runs
viewModel =
AccountViewModel(
diff --git a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AddTimeViewModelTest.kt b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AddTimeViewModelTest.kt
index 7e3f966dbb..d3c95690bf 100644
--- a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AddTimeViewModelTest.kt
+++ b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AddTimeViewModelTest.kt
@@ -56,7 +56,7 @@ class AddTimeViewModelTest {
VerificationResult.NothingToVerify.right()
coEvery { mockPaymentUseCase.queryPaymentAvailability() } just Runs
coEvery { mockPaymentUseCase.resetPurchaseResult() } just Runs
- coEvery { mockAccountRepository.getAccountData() } returns null
+ coEvery { mockAccountRepository.refreshAccountData(any()) } just Runs
viewModel =
AddTimeViewModel(
@@ -151,7 +151,7 @@ class AddTimeViewModelTest {
purchaseResult.emit(purchaseResultData)
// Assert
- coVerify { mockAccountRepository.getAccountData() }
+ coVerify { mockAccountRepository.refreshAccountData(ignoreTimeout = true) }
}
@Test