summaryrefslogtreecommitdiffhomepage
path: root/android/app
diff options
context:
space:
mode:
authorAlbin <albin@mullvad.net>2024-06-07 18:51:56 +0200
committerAlbin <albin@mullvad.net>2024-06-10 10:36:18 +0200
commitf937ea54f41f947de8ddd606f6071f191fb1cdfb (patch)
treeab5be555271de269a199dcfae85d6050610415b3 /android/app
parent561c4d8262fde4d70c13fb1de0642bee521fbbe3 (diff)
downloadmullvadvpn-f937ea54f41f947de8ddd606f6071f191fb1cdfb.tar.xz
mullvadvpn-f937ea54f41f947de8ddd606f6071f191fb1cdfb.zip
Unify account number naming
Use variations of "account number" rather than "account token" throughout the kotlin code base.
Diffstat (limited to 'android/app')
-rw-r--r--android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/WelcomeScreenTest.kt4
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/DeviceListScreen.kt8
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/LoginScreen.kt24
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/WelcomeScreen.kt4
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/LoginUiState.kt4
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/WelcomeUiState.kt4
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/util/AccountNumberVisualTransformation.kt (renamed from android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/util/AccountTokenVisualTransformation.kt)12
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/util/VoucherVisualTransformation.kt6
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/DeviceListViewModel.kt4
-rw-r--r--android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/LoginViewModel.kt16
-rw-r--r--android/app/src/test/kotlin/net/mullvad/mullvadvpn/usecase/NewDeviceUseNotificationCaseTest.kt4
-rw-r--r--android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/AccountViewModelTest.kt8
-rw-r--r--android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/LoginViewModelTest.kt24
-rw-r--r--android/app/src/test/kotlin/net/mullvad/mullvadvpn/viewmodel/WelcomeViewModelTest.kt6
14 files changed, 64 insertions, 64 deletions
diff --git a/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/WelcomeScreenTest.kt b/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/WelcomeScreenTest.kt
index d60a7b100b..41c2c73d6a 100644
--- a/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/WelcomeScreenTest.kt
+++ b/android/app/src/androidTest/kotlin/net/mullvad/mullvadvpn/compose/screen/WelcomeScreenTest.kt
@@ -13,7 +13,7 @@ import net.mullvad.mullvadvpn.compose.setContentWithTheme
import net.mullvad.mullvadvpn.compose.state.PaymentState
import net.mullvad.mullvadvpn.compose.state.WelcomeUiState
import net.mullvad.mullvadvpn.compose.test.PLAY_PAYMENT_INFO_ICON_TEST_TAG
-import net.mullvad.mullvadvpn.lib.model.AccountToken
+import net.mullvad.mullvadvpn.lib.model.AccountNumber
import net.mullvad.mullvadvpn.lib.payment.model.PaymentProduct
import net.mullvad.mullvadvpn.lib.payment.model.PaymentStatus
import net.mullvad.mullvadvpn.lib.payment.model.ProductId
@@ -83,7 +83,7 @@ class WelcomeScreenTest {
fun testShowAccountNumber() =
composeExtension.use {
// Arrange
- val rawAccountNumber = AccountToken("1111222233334444")
+ val rawAccountNumber = AccountNumber("1111222233334444")
val expectedAccountNumber = "1111 2222 3333 4444"
setContentWithTheme {
WelcomeScreen(
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/DeviceListScreen.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/DeviceListScreen.kt
index e781c12de9..64414b38c0 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/DeviceListScreen.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/DeviceListScreen.kt
@@ -54,7 +54,7 @@ import net.mullvad.mullvadvpn.compose.state.DeviceListUiState
import net.mullvad.mullvadvpn.compose.transitions.DefaultTransition
import net.mullvad.mullvadvpn.compose.util.CollectSideEffectWithLifecycle
import net.mullvad.mullvadvpn.compose.util.showSnackbarImmediately
-import net.mullvad.mullvadvpn.lib.model.AccountToken
+import net.mullvad.mullvadvpn.lib.model.AccountNumber
import net.mullvad.mullvadvpn.lib.model.Device
import net.mullvad.mullvadvpn.lib.model.DeviceId
import net.mullvad.mullvadvpn.lib.model.GetDeviceListError
@@ -105,13 +105,13 @@ private fun PreviewDeviceListError() {
@Composable
fun DeviceList(
navigator: DestinationsNavigator,
- accountToken: String,
+ accountNumber: String,
confirmRemoveResultRecipient:
ResultRecipient<RemoveDeviceConfirmationDialogDestination, DeviceId>
) {
val viewModel =
koinViewModel<DeviceListViewModel>(
- parameters = { parametersOf(AccountToken(accountToken)) }
+ parameters = { parametersOf(AccountNumber(accountNumber)) }
)
val state by viewModel.uiState.collectAsStateWithLifecycle()
@@ -148,7 +148,7 @@ fun DeviceList(
snackbarHostState = snackbarHostState,
onBackClick = navigator::navigateUp,
onContinueWithLogin = {
- navigator.navigate(LoginDestination(accountToken)) {
+ navigator.navigate(LoginDestination(accountNumber)) {
launchSingleTop = true
popUpTo(LoginDestination) { inclusive = true }
}
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/LoginScreen.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/LoginScreen.kt
index f4f617ec93..9e5515649d 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/LoginScreen.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/LoginScreen.kt
@@ -76,7 +76,7 @@ import net.mullvad.mullvadvpn.compose.test.LOGIN_TITLE_TEST_TAG
import net.mullvad.mullvadvpn.compose.textfield.mullvadWhiteTextFieldColors
import net.mullvad.mullvadvpn.compose.transitions.LoginTransition
import net.mullvad.mullvadvpn.compose.util.CollectSideEffectWithLifecycle
-import net.mullvad.mullvadvpn.compose.util.accountTokenVisualTransformation
+import net.mullvad.mullvadvpn.compose.util.accountNumberVisualTransformation
import net.mullvad.mullvadvpn.lib.theme.AppTheme
import net.mullvad.mullvadvpn.lib.theme.Dimens
import net.mullvad.mullvadvpn.lib.theme.color.AlphaTopBar
@@ -118,16 +118,16 @@ private fun PreviewLoginSuccess() {
@Composable
fun Login(
navigator: DestinationsNavigator,
- accountToken: String? = null,
+ accountNumber: String? = null,
vm: LoginViewModel = koinViewModel()
) {
val state by vm.uiState.collectAsStateWithLifecycle()
// Login with argument, e.g when user comes from Too Many Devices screen
- LaunchedEffect(accountToken) {
- if (accountToken != null) {
- vm.onAccountNumberChange(accountToken)
- vm.login(accountToken)
+ LaunchedEffect(accountNumber) {
+ if (accountNumber != null) {
+ vm.onAccountNumberChange(accountNumber)
+ vm.login(accountNumber)
}
}
@@ -144,7 +144,7 @@ fun Login(
popUpTo(NavGraphs.root) { inclusive = true }
}
is LoginUiSideEffect.TooManyDevices ->
- navigator.navigate(DeviceListDestination(it.accountToken.value)) {
+ navigator.navigate(DeviceListDestination(it.accountNumber.value)) {
launchSingleTop = true
}
LoginUiSideEffect.NavigateToOutOfTime ->
@@ -291,7 +291,7 @@ private fun ColumnScope.LoginInput(
onValueChange = onAccountNumberChange,
singleLine = true,
maxLines = 1,
- visualTransformation = accountTokenVisualTransformation(),
+ visualTransformation = accountNumberVisualTransformation(),
enabled = state.loginState is Idle,
colors = mullvadWhiteTextFieldColors(),
isError = state.loginState.isError(),
@@ -299,13 +299,13 @@ private fun ColumnScope.LoginInput(
AnimatedVisibility(visible = state.lastUsedAccount != null && expandedDropdown) {
val token = state.lastUsedAccount?.value.orEmpty()
- val accountTransformation = remember { accountTokenVisualTransformation() }
+ val accountTransformation = remember { accountNumberVisualTransformation() }
val transformedText =
remember(token) { accountTransformation.filter(AnnotatedString(token)).text }
AccountDropDownItem(
modifier = Modifier.onFocusChanged { ddFocusState = it },
- accountToken = transformedText.toString(),
+ accountNumber = transformedText.toString(),
onClick = {
state.lastUsedAccount?.let {
onAccountNumberChange(it.value)
@@ -379,7 +379,7 @@ private fun LoginState.supportingText(): String? {
@Composable
private fun AccountDropDownItem(
modifier: Modifier = Modifier,
- accountToken: String,
+ accountNumber: String,
onClick: () -> Unit,
onDeleteClick: () -> Unit
) {
@@ -404,7 +404,7 @@ private fun AccountDropDownItem(
.padding(horizontal = Dimens.mediumPadding, vertical = Dimens.smallPadding),
contentAlignment = Alignment.CenterStart
) {
- Text(text = accountToken, overflow = TextOverflow.Clip)
+ Text(text = accountNumber, overflow = TextOverflow.Clip)
}
IconButton(onClick = onDeleteClick) {
Icon(
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/WelcomeScreen.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/WelcomeScreen.kt
index 29bc0c3306..342f115943 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/WelcomeScreen.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/screen/WelcomeScreen.kt
@@ -54,7 +54,7 @@ import net.mullvad.mullvadvpn.compose.transitions.HomeTransition
import net.mullvad.mullvadvpn.compose.util.CollectSideEffectWithLifecycle
import net.mullvad.mullvadvpn.compose.util.createCopyToClipboardHandle
import net.mullvad.mullvadvpn.lib.common.util.groupWithSpaces
-import net.mullvad.mullvadvpn.lib.model.AccountToken
+import net.mullvad.mullvadvpn.lib.model.AccountNumber
import net.mullvad.mullvadvpn.lib.payment.model.PaymentProduct
import net.mullvad.mullvadvpn.lib.payment.model.ProductId
import net.mullvad.mullvadvpn.lib.payment.model.ProductPrice
@@ -72,7 +72,7 @@ private fun PreviewWelcomeScreen() {
WelcomeScreen(
state =
WelcomeUiState(
- accountNumber = AccountToken("4444555566667777"),
+ accountNumber = AccountNumber("4444555566667777"),
deviceName = "Happy Mole",
billingPaymentState =
PaymentState.PaymentAvailable(
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/LoginUiState.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/LoginUiState.kt
index 0babd243da..6b2f0e7d04 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/LoginUiState.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/LoginUiState.kt
@@ -1,12 +1,12 @@
package net.mullvad.mullvadvpn.compose.state
-import net.mullvad.mullvadvpn.lib.model.AccountToken
+import net.mullvad.mullvadvpn.lib.model.AccountNumber
const val MIN_ACCOUNT_LOGIN_LENGTH = 8
data class LoginUiState(
val accountNumberInput: String = "",
- val lastUsedAccount: AccountToken? = null,
+ val lastUsedAccount: AccountNumber? = null,
val loginState: LoginState = LoginState.Idle(null)
) {
val loginButtonEnabled =
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/WelcomeUiState.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/WelcomeUiState.kt
index 02e8217172..dd9a57626c 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/WelcomeUiState.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/state/WelcomeUiState.kt
@@ -1,11 +1,11 @@
package net.mullvad.mullvadvpn.compose.state
-import net.mullvad.mullvadvpn.lib.model.AccountToken
+import net.mullvad.mullvadvpn.lib.model.AccountNumber
import net.mullvad.mullvadvpn.lib.model.TunnelState
data class WelcomeUiState(
val tunnelState: TunnelState = TunnelState.Disconnected(),
- val accountNumber: AccountToken? = null,
+ val accountNumber: AccountNumber? = null,
val deviceName: String? = null,
val showSitePayment: Boolean = false,
val billingPaymentState: PaymentState? = null,
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/util/AccountTokenVisualTransformation.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/util/AccountNumberVisualTransformation.kt
index 3160ff9ac1..56426af6f4 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/util/AccountTokenVisualTransformation.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/util/AccountNumberVisualTransformation.kt
@@ -5,22 +5,22 @@ import androidx.compose.ui.text.input.OffsetMapping
import androidx.compose.ui.text.input.TransformedText
import androidx.compose.ui.text.input.VisualTransformation
-const val ACCOUNT_TOKEN_SEPARATOR = " "
-const val ACCOUNT_TOKEN_CHUNK_SIZE = 4
+const val ACCOUNT_NUMBER_SEPARATOR = " "
+const val ACCOUNT_NUMBER_CHUNK_SIZE = 4
-fun accountTokenVisualTransformation() = VisualTransformation {
+fun accountNumberVisualTransformation() = VisualTransformation {
val transformedString =
- it.chunked(ACCOUNT_TOKEN_CHUNK_SIZE).joinToString(ACCOUNT_TOKEN_SEPARATOR)
+ it.chunked(ACCOUNT_NUMBER_CHUNK_SIZE).joinToString(ACCOUNT_NUMBER_SEPARATOR)
val transformedAnnotatedString = AnnotatedString(transformedString)
TransformedText(
transformedAnnotatedString,
object : OffsetMapping {
override fun originalToTransformed(offset: Int): Int =
- offset + (offset - 1) / ACCOUNT_TOKEN_CHUNK_SIZE
+ offset + (offset - 1) / ACCOUNT_NUMBER_CHUNK_SIZE
override fun transformedToOriginal(offset: Int): Int =
- offset - (offset - 1) / (ACCOUNT_TOKEN_CHUNK_SIZE + 1)
+ offset - (offset - 1) / (ACCOUNT_NUMBER_CHUNK_SIZE + 1)
}
)
}
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/util/VoucherVisualTransformation.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/util/VoucherVisualTransformation.kt
index c4d5eec0a1..2c97f20314 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/util/VoucherVisualTransformation.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/compose/util/VoucherVisualTransformation.kt
@@ -23,16 +23,16 @@ fun vouchersVisualTransformation() = VisualTransformation { text ->
AnnotatedString(out),
object : OffsetMapping {
override fun originalToTransformed(offset: Int): Int {
- val res = offset + offset / ACCOUNT_TOKEN_CHUNK_SIZE
+ val res = offset + offset / ACCOUNT_NUMBER_CHUNK_SIZE
// Limit max input to 19 characters (16 voucher - 3 dividers)
return min(
res,
- MAX_VOUCHER_LENGTH + MAX_VOUCHER_LENGTH / ACCOUNT_TOKEN_CHUNK_SIZE - 1
+ MAX_VOUCHER_LENGTH + MAX_VOUCHER_LENGTH / ACCOUNT_NUMBER_CHUNK_SIZE - 1
)
}
override fun transformedToOriginal(offset: Int): Int =
- offset - offset / (ACCOUNT_TOKEN_CHUNK_SIZE + 1)
+ offset - offset / (ACCOUNT_NUMBER_CHUNK_SIZE + 1)
}
)
}
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/DeviceListViewModel.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/DeviceListViewModel.kt
index d2c8780606..b1c5736988 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/DeviceListViewModel.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/DeviceListViewModel.kt
@@ -17,7 +17,7 @@ import kotlinx.coroutines.flow.update
import kotlinx.coroutines.launch
import net.mullvad.mullvadvpn.compose.state.DeviceItemUiState
import net.mullvad.mullvadvpn.compose.state.DeviceListUiState
-import net.mullvad.mullvadvpn.lib.model.AccountToken
+import net.mullvad.mullvadvpn.lib.model.AccountNumber
import net.mullvad.mullvadvpn.lib.model.Device
import net.mullvad.mullvadvpn.lib.model.DeviceId
import net.mullvad.mullvadvpn.lib.model.GetDeviceListError
@@ -25,7 +25,7 @@ import net.mullvad.mullvadvpn.lib.shared.DeviceRepository
class DeviceListViewModel(
private val deviceRepository: DeviceRepository,
- private val token: AccountToken,
+ private val token: AccountNumber,
private val dispatcher: CoroutineDispatcher = Dispatchers.Default,
) : ViewModel() {
private val loadingDevices = MutableStateFlow<Set<DeviceId>>(emptySet())
diff --git a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/LoginViewModel.kt b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/LoginViewModel.kt
index e568021177..fc2f5e86f9 100644
--- a/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/LoginViewModel.kt
+++ b/android/app/src/main/kotlin/net/mullvad/mullvadvpn/viewmodel/LoginViewModel.kt
@@ -24,7 +24,7 @@ import net.mullvad.mullvadvpn.compose.state.LoginState.Idle
import net.mullvad.mullvadvpn.compose.state.LoginState.Loading
import net.mullvad.mullvadvpn.compose.state.LoginState.Success
import net.mullvad.mullvadvpn.compose.state.LoginUiState
-import net.mullvad.mullvadvpn.lib.model.AccountToken
+import net.mullvad.mullvadvpn.lib.model.AccountNumber
import net.mullvad.mullvadvpn.lib.model.LoginAccountError
import net.mullvad.mullvadvpn.lib.shared.AccountRepository
import net.mullvad.mullvadvpn.usecase.ConnectivityUseCase
@@ -40,7 +40,7 @@ sealed interface LoginUiSideEffect {
data object NavigateToOutOfTime : LoginUiSideEffect
- data class TooManyDevices(val accountToken: AccountToken) : LoginUiSideEffect
+ data class TooManyDevices(val accountNumber: AccountNumber) : LoginUiSideEffect
}
class LoginViewModel(
@@ -55,15 +55,15 @@ class LoginViewModel(
private val _uiSideEffect = Channel<LoginUiSideEffect>()
val uiSideEffect = _uiSideEffect.receiveAsFlow()
- private val _mutableAccountHistory: MutableStateFlow<AccountToken?> = MutableStateFlow(null)
+ private val _mutableAccountHistory: MutableStateFlow<AccountNumber?> = MutableStateFlow(null)
private val _uiState =
combine(
_loginInput,
_mutableAccountHistory,
_loginState,
- ) { loginInput, historyAccountToken, loginState ->
- LoginUiState(loginInput, historyAccountToken, loginState)
+ ) { loginInput, historyAccountNumber, loginState ->
+ LoginUiState(loginInput, historyAccountNumber, loginState)
}
val uiState: StateFlow<LoginUiState> =
@@ -94,7 +94,7 @@ class LoginViewModel(
}
}
- fun login(accountToken: String) {
+ fun login(accountNumber: String) {
if (!isInternetAvailable()) {
_loginState.value = Idle(LoginError.NoInternetConnection)
return
@@ -103,7 +103,7 @@ class LoginViewModel(
viewModelScope.launch(dispatcher) {
// Ensure we always take at least MINIMUM_LOADING_SPINNER_TIME_MILLIS to show the
// loading indicator
- val result = async { accountRepository.login(AccountToken(accountToken)) }
+ val result = async { accountRepository.login(AccountNumber(accountNumber)) }
delay(MINIMUM_LOADING_SPINNER_TIME_MILLIS)
@@ -155,7 +155,7 @@ class LoginViewModel(
when (this) {
LoginAccountError.InvalidAccount -> Idle(LoginError.InvalidCredentials)
is LoginAccountError.MaxDevicesReached ->
- Idle().also { _uiSideEffect.send(LoginUiSideEffect.TooManyDevices(accountToken)) }
+ Idle().also { _uiSideEffect.send(LoginUiSideEffect.TooManyDevices(accountNumber)) }
LoginAccountError.RpcError,
is LoginAccountError.Unknown -> Idle(LoginError.Unknown(this.toString()))
}
diff --git a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/usecase/NewDeviceUseNotificationCaseTest.kt b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/usecase/NewDeviceUseNotificationCaseTest.kt
index b55da83f51..b139853471 100644
--- a/android/app/src/test/kotlin/net/mullvad/mullvadvpn/usecase/NewDeviceUseNotificationCaseTest.kt
+++ b/android/app/src/test/kotlin/net/mullvad/mullvadvpn/usecase/NewDeviceUseNotificationCaseTest.kt
@@ -10,7 +10,7 @@ import kotlin.test.assertTrue
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.test.runTest
import net.mullvad.mullvadvpn.lib.common.test.TestCoroutineRule
-import net.mullvad.mullvadvpn.lib.model.AccountToken
+import net.mullvad.mullvadvpn.lib.model.AccountNumber
import net.mullvad.mullvadvpn.lib.model.Device
import net.mullvad.mullvadvpn.lib.model.DeviceId
import net.mullvad.mullvadvpn.lib.model.DeviceState
@@ -29,7 +29,7 @@ class NewDeviceUseNotificationCaseTest {
private val deviceState =
MutableStateFlow<DeviceState?>(
DeviceState.LoggedIn(
- AccountToken("1234123412341234"),
+ AccountNumber("1234123412341234"),
Device(
id = DeviceId.fromString(UUID),
name = deviceName,
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 362fc457f5..fd1a363e11 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
@@ -15,7 +15,7 @@ import kotlinx.coroutines.test.runTest
import net.mullvad.mullvadvpn.compose.state.PaymentState
import net.mullvad.mullvadvpn.lib.common.test.TestCoroutineRule
import net.mullvad.mullvadvpn.lib.common.test.assertLists
-import net.mullvad.mullvadvpn.lib.model.AccountToken
+import net.mullvad.mullvadvpn.lib.model.AccountNumber
import net.mullvad.mullvadvpn.lib.model.Device
import net.mullvad.mullvadvpn.lib.model.DeviceId
import net.mullvad.mullvadvpn.lib.model.DeviceState
@@ -46,8 +46,8 @@ class AccountViewModelTest {
private val dummyDevice =
Device(id = DeviceId.fromString(UUID), name = "fake_name", creationDate = DateTime.now())
- private val dummyAccountToken: AccountToken =
- AccountToken(
+ private val dummyAccountNumber: AccountNumber =
+ AccountNumber(
DUMMY_DEVICE_NAME,
)
@@ -82,7 +82,7 @@ class AccountViewModelTest {
viewModel.uiState.test {
awaitItem() // Default state
deviceState.value =
- DeviceState.LoggedIn(accountToken = dummyAccountToken, device = dummyDevice)
+ DeviceState.LoggedIn(accountNumber = dummyAccountNumber, device = dummyDevice)
val result = awaitItem()
assertEquals(DUMMY_DEVICE_NAME, result.accountNumber)
}
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 d6eee6d941..1717ae6cc4 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
@@ -24,7 +24,7 @@ import net.mullvad.mullvadvpn.compose.state.LoginState.Success
import net.mullvad.mullvadvpn.compose.state.LoginUiState
import net.mullvad.mullvadvpn.lib.common.test.TestCoroutineRule
import net.mullvad.mullvadvpn.lib.model.AccountData
-import net.mullvad.mullvadvpn.lib.model.AccountToken
+import net.mullvad.mullvadvpn.lib.model.AccountNumber
import net.mullvad.mullvadvpn.lib.model.LoginAccountError
import net.mullvad.mullvadvpn.lib.shared.AccountRepository
import net.mullvad.mullvadvpn.usecase.ConnectivityUseCase
@@ -93,7 +93,7 @@ class LoginViewModelTest {
// Arrange
val uiStates = loginViewModel.uiState.testIn(backgroundScope)
val sideEffects = loginViewModel.uiSideEffect.testIn(backgroundScope)
- coEvery { mockedAccountRepository.createAccount() } returns DUMMY_ACCOUNT_TOKEN.right()
+ coEvery { mockedAccountRepository.createAccount() } returns DUMMY_ACCOUNT_NUMBER.right()
// Act, Assert
uiStates.skipDefaultItem()
@@ -115,7 +115,7 @@ class LoginViewModelTest {
// Act, Assert
uiStates.skipDefaultItem()
- loginViewModel.login(DUMMY_ACCOUNT_TOKEN.value)
+ loginViewModel.login(DUMMY_ACCOUNT_NUMBER.value)
assertEquals(Loading.LoggingIn, uiStates.awaitItem().loginState)
assertEquals(Success, uiStates.awaitItem().loginState)
assertEquals(LoginUiSideEffect.NavigateToConnect, sideEffects.awaitItem())
@@ -131,7 +131,7 @@ class LoginViewModelTest {
// Act, Assert
skipDefaultItem()
- loginViewModel.login(DUMMY_ACCOUNT_TOKEN.value)
+ loginViewModel.login(DUMMY_ACCOUNT_NUMBER.value)
assertEquals(Loading.LoggingIn, awaitItem().loginState)
assertEquals(Idle(loginError = LoginError.InvalidCredentials), awaitItem().loginState)
}
@@ -145,14 +145,14 @@ class LoginViewModelTest {
val uiStates = loginViewModel.uiState.testIn(backgroundScope)
val sideEffects = loginViewModel.uiSideEffect.testIn(backgroundScope)
coEvery { mockedAccountRepository.login(any()) } returns
- LoginAccountError.MaxDevicesReached(DUMMY_ACCOUNT_TOKEN).left()
+ LoginAccountError.MaxDevicesReached(DUMMY_ACCOUNT_NUMBER).left()
// Act, Assert
uiStates.skipDefaultItem()
- loginViewModel.login(DUMMY_ACCOUNT_TOKEN.value)
+ loginViewModel.login(DUMMY_ACCOUNT_NUMBER.value)
assertEquals(Loading.LoggingIn, uiStates.awaitItem().loginState)
assertEquals(
- LoginUiSideEffect.TooManyDevices(DUMMY_ACCOUNT_TOKEN),
+ LoginUiSideEffect.TooManyDevices(DUMMY_ACCOUNT_NUMBER),
sideEffects.awaitItem()
)
}
@@ -167,7 +167,7 @@ class LoginViewModelTest {
// Act, Assert
skipDefaultItem()
- loginViewModel.login(DUMMY_ACCOUNT_TOKEN.value)
+ loginViewModel.login(DUMMY_ACCOUNT_NUMBER.value)
assertEquals(Loading.LoggingIn, awaitItem().loginState)
assertEquals(
Idle(LoginError.Unknown(EXPECTED_RPC_ERROR_MESSAGE)),
@@ -185,7 +185,7 @@ class LoginViewModelTest {
// Act, Assert
skipDefaultItem()
- loginViewModel.login(DUMMY_ACCOUNT_TOKEN.value)
+ loginViewModel.login(DUMMY_ACCOUNT_NUMBER.value)
assertEquals(Loading.LoggingIn, awaitItem().loginState)
val loginState = awaitItem().loginState
assertIs<Idle>(loginState)
@@ -197,12 +197,12 @@ class LoginViewModelTest {
fun `on new accountHistory emission uiState should include lastUsedAccount matching accountHistory`() =
runTest {
// Arrange
- coEvery { mockedAccountRepository.fetchAccountHistory() } returns DUMMY_ACCOUNT_TOKEN
+ coEvery { mockedAccountRepository.fetchAccountHistory() } returns DUMMY_ACCOUNT_NUMBER
// Act, Assert
loginViewModel.uiState.test {
assertEquals(
- LoginUiState.INITIAL.copy(lastUsedAccount = DUMMY_ACCOUNT_TOKEN),
+ LoginUiState.INITIAL.copy(lastUsedAccount = DUMMY_ACCOUNT_NUMBER),
awaitItem()
)
}
@@ -220,7 +220,7 @@ class LoginViewModelTest {
}
companion object {
- private val DUMMY_ACCOUNT_TOKEN = AccountToken("DUMMY")
+ private val DUMMY_ACCOUNT_NUMBER = AccountNumber("DUMMY")
private const val EXPECTED_RPC_ERROR_MESSAGE = "RpcError"
}
}
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 3113450276..4aaa000047 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
@@ -16,7 +16,7 @@ import net.mullvad.mullvadvpn.compose.state.PaymentState
import net.mullvad.mullvadvpn.lib.common.test.TestCoroutineRule
import net.mullvad.mullvadvpn.lib.common.test.assertLists
import net.mullvad.mullvadvpn.lib.model.AccountData
-import net.mullvad.mullvadvpn.lib.model.AccountToken
+import net.mullvad.mullvadvpn.lib.model.AccountNumber
import net.mullvad.mullvadvpn.lib.model.Device
import net.mullvad.mullvadvpn.lib.model.DeviceState
import net.mullvad.mullvadvpn.lib.model.TunnelState
@@ -126,7 +126,7 @@ class WelcomeViewModelTest {
fun `when DeviceRepository returns LoggedIn uiState should include new accountNumber`() =
runTest {
// Arrange
- val expectedAccountNumber = AccountToken("4444555566667777")
+ val expectedAccountNumber = AccountNumber("4444555566667777")
val device: Device = mockk()
every { device.displayName() } returns ""
@@ -136,7 +136,7 @@ class WelcomeViewModelTest {
awaitItem()
paymentAvailabilityFlow.value = null
deviceStateFlow.value =
- DeviceState.LoggedIn(accountToken = expectedAccountNumber, device = device)
+ DeviceState.LoggedIn(accountNumber = expectedAccountNumber, device = device)
assertEquals(expectedAccountNumber, awaitItem().accountNumber)
}
}