From 9ba646d752c90498fa3241dfc61cf272c5b038f8 Mon Sep 17 00:00:00 2001 From: "bw-ghapp[bot]" <178206702+bw-ghapp[bot]@users.noreply.github.com> Date: Fri, 25 Sep 2026 16:08:41 +0000 Subject: [PATCH] Update SDK to 3.0.0-9018-167d44ec (#7418) Co-authored-by: bw-ghapp[bot] <178206702+bw-ghapp[bot]@users.noreply.github.com> Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com> Co-authored-by: David Perez <125928928+david-livefront@users.noreply.github.com> --- .../data/auth/datasource/sdk/AuthSdkSource.kt | 6 +- .../auth/datasource/sdk/AuthSdkSourceImpl.kt | 6 +- .../data/auth/manager/UserStateManagerImpl.kt | 4 +- .../util/SyncResponseJsonExtensions.kt | 6 +- .../util/UserStateJsonExtensions.kt | 4 +- .../data/platform/manager/PolicyManager.kt | 8 +- .../platform/manager/PolicyManagerImpl.kt | 30 +++---- .../UserNotificationPolicyManagerImpl.kt | 6 +- .../repository/SettingsRepositoryImpl.kt | 4 +- .../datasource/sdk/VaultSdkSourceImpl.kt | 2 +- .../util/VaultSdkCipherExtensions.kt | 1 - .../util/VaultSdkPolicyExtensions.kt | 14 ++-- .../addedit/util/CipherViewExtensions.kt | 21 ++--- .../selectaccount/SelectAccountViewModel.kt | 4 +- .../feature/item/util/CipherViewExtensions.kt | 4 +- .../auth/datasource/sdk/AuthSdkSourceTest.kt | 6 +- .../data/auth/manager/UserStateManagerTest.kt | 4 +- .../util/SyncResponseJsonExtensionsTest.kt | 14 ++-- .../util/UserStateJsonExtensionsTest.kt | 6 +- .../processor/AutofillCipherProviderTest.kt | 4 +- .../processor/AutofillProcessorTest.kt | 4 +- .../platform/manager/PolicyManagerTest.kt | 84 +++++++++---------- .../policy/PasswordPolicyManagerTest.kt | 8 +- .../UserNotificationPolicyManagerTest.kt | 18 ++-- .../util/PolicyManagerExtensionsTest.kt | 10 +-- .../repository/SettingsRepositoryTest.kt | 24 +++--- .../datasource/sdk/VaultSdkSourceTest.kt | 4 +- .../sdk/model/CipherListViewUtil.kt | 2 - .../datasource/sdk/model/CipherViewUtil.kt | 14 ++-- .../sdk/model/VaultSdkCipherUtil.kt | 38 ++++++++- ...olicyViewUtil.kt => VaultSdkPolicyUtil.kt} | 10 +-- .../CredentialExchangeImportManagerTest.kt | 8 +- .../manager/VaultMigrationManagerTest.kt | 26 +++--- .../util/VaultSdkCipherExtensionsTest.kt | 2 - .../util/VaultSdkPolicyExtensionsTest.kt | 30 +++---- .../feature/search/SearchViewModelTest.kt | 10 +-- .../AccountSecurityViewModelTest.kt | 18 ++-- .../exportvault/ExportVaultViewModelTest.kt | 6 +- .../vault/VaultSettingsViewModelTest.kt | 4 +- .../generator/GeneratorViewModelTest.kt | 18 ++-- .../addedit/VaultAddEditViewModelTest.kt | 6 +- .../exportitems/SelectAccountViewModelTest.kt | 10 +-- .../reviewexport/ReviewExportViewModelTest.kt | 4 +- .../VerifyPasswordViewModelTest.kt | 6 +- .../importitems/ImportItemsViewModelTest.kt | 4 +- .../VaultItemListingViewModelTest.kt | 12 +-- .../vault/feature/vault/VaultViewModelTest.kt | 12 +-- gradle/libs.versions.toml | 2 +- 48 files changed, 290 insertions(+), 258 deletions(-) rename app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/{PolicyViewUtil.kt => VaultSdkPolicyUtil.kt} (79%) diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/datasource/sdk/AuthSdkSource.kt b/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/datasource/sdk/AuthSdkSource.kt index ab85a43a93..67cda364aa 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/datasource/sdk/AuthSdkSource.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/datasource/sdk/AuthSdkSource.kt @@ -13,8 +13,8 @@ import com.bitwarden.core.RegisterTdeKeyResponse import com.bitwarden.crypto.HashPurpose import com.bitwarden.crypto.Kdf import com.bitwarden.policies.OrganizationUserPolicyContext +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.x8bit.bitwarden.data.auth.datasource.sdk.model.PasswordStrength /** @@ -148,8 +148,8 @@ interface AuthSdkSource { * Applies the appropriate filters for determining what policies apply to the user. */ fun filterPolicies( - policies: List, + policies: List, organizations: List, policyType: PolicyType, - ): Result> + ): Result> } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/datasource/sdk/AuthSdkSourceImpl.kt b/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/datasource/sdk/AuthSdkSourceImpl.kt index 43ad6f472b..0f233ce3a9 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/datasource/sdk/AuthSdkSourceImpl.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/datasource/sdk/AuthSdkSourceImpl.kt @@ -18,8 +18,8 @@ import com.bitwarden.core.data.manager.dispatcher.DispatcherManager import com.bitwarden.crypto.HashPurpose import com.bitwarden.crypto.Kdf import com.bitwarden.policies.OrganizationUserPolicyContext +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.bitwarden.sdk.AuthClient import com.x8bit.bitwarden.data.auth.datasource.sdk.model.PasswordStrength import com.x8bit.bitwarden.data.auth.datasource.sdk.util.toPasswordStrengthOrNull @@ -241,10 +241,10 @@ class AuthSdkSourceImpl( } override fun filterPolicies( - policies: List, + policies: List, organizations: List, policyType: PolicyType, - ): Result> = runCatchingWithLogs { + ): Result> = runCatchingWithLogs { globalClient.policies().filterByType( policies = policies, organizationUserPolicyContexts = organizations, diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/manager/UserStateManagerImpl.kt b/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/manager/UserStateManagerImpl.kt index fc69a6652a..3454c94f4a 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/manager/UserStateManagerImpl.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/manager/UserStateManagerImpl.kt @@ -1,8 +1,8 @@ package com.x8bit.bitwarden.data.auth.manager import com.bitwarden.core.data.manager.dispatcher.DispatcherManager +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.x8bit.bitwarden.data.auth.datasource.disk.AuthDiskSource import com.x8bit.bitwarden.data.auth.datasource.disk.model.OnboardingStatus import com.x8bit.bitwarden.data.auth.datasource.disk.model.UserStateJson @@ -169,7 +169,7 @@ class UserStateManagerImpl( private fun existingPolicies( userId: String, policyType: PolicyType, - ): List = policyManager.getUserPolicies( + ): List = policyManager.getUserPolicies( userId = userId, type = policyType, ) diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/repository/util/SyncResponseJsonExtensions.kt b/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/repository/util/SyncResponseJsonExtensions.kt index d4389541eb..44f6278765 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/repository/util/SyncResponseJsonExtensions.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/repository/util/SyncResponseJsonExtensions.kt @@ -11,8 +11,8 @@ import com.bitwarden.organizations.OrganizationUserStatusType import com.bitwarden.organizations.OrganizationUserType import com.bitwarden.organizations.Permissions import com.bitwarden.organizations.ProfileOrganization +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.x8bit.bitwarden.data.auth.repository.model.Organization import com.x8bit.bitwarden.data.auth.repository.model.PolicyInformation import kotlinx.serialization.json.Json @@ -132,9 +132,9 @@ private fun SyncResponseJson.Profile.Organization.toSdkProfileOrganization(): Pr } /** - * Convert the JSON data of the [PolicyView] object into [PolicyInformation] data. + * Convert the JSON data of the [Policy] object into [PolicyInformation] data. */ -val PolicyView.policyInformation: PolicyInformation? +val Policy.policyInformation: PolicyInformation? get() = data?.let { when (type) { PolicyType.MASTER_PASSWORD -> { diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/repository/util/UserStateJsonExtensions.kt b/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/repository/util/UserStateJsonExtensions.kt index c4e2b488e3..e9b546e960 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/repository/util/UserStateJsonExtensions.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/data/auth/repository/util/UserStateJsonExtensions.kt @@ -8,8 +8,8 @@ import com.bitwarden.network.model.MasterPasswordUnlockDataJson import com.bitwarden.network.model.OrganizationType import com.bitwarden.network.model.SyncResponseJson import com.bitwarden.network.model.UserDecryptionOptionsJson +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.bitwarden.ui.platform.base.util.toHexColorRepresentation import com.x8bit.bitwarden.data.auth.datasource.disk.model.ForcePasswordResetReason import com.x8bit.bitwarden.data.auth.datasource.disk.model.OnboardingStatus @@ -216,7 +216,7 @@ fun UserStateJson.toUserState( isBiometricsEnabledProvider: (userId: String) -> Boolean, vaultUnlockTypeProvider: (userId: String) -> VaultUnlockType, isDeviceTrustedProvider: (userId: String) -> Boolean, - getUserPolicies: (userId: String, policy: PolicyType) -> List, + getUserPolicies: (userId: String, policy: PolicyType) -> List, ): UserState = UserState( activeUserId = this.activeUserId, diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/manager/PolicyManager.kt b/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/manager/PolicyManager.kt index 702df24fd7..5f726b83d5 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/manager/PolicyManager.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/manager/PolicyManager.kt @@ -1,7 +1,7 @@ package com.x8bit.bitwarden.data.platform.manager +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.x8bit.bitwarden.data.platform.manager.model.EffectiveSendPolicy import kotlinx.coroutines.flow.Flow @@ -12,12 +12,12 @@ interface PolicyManager { /** * Returns a flow of all the active policies of the given type. */ - fun getActivePoliciesFlow(type: PolicyType): Flow> + fun getActivePoliciesFlow(type: PolicyType): Flow> /** * Get all the policies of the given [type] that are enabled and applicable to the user. */ - fun getActivePolicies(type: PolicyType): List + fun getActivePolicies(type: PolicyType): List /** * Returns the current, precedence-resolved [EffectiveSendPolicy] for the active user. When @@ -38,7 +38,7 @@ interface PolicyManager { fun getUserPolicies( userId: String, type: PolicyType, - ): List + ): List /** * Get the organization id of the personal ownership policy. diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/manager/PolicyManagerImpl.kt b/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/manager/PolicyManagerImpl.kt index 53e4550683..ddfd45a9e0 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/manager/PolicyManagerImpl.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/manager/PolicyManagerImpl.kt @@ -2,8 +2,8 @@ package com.x8bit.bitwarden.data.platform.manager import com.bitwarden.core.data.manager.model.FlagKey import com.bitwarden.policies.OrganizationUserPolicyContext +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.x8bit.bitwarden.data.auth.datasource.disk.AuthDiskSource import com.x8bit.bitwarden.data.auth.datasource.sdk.AuthSdkSource import com.x8bit.bitwarden.data.auth.repository.model.PolicyInformation @@ -11,7 +11,7 @@ import com.x8bit.bitwarden.data.auth.repository.util.activeUserIdChangesFlow import com.x8bit.bitwarden.data.auth.repository.util.policyInformation import com.x8bit.bitwarden.data.platform.manager.model.EffectiveSendPolicy import com.x8bit.bitwarden.data.vault.repository.util.toSdkOrganizationPolicyContext -import com.x8bit.bitwarden.data.vault.repository.util.toSdkPolicyViews +import com.x8bit.bitwarden.data.vault.repository.util.toSdkPolicies import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.combine @@ -31,17 +31,17 @@ class PolicyManagerImpl( private val featureFlagManager: FeatureFlagManager, ) : PolicyManager { @OptIn(ExperimentalCoroutinesApi::class) - override fun getActivePoliciesFlow(type: PolicyType): Flow> = + override fun getActivePoliciesFlow(type: PolicyType): Flow> = authDiskSource .activeUserIdChangesFlow .flatMapLatest { activeUserId -> activeUserId - ?.let { userId -> getAppliedPolicyViewsFlow(userId = userId, type = type) } + ?.let { userId -> getAppliedPoliciesFlow(userId = userId, type = type) } ?: emptyFlow() } .distinctUntilChanged() - override fun getActivePolicies(type: PolicyType): List = + override fun getActivePolicies(type: PolicyType): List = authDiskSource .userState ?.activeUserId @@ -75,13 +75,13 @@ class PolicyManagerImpl( override fun getUserPolicies( userId: String, type: PolicyType, - ): List = + ): List = this .filterPolicies( type = type, policies = authDiskSource .getPolicies(userId = userId) - ?.toSdkPolicyViews(), + ?.toSdkPolicies(), organizations = authDiskSource .getOrganizations(userId = userId) ?.map { it.toSdkOrganizationPolicyContext() }, @@ -95,13 +95,13 @@ class PolicyManagerImpl( .firstOrNull() ?.organizationId - private fun getAppliedPolicyViewsFlow( + private fun getAppliedPoliciesFlow( userId: String, type: PolicyType, - ): Flow> = combine( + ): Flow> = combine( authDiskSource .getPoliciesFlow(userId = userId) - .map { it?.toSdkPolicyViews() }, + .map { it?.toSdkPolicies() }, authDiskSource .getOrganizationsFlow(userId = userId) .map { organizations -> organizations?.map { it.toSdkOrganizationPolicyContext() } }, @@ -117,9 +117,9 @@ class PolicyManagerImpl( private fun filterPolicies( type: PolicyType, - policies: List?, + policies: List?, organizations: List?, - ): List? = + ): List? = when { policies == null -> null policies.isEmpty() -> emptyList() @@ -142,10 +142,10 @@ class PolicyManagerImpl( * policies, while other organizations' legacy policies remain in effect. */ private fun resolveEffectiveSendPolicy( - disableSendPolicies: List, + disableSendPolicies: List, isSendControlsEnabled: Boolean, - sendControlsPolicies: List, - sendOptionsPolicies: List, + sendControlsPolicies: List, + sendOptionsPolicies: List, ): EffectiveSendPolicy { if (!isSendControlsEnabled) { return EffectiveSendPolicy( diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/manager/policy/UserNotificationPolicyManagerImpl.kt b/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/manager/policy/UserNotificationPolicyManagerImpl.kt index 856705fc47..0f03257f30 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/manager/policy/UserNotificationPolicyManagerImpl.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/manager/policy/UserNotificationPolicyManagerImpl.kt @@ -1,8 +1,8 @@ package com.x8bit.bitwarden.data.platform.manager.policy import com.bitwarden.core.data.manager.dispatcher.DispatcherManager +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.x8bit.bitwarden.data.auth.datasource.disk.AuthDiskSource import com.x8bit.bitwarden.data.auth.repository.model.PolicyInformation import com.x8bit.bitwarden.data.auth.repository.util.activeUserIdChangesFlow @@ -88,7 +88,7 @@ internal class UserNotificationPolicyManagerImpl( } ?.showAfterEveryLogin != false - private fun dismissBanner(policy: PolicyView) { + private fun dismissBanner(policy: Policy) { activeUserId?.let { userId -> settingsDiskSource.storeVaultPolicyBannerDismissedDate( userId = userId, @@ -98,7 +98,7 @@ internal class UserNotificationPolicyManagerImpl( } } -private val PolicyView.userNotificationPolicyData: UserNotificationPolicyData? +private val Policy.userNotificationPolicyData: UserNotificationPolicyData? get() = (this.policyInformation as? PolicyInformation.OrganizationUserNotification)?.let { UserNotificationPolicyData( organizationId = this.organizationId, diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/repository/SettingsRepositoryImpl.kt b/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/repository/SettingsRepositoryImpl.kt index 2638dc6b96..7b28a84268 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/repository/SettingsRepositoryImpl.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/data/platform/repository/SettingsRepositoryImpl.kt @@ -5,8 +5,8 @@ import com.bitwarden.authenticatorbridge.util.generateSecretKey import com.bitwarden.core.data.manager.BuildInfoManager import com.bitwarden.core.data.manager.dispatcher.DispatcherManager import com.bitwarden.data.manager.flightrecorder.FlightRecorderManager +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.bitwarden.ui.platform.feature.settings.appearance.model.AppLanguage import com.bitwarden.ui.platform.feature.settings.appearance.model.AppTheme import com.x8bit.bitwarden.BuildConfig @@ -723,7 +723,7 @@ class SettingsRepositoryImpl( * settings to determine whether to update the user's settings. */ private fun updateVaultUnlockSettingsIfNecessary( - policies: List, + policies: List, ) { // The vault timeout policy can only be implemented in organizations that have // the single organization policy, meaning that if this is enabled, the user is diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/VaultSdkSourceImpl.kt b/app/src/main/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/VaultSdkSourceImpl.kt index d3435d8552..59bcc52dc1 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/VaultSdkSourceImpl.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/VaultSdkSourceImpl.kt @@ -657,7 +657,7 @@ class VaultSdkSourceImpl( vararg cipherViews: CipherView, ): Result> = runCatchingWithLogs { val fido2 = getClient(userId = userId).platform().fido2() - cipherViews.flatMap { fido2.decryptFido2AutofillCredentials(cipherView = it) } + cipherViews.flatMap { fido2.getFido2AutofillCredentials(cipherView = it) } } override suspend fun silentlyDiscoverCredentials( diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkCipherExtensions.kt b/app/src/main/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkCipherExtensions.kt index a73cfa2969..d6096fbb05 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkCipherExtensions.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkCipherExtensions.kt @@ -838,7 +838,6 @@ fun Cipher.toFailureCipherListView(): CipherListView = organizationId = organizationId, folderId = folderId, collectionIds = collectionIds, - key = key, name = name.orEmpty(), subtitle = "", type = when (type) { diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkPolicyExtensions.kt b/app/src/main/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkPolicyExtensions.kt index b0c63a035d..3b0d97b566 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkPolicyExtensions.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkPolicyExtensions.kt @@ -2,21 +2,21 @@ package com.x8bit.bitwarden.data.vault.repository.util import com.bitwarden.network.model.PolicyTypeJson import com.bitwarden.network.model.SyncResponseJson +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import kotlinx.serialization.json.Json /** - * Converts a list of network [SyncResponseJson.Policy] models to a list of SDK [PolicyView]. + * Converts a list of network [SyncResponseJson.Policy] models to a list of SDK [Policy]. */ -fun List.toSdkPolicyViews(): List = - this.map { it.toSdkPolicyView() } +fun List.toSdkPolicies(): List = + this.map { it.toSdkPolicy() } /** - * Converts a network [SyncResponseJson.Policy] model to an SDK [PolicyView]. + * Converts a network [SyncResponseJson.Policy] model to an SDK [Policy]. */ -private fun SyncResponseJson.Policy.toSdkPolicyView(): PolicyView = - PolicyView( +private fun SyncResponseJson.Policy.toSdkPolicy(): Policy = + Policy( organizationId = this.organizationId, id = this.id, type = this.type.toSdkPolicyType, diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/util/CipherViewExtensions.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/util/CipherViewExtensions.kt index 6ef3d7394b..93c0d827cd 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/util/CipherViewExtensions.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/util/CipherViewExtensions.kt @@ -12,7 +12,7 @@ import com.bitwarden.ui.util.asText import com.bitwarden.vault.CipherRepromptType import com.bitwarden.vault.CipherType import com.bitwarden.vault.CipherView -import com.bitwarden.vault.Fido2Credential +import com.bitwarden.vault.Fido2CredentialView import com.bitwarden.vault.FieldType import com.bitwarden.vault.FieldView import com.bitwarden.vault.FolderView @@ -424,9 +424,9 @@ private fun List?.toUriItems(): List = * Retrieves the cipher's primary (first) FIDO2 credential, or null if there is no FIDO2 credential * assigned. */ -private fun List?.getPrimaryFido2CredentialOrNull( +private fun List?.getPrimaryFido2CredentialOrNull( isClone: Boolean, -): Fido2Credential? { +): Fido2CredentialView? { if (isNullOrEmpty() || isClone) return null return first() @@ -436,10 +436,11 @@ private fun List?.getPrimaryFido2CredentialOrNull( * Return the creation date and time of the primary FIDO2 credential, formatted as * "MMM d, yyyy, hh:mm a". */ -private fun Fido2Credential.getCreationDateTime(clock: Clock) = BitwardenString.created_x.asText( - creationDate.toFormattedDateTimeStyle( - dateStyle = FormatStyle.MEDIUM, - timeStyle = FormatStyle.SHORT, - clock = clock, - ), -) +private fun Fido2CredentialView.getCreationDateTime(clock: Clock) = + BitwardenString.created_x.asText( + creationDate.toFormattedDateTimeStyle( + dateStyle = FormatStyle.MEDIUM, + timeStyle = FormatStyle.SHORT, + clock = clock, + ), + ) diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/selectaccount/SelectAccountViewModel.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/selectaccount/SelectAccountViewModel.kt index 693415c2d4..96b79c6d2f 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/selectaccount/SelectAccountViewModel.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/selectaccount/SelectAccountViewModel.kt @@ -3,8 +3,8 @@ package com.x8bit.bitwarden.ui.vault.feature.exportitems.selectaccount import android.os.Parcelable import androidx.lifecycle.viewModelScope import com.bitwarden.cxf.model.ImportCredentialsRequestData +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.bitwarden.ui.platform.base.BackgroundEvent import com.bitwarden.ui.platform.base.BaseViewModel import com.bitwarden.ui.platform.resource.BitwardenString @@ -250,7 +250,7 @@ sealed class SelectAccountAction { */ data class SelectionDataReceive( val userState: UserState?, - val itemRestrictedOrgs: List, + val itemRestrictedOrgs: List, ) : Internal() } } diff --git a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/util/CipherViewExtensions.kt b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/util/CipherViewExtensions.kt index c7fbc6274d..7a356786f4 100644 --- a/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/util/CipherViewExtensions.kt +++ b/app/src/main/kotlin/com/x8bit/bitwarden/ui/vault/feature/item/util/CipherViewExtensions.kt @@ -14,7 +14,7 @@ import com.bitwarden.ui.util.asText import com.bitwarden.vault.CardView import com.bitwarden.vault.CipherType import com.bitwarden.vault.CipherView -import com.bitwarden.vault.Fido2Credential +import com.bitwarden.vault.Fido2CredentialView import com.bitwarden.vault.FieldType import com.bitwarden.vault.FieldView import com.bitwarden.vault.IdentityView @@ -318,7 +318,7 @@ private fun LoginUriView.toUriData() = isLaunchable = !uri.isNullOrBlank(), ) -private fun Fido2Credential.getCreationDateText(clock: Clock): Text = +private fun Fido2CredentialView.getCreationDateText(clock: Clock): Text = BitwardenString.created_x.asText( this.creationDate.toFormattedDateTimeStyle( dateStyle = FormatStyle.MEDIUM, diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/datasource/sdk/AuthSdkSourceTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/datasource/sdk/AuthSdkSourceTest.kt index f45fc44e01..4024dfac33 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/datasource/sdk/AuthSdkSourceTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/datasource/sdk/AuthSdkSourceTest.kt @@ -20,8 +20,8 @@ import com.bitwarden.core.data.util.asSuccess import com.bitwarden.crypto.HashPurpose import com.bitwarden.crypto.Kdf import com.bitwarden.policies.OrganizationUserPolicyContext +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.bitwarden.sdk.AuthClient import com.bitwarden.sdk.Client import com.bitwarden.sdk.LoginClient @@ -564,10 +564,10 @@ class AuthSdkSourceTest { @Test fun `filterPolicies should call SDK and return a Result with the correct data`() { - val policies = listOf(mockk()) + val policies = listOf(mockk()) val organizations = listOf(mockk()) val policyType = mockk() - val expectedResult = listOf(mockk()) + val expectedResult = listOf(mockk()) every { clientPolicies.filterByType( policies = policies, diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/manager/UserStateManagerTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/manager/UserStateManagerTest.kt index 8457293ca7..8019b60399 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/manager/UserStateManagerTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/manager/UserStateManagerTest.kt @@ -19,7 +19,7 @@ import com.x8bit.bitwarden.data.auth.repository.util.toUserState import com.x8bit.bitwarden.data.platform.manager.FirstTimeActionManager import com.x8bit.bitwarden.data.platform.manager.PolicyManager import com.x8bit.bitwarden.data.platform.manager.model.FirstTimeState -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.data.vault.manager.VaultLockManager import com.x8bit.bitwarden.data.vault.repository.model.VaultUnlockData import io.mockk.every @@ -259,7 +259,7 @@ class UserStateManagerTest { @Test fun `userStateFlow should update isExportable when getUserPolicies returns policies`() = runTest { - val policy = createMockPolicyView( + val policy = createMockSdkPolicy( id = "policyId", organizationId = "mockId-1", type = PolicyType.DISABLE_PERSONAL_VAULT_EXPORT, diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/repository/util/SyncResponseJsonExtensionsTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/repository/util/SyncResponseJsonExtensionsTest.kt index 1b41866e7b..aab078a8ea 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/repository/util/SyncResponseJsonExtensionsTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/repository/util/SyncResponseJsonExtensionsTest.kt @@ -11,7 +11,7 @@ import com.bitwarden.policies.PolicyType import com.x8bit.bitwarden.data.auth.repository.model.PolicyInformation import com.x8bit.bitwarden.data.auth.repository.model.createMockOrganization import com.x8bit.bitwarden.data.auth.repository.model.createMockSdkProfileOrganization -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import kotlinx.serialization.json.Json import org.junit.jupiter.api.Assertions.assertEquals import org.junit.jupiter.api.Assertions.assertNull @@ -119,7 +119,7 @@ class SyncResponseJsonExtensionsTest { requireSpecial = null, enforceOnLogin = true, ) - val policy = createMockPolicyView( + val policy = createMockSdkPolicy( type = PolicyType.MASTER_PASSWORD, data = Json.encodeToString(policyInformation), ) @@ -145,7 +145,7 @@ class SyncResponseJsonExtensionsTest { capitalize = true, includeNumber = null, ) - val policy = createMockPolicyView( + val policy = createMockSdkPolicy( type = PolicyType.PASSWORD_GENERATOR, data = Json.encodeToString(policyInformation), ) @@ -163,7 +163,7 @@ class SyncResponseJsonExtensionsTest { action = PolicyInformation.VaultTimeout.Action.LOCK, type = PolicyInformation.VaultTimeout.Type.CUSTOM, ) - val policy = createMockPolicyView( + val policy = createMockSdkPolicy( type = PolicyType.MAXIMUM_VAULT_TIMEOUT, data = Json.encodeToString(policyInformation), ) @@ -184,7 +184,7 @@ class SyncResponseJsonExtensionsTest { deletionHours = 168, allowedSendTypes = listOf(SendTypeJson.TEXT), ) - val policy = createMockPolicyView( + val policy = createMockSdkPolicy( type = PolicyType.SEND_CONTROLS, data = Json.encodeToString(policyInformation), ) @@ -204,7 +204,7 @@ class SyncResponseJsonExtensionsTest { buttonText = "buttonText", showAfterEveryLogin = true, ) - val policy = createMockPolicyView( + val policy = createMockSdkPolicy( type = PolicyType.ORGANIZATION_USER_NOTIFICATION, data = Json.encodeToString(policyInformation), ) @@ -217,7 +217,7 @@ class SyncResponseJsonExtensionsTest { @Test fun `policyInformation returns null policy information for null data`() { - val masterPasswordPolicy = createMockPolicyView( + val masterPasswordPolicy = createMockSdkPolicy( type = PolicyType.MASTER_PASSWORD, data = null, ) diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/repository/util/UserStateJsonExtensionsTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/repository/util/UserStateJsonExtensionsTest.kt index ee7a5f2b8d..033cf492fe 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/repository/util/UserStateJsonExtensionsTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/auth/repository/util/UserStateJsonExtensionsTest.kt @@ -31,7 +31,7 @@ import com.x8bit.bitwarden.data.auth.repository.model.VaultUnlockType import com.x8bit.bitwarden.data.auth.repository.model.createMockOrganization import com.x8bit.bitwarden.data.auth.util.KdfParamsConstants.DEFAULT_PBKDF2_ITERATIONS import com.x8bit.bitwarden.data.platform.manager.model.FirstTimeState -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.data.vault.repository.model.VaultUnlockData import io.mockk.every import io.mockk.mockk @@ -1858,7 +1858,7 @@ class UserStateJsonExtensionsTest { firstTimeState = FirstTimeState(showImportLoginsCard = true), getUserPolicies = { _, _ -> listOf( - createMockPolicyView( + createMockSdkPolicy( id = "policyId", organizationId = "organizationId", type = PolicyType.DISABLE_PERSONAL_VAULT_EXPORT, @@ -1979,7 +1979,7 @@ class UserStateJsonExtensionsTest { firstTimeState = FirstTimeState(showImportLoginsCard = true), getUserPolicies = { _, _ -> listOf( - createMockPolicyView( + createMockSdkPolicy( id = "policyId", organizationId = "organizationId", type = PolicyType.DISABLE_PERSONAL_VAULT_EXPORT, diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/autofill/processor/AutofillCipherProviderTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/autofill/processor/AutofillCipherProviderTest.kt index 61af0cb922..f924337965 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/autofill/processor/AutofillCipherProviderTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/autofill/processor/AutofillCipherProviderTest.kt @@ -22,7 +22,7 @@ import com.x8bit.bitwarden.data.platform.manager.ciphermatching.CipherMatchingMa import com.x8bit.bitwarden.data.platform.util.identityAutofillAddress import com.x8bit.bitwarden.data.platform.util.identityAutofillName import com.x8bit.bitwarden.data.platform.util.subtitle -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.data.vault.manager.model.GetCipherResult import com.x8bit.bitwarden.data.vault.repository.VaultRepository import com.x8bit.bitwarden.data.vault.repository.model.VaultUnlockData @@ -353,7 +353,7 @@ class AutofillCipherProviderTest { every { policyManager.getActivePolicies(PolicyType.RESTRICTED_ITEM_TYPES) } returns listOf( - createMockPolicyView(organizationId = ORGANIZATION_ID_WITH_CARD_TYPE_RESTRICTIONS), + createMockSdkPolicy(organizationId = ORGANIZATION_ID_WITH_CARD_TYPE_RESTRICTIONS), ) coEvery { vaultRepository.getCipher(CARD_CIPHER_ID) diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/autofill/processor/AutofillProcessorTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/autofill/processor/AutofillProcessorTest.kt index 36d7a608c8..e31abba454 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/autofill/processor/AutofillProcessorTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/autofill/processor/AutofillProcessorTest.kt @@ -11,8 +11,8 @@ import android.service.autofill.SaveCallback import android.service.autofill.SaveInfo import android.service.autofill.SaveRequest import com.bitwarden.core.data.manager.dispatcher.FakeDispatcherManager +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.x8bit.bitwarden.data.autofill.builder.FillResponseBuilder import com.x8bit.bitwarden.data.autofill.builder.FilledDataBuilder import com.x8bit.bitwarden.data.autofill.builder.SaveInfoBuilder @@ -306,7 +306,7 @@ class AutofillProcessorTest { every { onSuccess() } just runs } val saveRequest: SaveRequest = mockk() - val policies: List = listOf(mockk()) + val policies: List = listOf(mockk()) every { settingsRepository.isAutofillSavePromptDisabled } returns false every { policyManager.getActivePolicies(PolicyType.ORGANIZATION_DATA_OWNERSHIP) diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/PolicyManagerTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/PolicyManagerTest.kt index 1db5c73b0c..5da068fb83 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/PolicyManagerTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/PolicyManagerTest.kt @@ -9,13 +9,13 @@ import com.bitwarden.network.model.SendAccessTypeJson import com.bitwarden.network.model.SyncResponseJson import com.bitwarden.network.model.createMockOrganizationNetwork import com.bitwarden.network.model.createMockPolicy +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.x8bit.bitwarden.data.auth.datasource.disk.AuthDiskSource import com.x8bit.bitwarden.data.auth.datasource.disk.model.UserStateJson import com.x8bit.bitwarden.data.auth.datasource.sdk.AuthSdkSource import com.x8bit.bitwarden.data.platform.manager.model.EffectiveSendPolicy -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import io.mockk.every import io.mockk.mockk import kotlinx.coroutines.flow.MutableStateFlow @@ -77,13 +77,13 @@ class PolicyManagerTest { organizationId = organizations.id, type = PolicyTypeJson.MAXIMUM_VAULT_TIMEOUT, ) - val expectedPolicyOne = createMockPolicyView( + val expectedPolicyOne = createMockSdkPolicy( enabled = true, number = 1, organizationId = organizations.id, type = PolicyType.MAXIMUM_VAULT_TIMEOUT, ) - val expectedPolicyTwo = createMockPolicyView( + val expectedPolicyTwo = createMockSdkPolicy( enabled = true, number = 2, organizationId = organizations.id, @@ -150,7 +150,7 @@ class PolicyManagerTest { organizations = any(), policyType = any(), ) - } returns emptyList().asSuccess() + } returns emptyList().asSuccess() assertTrue(policyManager.getActivePolicies(type = PolicyType.MASTER_PASSWORD).isEmpty()) } @@ -183,7 +183,7 @@ class PolicyManagerTest { organizations = any(), policyType = any(), ) - } returns emptyList().asSuccess() + } returns emptyList().asSuccess() assertTrue(policyManager.getActivePolicies(type = PolicyType.MASTER_PASSWORD).isEmpty()) } @@ -194,7 +194,7 @@ class PolicyManagerTest { every { activeUserId } returns USER_ID } val storedPolicy = createMockPolicy(organizationId = "mockId-3", isEnabled = true) - val expectedPolicy = createMockPolicyView(organizationId = "mockId-3", enabled = true) + val expectedPolicy = createMockSdkPolicy(organizationId = "mockId-3", enabled = true) every { authDiskSource.userState } returns userState every { authDiskSource.getOrganizations(USER_ID) @@ -244,7 +244,7 @@ class PolicyManagerTest { every { authSdkSource.filterPolicies(any(), any(), any()) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "mockId-3", enabled = true, type = PolicyType.PASSWORD_GENERATOR, @@ -282,7 +282,7 @@ class PolicyManagerTest { every { authSdkSource.filterPolicies(any(), any(), any()) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "mockId-3", enabled = true, type = PolicyType.RESTRICTED_ITEM_TYPES, @@ -302,7 +302,7 @@ class PolicyManagerTest { every { authDiskSource.getOrganizations(USER_ID) } returns null assertEquals( - emptyList(), + emptyList(), policyManager.getUserPolicies( userId = USER_ID, type = PolicyType.ORGANIZATION_DATA_OWNERSHIP, @@ -335,7 +335,7 @@ class PolicyManagerTest { ), ) val expectedListOfPolicies = listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "mockId-3", enabled = true, type = PolicyType.DISABLE_PERSONAL_VAULT_EXPORT, @@ -407,7 +407,7 @@ class PolicyManagerTest { organizations = any(), policyType = any(), ) - } returns emptyList().asSuccess() + } returns emptyList().asSuccess() assertNull(policyManager.getPersonalOwnershipPolicyOrganizationId()) } @@ -441,7 +441,7 @@ class PolicyManagerTest { every { authSdkSource.filterPolicies(any(), any(), any()) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = expectedOrganizationId, enabled = true, ), @@ -517,19 +517,19 @@ class PolicyManagerTest { every { authSdkSource.filterPolicies(any(), any(), any()) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( number = 3, organizationId = "mockId-3", enabled = true, revisionDate = latestRevisionDate, ), - createMockPolicyView( + createMockSdkPolicy( number = 1, organizationId = expectedOrganizationId, enabled = true, revisionDate = earliestRevisionDate, ), - createMockPolicyView( + createMockSdkPolicy( number = 2, organizationId = "mockId-2", enabled = true, @@ -592,7 +592,7 @@ class PolicyManagerTest { every { authSdkSource.filterPolicies(any(), any(), any()) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( number = 2, organizationId = expectedOrganizationId, enabled = true, @@ -612,7 +612,7 @@ class PolicyManagerTest { fun `getEffectiveSendPolicy should mirror legacy DisableSend policy when flag is off`() { setUpSendPolicies( disableSendPolicies = listOf( - createMockPolicyView(organizationId = "mockId-1", enabled = true), + createMockSdkPolicy(organizationId = "mockId-1", enabled = true), ), ) @@ -633,7 +633,7 @@ class PolicyManagerTest { fun `getEffectiveSendPolicy should mirror legacy SendOptions policy when flag is off`() { setUpSendPolicies( sendOptionsPolicies = listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "mockId-1", enabled = true, type = PolicyType.SEND_OPTIONS, @@ -659,7 +659,7 @@ class PolicyManagerTest { fun `getEffectiveSendPolicy should ignore an active SendControls policy when flag is off`() { setUpSendPolicies( sendControlsPolicies = listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "mockId-1", enabled = true, type = PolicyType.SEND_CONTROLS, @@ -667,7 +667,7 @@ class PolicyManagerTest { ), ), disableSendPolicies = listOf( - createMockPolicyView(organizationId = "mockId-1", enabled = true), + createMockSdkPolicy(organizationId = "mockId-1", enabled = true), ), ) @@ -690,7 +690,7 @@ class PolicyManagerTest { mutableSendControlsFlagFlow.value = true setUpSendPolicies( sendControlsPolicies = listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "mockId-1", enabled = true, type = PolicyType.SEND_CONTROLS, @@ -698,7 +698,7 @@ class PolicyManagerTest { ), ), disableSendPolicies = listOf( - createMockPolicyView(organizationId = "mockId-1", enabled = true), + createMockSdkPolicy(organizationId = "mockId-1", enabled = true), ), ) @@ -721,7 +721,7 @@ class PolicyManagerTest { mutableSendControlsFlagFlow.value = true setUpSendPolicies( sendControlsPolicies = listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "mockId-1", enabled = true, type = PolicyType.SEND_CONTROLS, @@ -730,8 +730,8 @@ class PolicyManagerTest { ), disableSendPolicies = listOf( // mockId-1 has SendControls (exclusion applies), mockId-2 does not. - createMockPolicyView(organizationId = "mockId-1", enabled = true), - createMockPolicyView(organizationId = "mockId-2", enabled = true), + createMockSdkPolicy(organizationId = "mockId-1", enabled = true), + createMockSdkPolicy(organizationId = "mockId-2", enabled = true), ), ) @@ -754,7 +754,7 @@ class PolicyManagerTest { mutableSendControlsFlagFlow.value = true setUpSendPolicies( sendControlsPolicies = listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "mockId-1", enabled = true, type = PolicyType.SEND_CONTROLS, @@ -762,7 +762,7 @@ class PolicyManagerTest { ), ), sendOptionsPolicies = listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "mockId-2", enabled = true, type = PolicyType.SEND_OPTIONS, @@ -790,7 +790,7 @@ class PolicyManagerTest { mutableSendControlsFlagFlow.value = true setUpSendPolicies( sendControlsPolicies = listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "mockId-1", enabled = true, type = PolicyType.SEND_CONTROLS, @@ -825,7 +825,7 @@ class PolicyManagerTest { setUpSendPolicies( sendControlsPolicies = listOf( // Listed first, but revised later, so it should lose to the policy below. - createMockPolicyView( + createMockSdkPolicy( number = 2, organizationId = "mockId-2", enabled = true, @@ -833,7 +833,7 @@ class PolicyManagerTest { data = """{"allowedDomains":"later.example.com"}""", revisionDate = Instant.parse("2026-06-01T00:00:00Z"), ), - createMockPolicyView( + createMockSdkPolicy( number = 1, organizationId = "mockId-1", enabled = true, @@ -886,14 +886,14 @@ class PolicyManagerTest { organizations = any(), policyType = PolicyType.SEND_CONTROLS, ) - } returns emptyList().asSuccess() + } returns emptyList().asSuccess() every { authSdkSource.filterPolicies( policies = any(), organizations = any(), policyType = PolicyType.SEND_OPTIONS, ) - } returns emptyList().asSuccess() + } returns emptyList().asSuccess() every { authSdkSource.filterPolicies( policies = any(), @@ -901,8 +901,8 @@ class PolicyManagerTest { policyType = PolicyType.DISABLE_SEND, ) } returnsMany listOf( - emptyList().asSuccess(), - listOf(createMockPolicyView(organizationId = organizations.id, enabled = true)) + emptyList().asSuccess(), + listOf(createMockSdkPolicy(organizationId = organizations.id, enabled = true)) .asSuccess(), ) @@ -956,7 +956,7 @@ class PolicyManagerTest { policyType = PolicyType.SEND_CONTROLS, ) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = organizations.id, enabled = true, type = PolicyType.SEND_CONTROLS, @@ -971,7 +971,7 @@ class PolicyManagerTest { policyType = PolicyType.DISABLE_SEND, ) } returns listOf( - createMockPolicyView(organizationId = organizations.id, enabled = true), + createMockSdkPolicy(organizationId = organizations.id, enabled = true), ) .asSuccess() every { @@ -980,7 +980,7 @@ class PolicyManagerTest { organizations = any(), policyType = PolicyType.SEND_OPTIONS, ) - } returns emptyList().asSuccess() + } returns emptyList().asSuccess() mutableUserStateFlow.value = userStateJson mutableOrganizationsFlow.value = listOf(organizations) @@ -1013,12 +1013,12 @@ class PolicyManagerTest { /** * Sets up the mocks required for [PolicyManagerImpl.getEffectiveSendPolicy] / * [PolicyManagerImpl.getEffectiveSendPolicyFlow] to return, per policy type, the given lists - * of already-decoded [PolicyView]s. + * of already-decoded [Policy]s. */ private fun setUpSendPolicies( - disableSendPolicies: List = emptyList(), - sendControlsPolicies: List = emptyList(), - sendOptionsPolicies: List = emptyList(), + disableSendPolicies: List = emptyList(), + sendControlsPolicies: List = emptyList(), + sendOptionsPolicies: List = emptyList(), ) { val userState: UserStateJson = mockk { every { activeUserId } returns USER_ID diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/policy/PasswordPolicyManagerTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/policy/PasswordPolicyManagerTest.kt index e74b62b11f..fe6e01a207 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/policy/PasswordPolicyManagerTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/policy/PasswordPolicyManagerTest.kt @@ -6,8 +6,8 @@ import com.bitwarden.data.datasource.disk.model.EnvironmentUrlDataJson import com.bitwarden.network.model.KdfTypeJson import com.bitwarden.network.model.MasterPasswordUnlockDataJson import com.bitwarden.network.model.UserDecryptionOptionsJson +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.x8bit.bitwarden.data.auth.datasource.disk.model.AccountJson import com.x8bit.bitwarden.data.auth.datasource.disk.model.ForcePasswordResetReason import com.x8bit.bitwarden.data.auth.datasource.disk.model.UserStateJson @@ -19,7 +19,7 @@ import com.x8bit.bitwarden.data.auth.repository.model.PasswordStrengthResult import com.x8bit.bitwarden.data.auth.repository.model.PolicyInformation import com.x8bit.bitwarden.data.auth.repository.util.toSdkParams import com.x8bit.bitwarden.data.platform.manager.PolicyManager -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import io.mockk.coEvery import io.mockk.every import io.mockk.mockk @@ -375,7 +375,7 @@ class PasswordPolicyManagerTest { every { policyManager.getActivePolicies(type = PolicyType.MASTER_PASSWORD) } returns policyDataJson.map { data -> - createMockPolicyView( + createMockSdkPolicy( type = PolicyType.MASTER_PASSWORD, enabled = true, data = data, @@ -385,7 +385,7 @@ class PasswordPolicyManagerTest { } /** - * Builds the `data` payload of a master password [PolicyView]. + * Builds the `data` payload of a master password [Policy]. */ @Suppress("LongParameterList") private fun createPolicyJson( diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/policy/UserNotificationPolicyManagerTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/policy/UserNotificationPolicyManagerTest.kt index 77c49d7ccd..b54cfccb05 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/policy/UserNotificationPolicyManagerTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/policy/UserNotificationPolicyManagerTest.kt @@ -4,15 +4,15 @@ import app.cash.turbine.test import com.bitwarden.core.data.manager.dispatcher.FakeDispatcherManager import com.bitwarden.data.datasource.disk.model.EnvironmentUrlDataJson import com.bitwarden.network.model.KdfTypeJson +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.x8bit.bitwarden.data.auth.datasource.disk.model.AccountJson import com.x8bit.bitwarden.data.auth.datasource.disk.model.UserStateJson import com.x8bit.bitwarden.data.auth.datasource.disk.util.FakeAuthDiskSource import com.x8bit.bitwarden.data.platform.datasource.disk.util.FakeSettingsDiskSource import com.x8bit.bitwarden.data.platform.manager.PolicyManager import com.x8bit.bitwarden.data.platform.manager.policy.model.UserNotificationPolicyData -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import io.mockk.every import io.mockk.mockk import io.mockk.verify @@ -29,8 +29,8 @@ class UserNotificationPolicyManagerTest { private val fakeAuthDiskSource = FakeAuthDiskSource() private val fakeSettingsDiskSource = FakeSettingsDiskSource() - private val mutablePoliciesFlow = MutableStateFlow(emptyList()) - private val userPolicies = mutableMapOf>() + private val mutablePoliciesFlow = MutableStateFlow(emptyList()) + private val userPolicies = mutableMapOf>() private val policyManager: PolicyManager = mockk { every { getActivePolicies(type = PolicyType.ORGANIZATION_USER_NOTIFICATION) @@ -319,7 +319,7 @@ class UserNotificationPolicyManagerTest { * Sets the active organization user notification [policies], each of which should be created * via [createPolicy]. */ - private fun setPolicies(vararg policies: PolicyView) { + private fun setPolicies(vararg policies: Policy) { mutablePoliciesFlow.value = policies.toList() } @@ -327,19 +327,19 @@ class UserNotificationPolicyManagerTest { * Sets the organization user notification [policies] applicable to the given [userId], each of * which should be created via [createPolicy]. */ - private fun setUserPolicies(userId: String, vararg policies: PolicyView) { + private fun setUserPolicies(userId: String, vararg policies: Policy) { userPolicies[userId] = policies.toList() } } /** - * Creates an active organization user notification [PolicyView]. + * Creates an active organization user notification [Policy]. */ private fun createPolicy( number: Int = 1, data: String? = createPolicyJson(), revisionDate: Instant? = REVISION_DATE, -): PolicyView = createMockPolicyView( +): Policy = createMockSdkPolicy( number = number, type = PolicyType.ORGANIZATION_USER_NOTIFICATION, enabled = true, @@ -348,7 +348,7 @@ private fun createPolicy( ) /** - * Builds the `data` payload of an organization user notification [PolicyView]. + * Builds the `data` payload of an organization user notification [Policy]. */ private fun createPolicyJson( headerText: String? = "mockHeaderText", diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/util/PolicyManagerExtensionsTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/util/PolicyManagerExtensionsTest.kt index a4c5cfc815..f0845a8c9d 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/util/PolicyManagerExtensionsTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/manager/util/PolicyManagerExtensionsTest.kt @@ -2,11 +2,11 @@ package com.x8bit.bitwarden.data.platform.manager.util import app.cash.turbine.test import com.bitwarden.core.data.repository.util.bufferedMutableSharedFlow +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.x8bit.bitwarden.data.auth.repository.model.PolicyInformation import com.x8bit.bitwarden.data.platform.manager.PolicyManager -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import io.mockk.every import io.mockk.mockk import kotlinx.coroutines.test.runTest @@ -14,7 +14,7 @@ import org.junit.jupiter.api.Assertions.assertEquals import org.junit.jupiter.api.Test class PolicyManagerExtensionsTest { - private val mutablePolicyFlow = bufferedMutableSharedFlow>() + private val mutablePolicyFlow = bufferedMutableSharedFlow>() private val policyManager: PolicyManager = mockk { every { getActivePoliciesFlow(any()) } returns mutablePolicyFlow } @@ -87,7 +87,7 @@ class PolicyManagerExtensionsTest { } } -private val MASTER_PASSWORD_POLICY = createMockPolicyView( +private val MASTER_PASSWORD_POLICY = createMockSdkPolicy( organizationId = "organizationId", id = "master_password_id", type = PolicyType.MASTER_PASSWORD, @@ -115,7 +115,7 @@ private val MASTER_PASSWORD_POLICY_INFO = PolicyInformation.MasterPassword( enforceOnLogin = true, ) -private val PASSWORD_GENERATOR_POLICY = createMockPolicyView( +private val PASSWORD_GENERATOR_POLICY = createMockSdkPolicy( organizationId = "organizationId", id = "password_generator_id", type = PolicyType.PASSWORD_GENERATOR, diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/repository/SettingsRepositoryTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/repository/SettingsRepositoryTest.kt index 1af8bfc3d0..ca79ebddf4 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/repository/SettingsRepositoryTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/platform/repository/SettingsRepositoryTest.kt @@ -14,8 +14,8 @@ import com.bitwarden.data.manager.flightrecorder.FlightRecorderManager import com.bitwarden.network.model.KdfTypeJson import com.bitwarden.network.model.TrustedDeviceUserDecryptionOptionsJson import com.bitwarden.network.model.UserDecryptionOptionsJson +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.bitwarden.ui.platform.feature.settings.appearance.model.AppLanguage import com.bitwarden.ui.platform.feature.settings.appearance.model.AppTheme import com.x8bit.bitwarden.data.auth.datasource.disk.model.AccountJson @@ -37,7 +37,7 @@ import com.x8bit.bitwarden.data.platform.repository.model.UriMatchType import com.x8bit.bitwarden.data.platform.repository.model.VaultTimeout import com.x8bit.bitwarden.data.platform.repository.model.VaultTimeoutAction import com.x8bit.bitwarden.data.vault.datasource.sdk.VaultSdkSource -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import io.mockk.coEvery import io.mockk.coVerify import io.mockk.every @@ -69,7 +69,7 @@ class SettingsRepositoryTest { private val fakeAuthDiskSource = FakeAuthDiskSource() private val fakeSettingsDiskSource = FakeSettingsDiskSource() private val vaultSdkSource: VaultSdkSource = mockk() - private val mutableActivePolicyFlow = bufferedMutableSharedFlow>() + private val mutableActivePolicyFlow = bufferedMutableSharedFlow>() private val policyManager: PolicyManager = mockk { every { getActivePoliciesFlow(type = PolicyType.MAXIMUM_VAULT_TIMEOUT) @@ -1455,7 +1455,7 @@ class SettingsRepositoryTest { fakeSettingsDiskSource.assertVaultTimeoutAction(userId = USER_ID, expected = null) fakeSettingsDiskSource.assertVaultTimeoutInMinutes(userId = USER_ID, expected = null) - mutableActivePolicyFlow.emit(listOf(createMockPolicyView())) + mutableActivePolicyFlow.emit(listOf(createMockSdkPolicy())) fakeSettingsDiskSource.assertVaultTimeoutAction(userId = USER_ID, expected = null) fakeSettingsDiskSource.assertVaultTimeoutInMinutes(userId = USER_ID, expected = null) } @@ -1466,7 +1466,7 @@ class SettingsRepositoryTest { fakeAuthDiskSource.userState = MOCK_USER_STATE fakeSettingsDiskSource.assertVaultTimeoutAction(userId = USER_ID, expected = null) - val lockPolicy = createMockPolicyView( + val lockPolicy = createMockSdkPolicy( type = PolicyType.MAXIMUM_VAULT_TIMEOUT, data = createMockVaultTimeoutPolicyJsonString( vaultTimeout = createMockVaultTimeoutPolicy( @@ -1480,7 +1480,7 @@ class SettingsRepositoryTest { expected = VaultTimeoutAction.LOCK, ) - val logoutPolicy = createMockPolicyView( + val logoutPolicy = createMockSdkPolicy( type = PolicyType.MAXIMUM_VAULT_TIMEOUT, data = createMockVaultTimeoutPolicyJsonString( vaultTimeout = createMockVaultTimeoutPolicy( @@ -1506,7 +1506,7 @@ class SettingsRepositoryTest { vaultTimeoutInMinutes = 100, ) - val nullTypeWithMinutesPolicy = createMockPolicyView( + val nullTypeWithMinutesPolicy = createMockSdkPolicy( type = PolicyType.MAXIMUM_VAULT_TIMEOUT, data = createMockVaultTimeoutPolicyJsonString( vaultTimeout = createMockVaultTimeoutPolicy(minutes = 5), @@ -1515,7 +1515,7 @@ class SettingsRepositoryTest { mutableActivePolicyFlow.emit(listOf(nullTypeWithMinutesPolicy)) fakeSettingsDiskSource.assertVaultTimeoutInMinutes(userId = USER_ID, expected = 5) - val customMinutesPolicy = createMockPolicyView( + val customMinutesPolicy = createMockSdkPolicy( type = PolicyType.MAXIMUM_VAULT_TIMEOUT, data = createMockVaultTimeoutPolicyJsonString( vaultTimeout = createMockVaultTimeoutPolicy( @@ -1528,7 +1528,7 @@ class SettingsRepositoryTest { // No change since 5 is within the range fakeSettingsDiskSource.assertVaultTimeoutInMinutes(userId = USER_ID, expected = 5) - val onSystemLockPolicy = createMockPolicyView( + val onSystemLockPolicy = createMockSdkPolicy( type = PolicyType.MAXIMUM_VAULT_TIMEOUT, data = createMockVaultTimeoutPolicyJsonString( vaultTimeout = createMockVaultTimeoutPolicy( @@ -1541,7 +1541,7 @@ class SettingsRepositoryTest { // Set to on app restart fakeSettingsDiskSource.assertVaultTimeoutInMinutes(userId = USER_ID, expected = -1) - val onAppRestartPolicy = createMockPolicyView( + val onAppRestartPolicy = createMockSdkPolicy( type = PolicyType.MAXIMUM_VAULT_TIMEOUT, data = createMockVaultTimeoutPolicyJsonString( vaultTimeout = createMockVaultTimeoutPolicy( @@ -1554,7 +1554,7 @@ class SettingsRepositoryTest { // No change, ON_APP_RESTART is treated the same as ON_SYSTEM_RESTART fakeSettingsDiskSource.assertVaultTimeoutInMinutes(userId = USER_ID, expected = -1) - val immediatePolicy = createMockPolicyView( + val immediatePolicy = createMockSdkPolicy( type = PolicyType.MAXIMUM_VAULT_TIMEOUT, data = createMockVaultTimeoutPolicyJsonString( vaultTimeout = createMockVaultTimeoutPolicy( @@ -1567,7 +1567,7 @@ class SettingsRepositoryTest { // Set to Immediate fakeSettingsDiskSource.assertVaultTimeoutInMinutes(userId = USER_ID, expected = 0) - val neverPolicy = createMockPolicyView( + val neverPolicy = createMockSdkPolicy( type = PolicyType.MAXIMUM_VAULT_TIMEOUT, data = createMockVaultTimeoutPolicyJsonString( vaultTimeout = createMockVaultTimeoutPolicy( diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/VaultSdkSourceTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/VaultSdkSourceTest.kt index 416e9bba7f..52968d427a 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/VaultSdkSourceTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/VaultSdkSourceTest.kt @@ -1524,7 +1524,7 @@ class VaultSdkSourceTest { val autofillViews = listOf(mockAutofillView) coEvery { - clientFido2.decryptFido2AutofillCredentials(mockCipherView) + clientFido2.getFido2AutofillCredentials(mockCipherView) } returns autofillViews val result = vaultSdkSource.decryptFido2CredentialAutofillViews( @@ -1544,7 +1544,7 @@ class VaultSdkSourceTest { runTest { val mockCipherView = createMockCipherView(number = 1) coEvery { - clientFido2.decryptFido2AutofillCredentials(mockCipherView) + clientFido2.getFido2AutofillCredentials(mockCipherView) } throws BitwardenException.Fido2Client(mockk("mockException")) val result = vaultSdkSource.decryptFido2CredentialAutofillViews( diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/CipherListViewUtil.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/CipherListViewUtil.kt index c11b6f746f..5cb52e00b2 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/CipherListViewUtil.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/CipherListViewUtil.kt @@ -42,7 +42,6 @@ fun createMockCipherListView( viewPassword: Boolean = true, permissions: CipherPermissions? = createMockSdkCipherPermissions(), localData: LocalDataView? = null, - key: String = "mockKey-$number", subtitle: String = "mockSubtitle-$number", hasOldAttachments: Boolean = false, copyableFields: List = listOf( @@ -73,7 +72,6 @@ fun createMockCipherListView( viewPassword = viewPassword, permissions = permissions, localData = localData, - key = key, subtitle = subtitle, hasOldAttachments = hasOldAttachments, copyableFields = copyableFields, diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/CipherViewUtil.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/CipherViewUtil.kt index 085c52cf58..3a12e4606f 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/CipherViewUtil.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/CipherViewUtil.kt @@ -8,7 +8,7 @@ import com.bitwarden.vault.CipherRepromptType import com.bitwarden.vault.CipherType import com.bitwarden.vault.CipherView import com.bitwarden.vault.DriversLicenseView -import com.bitwarden.vault.Fido2Credential +import com.bitwarden.vault.Fido2CredentialView import com.bitwarden.vault.FieldType import com.bitwarden.vault.FieldView import com.bitwarden.vault.IdentityView @@ -54,7 +54,7 @@ fun createMockCipherView( notes: String? = "mockNotes-$number", password: String? = "mockPassword-$number", clock: Clock = FIXED_CLOCK, - fido2Credentials: List? = null, + fido2Credentials: List? = null, sshKey: SshKeyView? = createMockSshKeyView(number = number), login: LoginView? = createMockLoginView( number = number, @@ -128,7 +128,7 @@ fun createMockLoginView( clock: Clock = FIXED_CLOCK, hasUris: Boolean = true, uris: List? = listOf(createMockUriView(number = number)), - fido2Credentials: List? = createMockSdkFido2CredentialList(number, clock), + fido2Credentials: List? = createMockSdkFido2CredentialList(number, clock), username: String? = "mockUsername-$number", password: String? = "mockPassword-$number", ): LoginView = @@ -143,21 +143,21 @@ fun createMockLoginView( ) /** - * Create a list of mock [Fido2Credential] with a given [number]. + * Create a list of mock [Fido2CredentialView] with a given [number]. */ fun createMockSdkFido2CredentialList( number: Int, clock: Clock = FIXED_CLOCK, -): List = listOf(createMockSdkFido2Credential(number = number, clock = clock)) +): List = listOf(createMockSdkFido2Credential(number = number, clock = clock)) /** - * Create a mock [Fido2Credential] with a given [number]. + * Create a mock [Fido2CredentialView] with a given [number]. */ fun createMockSdkFido2Credential( number: Int, rpId: String = "mockRpId-$number", clock: Clock = FIXED_CLOCK, -): Fido2Credential = Fido2Credential( +): Fido2CredentialView = Fido2CredentialView( credentialId = "mockCredentialId-$number", keyType = "mockKeyType-$number", keyAlgorithm = "mockKeyAlgorithm-$number", diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/VaultSdkCipherUtil.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/VaultSdkCipherUtil.kt index 5e8cfc23f4..1f4b374d18 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/VaultSdkCipherUtil.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/VaultSdkCipherUtil.kt @@ -8,6 +8,7 @@ import com.bitwarden.vault.CipherPermissions import com.bitwarden.vault.CipherRepromptType import com.bitwarden.vault.CipherType import com.bitwarden.vault.DriversLicense +import com.bitwarden.vault.Fido2Credential import com.bitwarden.vault.Field import com.bitwarden.vault.FieldType import com.bitwarden.vault.Identity @@ -241,9 +242,44 @@ fun createMockSdkLogin(number: Int, clock: Clock): Login = autofillOnPageLoad = false, uris = listOf(createMockSdkUri(number = number)), totp = "mockTotp-$number", - fido2Credentials = createMockSdkFido2CredentialList(number, clock), + fido2Credentials = createMockSdkEncryptedFido2CredentialList( + number = number, + clock = clock, + ), ) +/** + * Create a list of mock encrypted [Fido2Credential] with a given [number]. + */ +fun createMockSdkEncryptedFido2CredentialList( + number: Int, + clock: Clock, +): List = listOf( + createMockSdkEncryptedFido2Credential(number = number, clock = clock), +) + +/** + * Create a mock encrypted [Fido2Credential] with a given [number]. + */ +fun createMockSdkEncryptedFido2Credential( + number: Int, + clock: Clock, +): Fido2Credential = Fido2Credential( + credentialId = "mockCredentialId-$number", + keyType = "mockKeyType-$number", + keyAlgorithm = "mockKeyAlgorithm-$number", + keyCurve = "mockKeyCurve-$number", + keyValue = "mockKeyValue-$number", + rpId = "mockRpId-$number", + userHandle = "mockUserHandle-$number", + userName = "mockUserName-$number", + counter = "mockCounter-$number", + rpName = "mockRpName-$number", + userDisplayName = "mockUserDisplayName-$number", + discoverable = "mockDiscoverable-$number", + creationDate = clock.instant(), +) + /** * Create a mock [LoginUri] with a given [number]. */ diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/PolicyViewUtil.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/VaultSdkPolicyUtil.kt similarity index 79% rename from app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/PolicyViewUtil.kt rename to app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/VaultSdkPolicyUtil.kt index 03c0543ef4..f5e6efaf50 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/PolicyViewUtil.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/datasource/sdk/model/VaultSdkPolicyUtil.kt @@ -1,14 +1,14 @@ package com.x8bit.bitwarden.data.vault.datasource.sdk.model +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import java.time.Instant /** - * Create a mock [PolicyView] with a given [number]. + * Create a mock [Policy] with a given [number]. */ @Suppress("LongParameterList") -fun createMockPolicyView( +fun createMockSdkPolicy( number: Int = 1, id: String = "mockId-$number", organizationId: String = "mockOrganizationId-$number", @@ -16,8 +16,8 @@ fun createMockPolicyView( data: String? = null, enabled: Boolean = false, revisionDate: Instant? = null, -): PolicyView = - PolicyView( +): Policy = + Policy( id = id, organizationId = organizationId, type = type, diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/manager/CredentialExchangeImportManagerTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/manager/CredentialExchangeImportManagerTest.kt index 8eaa42225d..6726e43c52 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/manager/CredentialExchangeImportManagerTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/manager/CredentialExchangeImportManagerTest.kt @@ -16,8 +16,8 @@ import com.bitwarden.vault.EncryptionContext import com.x8bit.bitwarden.data.platform.manager.PolicyManager import com.x8bit.bitwarden.data.vault.datasource.sdk.VaultSdkSource import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockEncryptionContext -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkCipher +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.data.vault.manager.model.ImportCxfPayloadResult import com.x8bit.bitwarden.data.vault.manager.model.SyncVaultDataResult import io.mockk.awaits @@ -349,7 +349,7 @@ class CredentialExchangeImportManagerTest { every { policyManager.getActivePolicies(PolicyType.RESTRICTED_ITEM_TYPES) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "mockId-1", type = PolicyType.RESTRICTED_ITEM_TYPES, enabled = true, @@ -444,7 +444,7 @@ class CredentialExchangeImportManagerTest { every { policyManager.getActivePolicies(PolicyType.RESTRICTED_ITEM_TYPES) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "mockId-1", type = PolicyType.RESTRICTED_ITEM_TYPES, enabled = false, @@ -495,7 +495,7 @@ class CredentialExchangeImportManagerTest { every { policyManager.getActivePolicies(PolicyType.RESTRICTED_ITEM_TYPES) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "mockId-1", type = PolicyType.RESTRICTED_ITEM_TYPES, enabled = true, diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/manager/VaultMigrationManagerTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/manager/VaultMigrationManagerTest.kt index 05fd5d9b5a..17adc1f045 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/manager/VaultMigrationManagerTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/manager/VaultMigrationManagerTest.kt @@ -29,8 +29,8 @@ import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockCipherView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockCollectionView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockDecryptCipherListResult import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockEncryptionContext -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkCipher +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.data.vault.manager.model.GetCipherResult import com.x8bit.bitwarden.data.vault.manager.model.VaultMigrationData import com.x8bit.bitwarden.data.vault.repository.VaultRepository @@ -134,7 +134,7 @@ class VaultMigrationManagerTest { fakeAuthDiskSource.userState = MOCK_USER_STATE // Setup conditions for migration - val mockPolicy = createMockPolicyView(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) + val mockPolicy = createMockSdkPolicy(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) every { policyManager.getActivePolicies(PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf(mockPolicy) @@ -210,7 +210,7 @@ class VaultMigrationManagerTest { val userId = "mockId-1" fakeAuthDiskSource.userState = MOCK_USER_STATE - val mockPolicy = createMockPolicyView(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) + val mockPolicy = createMockSdkPolicy(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) every { policyManager.getActivePolicies(PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf(mockPolicy) @@ -246,7 +246,7 @@ class VaultMigrationManagerTest { fakeAuthDiskSource.userState = MOCK_USER_STATE fakeNetworkConnectionManager.fakeIsNetworkConnected = false - val mockPolicy = createMockPolicyView(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) + val mockPolicy = createMockSdkPolicy(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) every { policyManager.getActivePolicies(PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf(mockPolicy) @@ -286,7 +286,7 @@ class VaultMigrationManagerTest { val userId = "mockId-1" fakeAuthDiskSource.userState = MOCK_USER_STATE - val mockPolicy = createMockPolicyView(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) + val mockPolicy = createMockSdkPolicy(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) every { policyManager.getActivePolicies(PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf(mockPolicy) @@ -317,7 +317,7 @@ class VaultMigrationManagerTest { val userId = "mockId-1" fakeAuthDiskSource.userState = MOCK_USER_STATE - val mockPolicy = createMockPolicyView(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) + val mockPolicy = createMockSdkPolicy(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) every { policyManager.getActivePolicies(PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf(mockPolicy) @@ -351,7 +351,7 @@ class VaultMigrationManagerTest { val userId = "mockId-1" fakeAuthDiskSource.userState = MOCK_USER_STATE - val mockPolicy = createMockPolicyView(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) + val mockPolicy = createMockSdkPolicy(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) every { policyManager.getActivePolicies(PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf(mockPolicy) @@ -388,7 +388,7 @@ class VaultMigrationManagerTest { val userId = "mockId-1" fakeAuthDiskSource.userState = MOCK_USER_STATE - val mockPolicy = createMockPolicyView(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) + val mockPolicy = createMockSdkPolicy(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) every { policyManager.getActivePolicies(PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf(mockPolicy) @@ -430,7 +430,7 @@ class VaultMigrationManagerTest { val userId = "mockId-1" fakeAuthDiskSource.userState = MOCK_USER_STATE - val mockPolicy = createMockPolicyView(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) + val mockPolicy = createMockSdkPolicy(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) every { policyManager.getActivePolicies(PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf(mockPolicy) @@ -469,7 +469,7 @@ class VaultMigrationManagerTest { // Set sync time as null (never synced) mutableLastSyncTimeFlow.value = null - val mockPolicy = createMockPolicyView(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) + val mockPolicy = createMockSdkPolicy(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) every { policyManager.getActivePolicies(PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf(mockPolicy) @@ -513,7 +513,7 @@ class VaultMigrationManagerTest { // where lastSyncTime was cleared without clearing cipher data mutableLastSyncTimeFlow.value = null - val mockPolicy = createMockPolicyView(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) + val mockPolicy = createMockSdkPolicy(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) every { policyManager.getActivePolicies(PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf(mockPolicy) @@ -566,7 +566,7 @@ class VaultMigrationManagerTest { fakeAuthDiskSource.userState = MOCK_USER_STATE fakeNetworkConnectionManager.fakeIsNetworkConnected = false - val mockPolicy = createMockPolicyView(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) + val mockPolicy = createMockSdkPolicy(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) every { policyManager.getActivePolicies(PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf(mockPolicy) @@ -619,7 +619,7 @@ class VaultMigrationManagerTest { val userId = "mockId-1" fakeAuthDiskSource.userState = MOCK_USER_STATE - val mockPolicy = createMockPolicyView(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) + val mockPolicy = createMockSdkPolicy(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) every { policyManager.getActivePolicies(PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf(mockPolicy) diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkCipherExtensionsTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkCipherExtensionsTest.kt index 3698ea695a..c641affb6c 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkCipherExtensionsTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkCipherExtensionsTest.kt @@ -489,7 +489,6 @@ class VaultSdkCipherExtensionsTest { assertEquals("mockOrganizationId-1", result.organizationId) assertEquals("mockFolderId-1", result.folderId) assertEquals(listOf("mockCollectionId-1"), result.collectionIds) - assertEquals("mockKey-1", result.key) assertEquals("mockName-1", result.name) assertEquals("", result.subtitle) assertEquals(0.toUInt(), result.attachments) @@ -522,7 +521,6 @@ class VaultSdkCipherExtensionsTest { assertEquals("mockOrganizationId-1", result.organizationId) assertEquals("mockFolderId-1", result.folderId) assertEquals(listOf("mockCollectionId-1"), result.collectionIds) - assertEquals("mockKey-1", result.key) assertEquals("mockName-1", result.name) assertEquals("", result.subtitle) assertEquals(0.toUInt(), result.attachments) diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkPolicyExtensionsTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkPolicyExtensionsTest.kt index f438d6af40..cbde6a3c35 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkPolicyExtensionsTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/data/vault/repository/util/VaultSdkPolicyExtensionsTest.kt @@ -3,9 +3,9 @@ package com.x8bit.bitwarden.data.vault.repository.util import com.bitwarden.network.model.PolicyTypeJson import com.bitwarden.network.model.SyncResponseJson import com.bitwarden.network.model.createMockPolicy +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import kotlinx.serialization.json.JsonPrimitive import kotlinx.serialization.json.buildJsonObject import org.junit.Test @@ -14,45 +14,45 @@ import org.junit.jupiter.api.Assertions.assertEquals class VaultSdkPolicyExtensionsTest { @Test - fun `toSdkPolicyViews should return empty list when given empty list`() { + fun `toSdkPolicies should return empty list when given empty list`() { assertEquals( - emptyList(), - emptyList().toSdkPolicyViews(), + emptyList(), + emptyList().toSdkPolicies(), ) } @Test - fun `toSdkPolicyViews should convert all policies in a list`() { + fun `toSdkPolicies should convert all policies in a list`() { assertEquals( listOf( - createMockPolicyView(number = 1), - createMockPolicyView(number = 2), + createMockSdkPolicy(number = 1), + createMockSdkPolicy(number = 2), ), listOf( createMockPolicy(number = 1), createMockPolicy(number = 2), ) - .toSdkPolicyViews(), + .toSdkPolicies(), ) } @Test - fun `toSdkPolicyViews should serialize JsonObject data to a JSON string`() { + fun `toSdkPolicies should serialize JsonObject data to a JSON string`() { assertEquals( - listOf(createMockPolicyView(data = """{"key":"value"}""")), + listOf(createMockSdkPolicy(data = """{"key":"value"}""")), listOf( createMockPolicy(data = buildJsonObject { put("key", JsonPrimitive("value")) }), ) - .toSdkPolicyViews(), + .toSdkPolicies(), ) } @Test - fun `toSdkPolicyViews should map all PolicyTypeJson values to their SDK equivalents`() { + fun `toSdkPolicies should map all PolicyTypeJson values to their SDK equivalents`() { POLICY_TYPE_MAP.forEach { (inputType, expectedType) -> assertEquals( - listOf(createMockPolicyView(type = expectedType)), - listOf(createMockPolicy(type = inputType)).toSdkPolicyViews(), + listOf(createMockSdkPolicy(type = expectedType)), + listOf(createMockPolicy(type = inputType)).toSdkPolicies(), ) } } diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/SearchViewModelTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/SearchViewModelTest.kt index c87ea4d2e4..ee07d0efde 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/SearchViewModelTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/search/SearchViewModelTest.kt @@ -9,8 +9,8 @@ import com.bitwarden.core.data.manager.model.FlagKey import com.bitwarden.core.data.repository.model.DataState import com.bitwarden.core.data.repository.util.bufferedMutableSharedFlow import com.bitwarden.data.repository.model.Environment +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.bitwarden.send.SendType import com.bitwarden.ui.platform.base.BaseViewModelTest import com.bitwarden.ui.platform.components.snackbar.model.BitwardenSnackbarData @@ -54,8 +54,8 @@ import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockDriversLice import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockFolderView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockLoginView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPassportView -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkFido2CredentialList +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSendView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockUriView import com.x8bit.bitwarden.data.vault.manager.model.GetCipherResult @@ -118,7 +118,7 @@ class SearchViewModelTest : BaseViewModelTest() { every { setText(text = any(), toastDescriptorOverride = any()) } just runs } - private val mutableActivePoliciesFlow: MutableStateFlow> = + private val mutableActivePoliciesFlow: MutableStateFlow> = MutableStateFlow(emptyList()) private val policyManager: PolicyManager = mockk { every { @@ -206,7 +206,7 @@ class SearchViewModelTest : BaseViewModelTest() { every { policyManager.getActivePolicies(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "Test Org", id = "testId", type = PolicyType.ORGANIZATION_DATA_OWNERSHIP, @@ -2294,7 +2294,7 @@ class SearchViewModelTest : BaseViewModelTest() { ) mutableActivePoliciesFlow.emit( listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "Test Organization", id = "testId", type = PolicyType.RESTRICTED_ITEM_TYPES, diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/AccountSecurityViewModelTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/AccountSecurityViewModelTest.kt index 82c1bbe784..3e94f78774 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/AccountSecurityViewModelTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/accountsecurity/AccountSecurityViewModelTest.kt @@ -8,8 +8,8 @@ import com.bitwarden.core.data.repository.util.bufferedMutableSharedFlow import com.bitwarden.core.util.isBuildVersionAtLeast import com.bitwarden.data.repository.model.Environment import com.bitwarden.network.model.OrganizationType +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.bitwarden.ui.platform.base.BaseViewModelTest import com.bitwarden.ui.platform.resource.BitwardenString import com.bitwarden.ui.util.asText @@ -31,7 +31,7 @@ import com.x8bit.bitwarden.data.platform.repository.model.BiometricsKeyResult import com.x8bit.bitwarden.data.platform.repository.model.VaultTimeout import com.x8bit.bitwarden.data.platform.repository.model.VaultTimeoutAction import com.x8bit.bitwarden.data.platform.repository.util.FakeEnvironmentRepository -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.data.vault.repository.VaultRepository import com.x8bit.bitwarden.ui.platform.components.toggle.UnlockWithPinState import com.x8bit.bitwarden.ui.platform.feature.settings.accountsecurity.AccountSecurityAction.AuthenticatorSyncToggle @@ -93,8 +93,8 @@ class AccountSecurityViewModelTest : BaseViewModelTest() { every { firstTimeStateFlow } returns mutableFirstTimeStateFlow every { storeShowUnlockSettingBadge(any()) } just runs } - private val mutableActivePolicyFlow = bufferedMutableSharedFlow>() - private val mutableRemovePinPolicyFlow = bufferedMutableSharedFlow>() + private val mutableActivePolicyFlow = bufferedMutableSharedFlow>() + private val mutableRemovePinPolicyFlow = bufferedMutableSharedFlow>() private val policyManager: PolicyManager = mockk { every { getActivePoliciesFlow(type = PolicyType.MAXIMUM_VAULT_TIMEOUT) @@ -142,7 +142,7 @@ class AccountSecurityViewModelTest : BaseViewModelTest() { ) mutableActivePolicyFlow.emit( listOf( - createMockPolicyView( + createMockSdkPolicy( enabled = true, type = PolicyType.MAXIMUM_VAULT_TIMEOUT, data = Json.encodeToString(policyInformation), @@ -170,7 +170,7 @@ class AccountSecurityViewModelTest : BaseViewModelTest() { mutableRemovePinPolicyFlow.emit( listOf( - createMockPolicyView( + createMockSdkPolicy( enabled = true, type = PolicyType.REMOVE_UNLOCK_WITH_PIN, organizationId = "organizationUser", @@ -194,7 +194,7 @@ class AccountSecurityViewModelTest : BaseViewModelTest() { mutableRemovePinPolicyFlow.emit( listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "organizationAdmin", enabled = true, type = PolicyType.REMOVE_UNLOCK_WITH_PIN, @@ -218,7 +218,7 @@ class AccountSecurityViewModelTest : BaseViewModelTest() { mutableRemovePinPolicyFlow.emit( listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "organizationOwner", enabled = true, type = PolicyType.REMOVE_UNLOCK_WITH_PIN, @@ -242,7 +242,7 @@ class AccountSecurityViewModelTest : BaseViewModelTest() { mutableRemovePinPolicyFlow.emit( listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "organizationCustom", enabled = true, type = PolicyType.REMOVE_UNLOCK_WITH_PIN, diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/exportvault/ExportVaultViewModelTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/exportvault/ExportVaultViewModelTest.kt index 30194f4329..37df713325 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/exportvault/ExportVaultViewModelTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/exportvault/ExportVaultViewModelTest.kt @@ -23,7 +23,7 @@ import com.x8bit.bitwarden.data.platform.manager.PolicyManager import com.x8bit.bitwarden.data.platform.manager.event.OrganizationEventManager import com.x8bit.bitwarden.data.platform.manager.model.FirstTimeState import com.x8bit.bitwarden.data.platform.manager.model.OrganizationEvent -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.data.vault.repository.VaultRepository import com.x8bit.bitwarden.data.vault.repository.model.ExportVaultDataResult import com.x8bit.bitwarden.ui.auth.feature.completeregistration.PasswordStrengthState @@ -87,7 +87,7 @@ class ExportVaultViewModelTest : BaseViewModelTest() { fun `initial state should be correct`() = runTest { every { policyManager.getActivePolicies(type = PolicyType.DISABLE_PERSONAL_VAULT_EXPORT) - } returns listOf(createMockPolicyView()) + } returns listOf(createMockSdkPolicy()) val viewModel = createViewModel() viewModel.stateFlow.test { @@ -143,7 +143,7 @@ class ExportVaultViewModelTest : BaseViewModelTest() { } returns ValidatePasswordResult.Success(isValid = true) every { policyManager.getActivePolicies(type = PolicyType.RESTRICTED_ITEM_TYPES) - } returns listOf(createMockPolicyView(enabled = true)) + } returns listOf(createMockSdkPolicy(enabled = true)) val viewModel = createViewModel() viewModel.trySendAction(ExportVaultAction.PasswordInputChanged(password)) diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/vault/VaultSettingsViewModelTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/vault/VaultSettingsViewModelTest.kt index 22f1f49afe..8486ba3613 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/vault/VaultSettingsViewModelTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/ui/platform/feature/settings/vault/VaultSettingsViewModelTest.kt @@ -3,8 +3,8 @@ package com.x8bit.bitwarden.ui.platform.feature.settings.vault import app.cash.turbine.test import com.bitwarden.core.data.manager.BuildInfoManager import com.bitwarden.core.data.repository.util.bufferedMutableSharedFlow +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.bitwarden.ui.platform.base.BaseViewModelTest import com.bitwarden.ui.platform.components.snackbar.model.BitwardenSnackbarData import com.bitwarden.ui.platform.manager.snackbar.SnackbarRelayManager @@ -36,7 +36,7 @@ class VaultSettingsViewModelTest : BaseViewModelTest() { every { firstTimeStateFlow } returns mutableFirstTimeStateFlow every { storeShowImportLoginsSettingsBadge(any()) } just runs } - private val mutablePoliciesFlow = bufferedMutableSharedFlow>() + private val mutablePoliciesFlow = bufferedMutableSharedFlow>() private val policyManager = mockk { every { getActivePolicies(any()) } returns emptyList() every { getActivePoliciesFlow(any()) } returns mutablePoliciesFlow diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/ui/tools/feature/generator/GeneratorViewModelTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/ui/tools/feature/generator/GeneratorViewModelTest.kt index a74c8778cd..ea69e404ed 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/ui/tools/feature/generator/GeneratorViewModelTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/ui/tools/feature/generator/GeneratorViewModelTest.kt @@ -7,8 +7,8 @@ import com.bitwarden.core.data.repository.util.bufferedMutableSharedFlow import com.bitwarden.data.repository.model.Environment import com.bitwarden.generators.PassphraseGeneratorRequest import com.bitwarden.generators.PasswordGeneratorRequest +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.bitwarden.ui.platform.base.BaseViewModelTest import com.bitwarden.ui.platform.resource.BitwardenString import com.bitwarden.ui.util.asText @@ -31,7 +31,7 @@ import com.x8bit.bitwarden.data.tools.generator.repository.model.GeneratorResult import com.x8bit.bitwarden.data.tools.generator.repository.model.PasscodeGenerationOptions import com.x8bit.bitwarden.data.tools.generator.repository.model.UsernameGenerationOptions import com.x8bit.bitwarden.data.tools.generator.repository.util.FakeGeneratorRepository -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.ui.tools.feature.generator.GeneratorState.MainType.Username.UsernameType.ForwardedEmailAlias.ServiceType import com.x8bit.bitwarden.ui.tools.feature.generator.GeneratorState.MainType.Username.UsernameType.ForwardedEmailAlias.ServiceTypeOption import com.x8bit.bitwarden.ui.tools.feature.generator.model.GeneratorMode @@ -106,7 +106,7 @@ class GeneratorViewModelTest : BaseViewModelTest() { ) } - private val mutablePolicyFlow = bufferedMutableSharedFlow>() + private val mutablePolicyFlow = bufferedMutableSharedFlow>() private val policyManager: PolicyManager = mockk { every { getActivePolicies(PolicyType.PASSWORD_GENERATOR) } returns emptyList() every { getActivePoliciesFlow(PolicyType.PASSWORD_GENERATOR) } returns mutablePolicyFlow @@ -230,7 +230,7 @@ class GeneratorViewModelTest : BaseViewModelTest() { } """ val policies = listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "organizationId", id = "id", type = PolicyType.PASSWORD_GENERATOR, @@ -586,7 +586,7 @@ class GeneratorViewModelTest : BaseViewModelTest() { @Test fun `Policy should overwrite password options if stricter`() { - val policy = createMockPolicyView( + val policy = createMockSdkPolicy( type = PolicyType.PASSWORD_GENERATOR, enabled = true, data = """ @@ -636,7 +636,7 @@ class GeneratorViewModelTest : BaseViewModelTest() { @Test fun `Policy should overwrite passphrase options if stricter`() { - val policy = createMockPolicyView( + val policy = createMockSdkPolicy( type = PolicyType.PASSWORD_GENERATOR, enabled = true, data = """ @@ -685,7 +685,7 @@ class GeneratorViewModelTest : BaseViewModelTest() { @Test fun `Policy should overwrite passwordType if has overridePasswordType`() { - val policy = createMockPolicyView( + val policy = createMockSdkPolicy( type = PolicyType.PASSWORD_GENERATOR, enabled = true, data = """ @@ -713,7 +713,7 @@ class GeneratorViewModelTest : BaseViewModelTest() { @Test fun `Policy should should prioritize password if multiple have OverridePasswordType`() { val policies = listOf( - createMockPolicyView( + createMockSdkPolicy( number = 1, type = PolicyType.PASSWORD_GENERATOR, enabled = true, @@ -723,7 +723,7 @@ class GeneratorViewModelTest : BaseViewModelTest() { } """, ), - createMockPolicyView( + createMockSdkPolicy( number = 1, type = PolicyType.PASSWORD_GENERATOR, enabled = true, diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditViewModelTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditViewModelTest.kt index 1e9f40b08c..d7de95aa8b 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditViewModelTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/addedit/VaultAddEditViewModelTest.kt @@ -70,9 +70,9 @@ import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createManageCollectio import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockCipherListView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockCipherView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockDecryptCipherListResult -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkCipherPermissions import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkFido2CredentialList +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createViewCollectionView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createViewExceptPasswordsCollectionView import com.x8bit.bitwarden.data.vault.manager.model.GetCipherResult @@ -337,7 +337,7 @@ class VaultAddEditViewModelTest : BaseViewModelTest() { every { policyManager.getActivePolicies(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "Test Org", id = "testId", type = PolicyType.ORGANIZATION_DATA_OWNERSHIP, @@ -5390,7 +5390,7 @@ class VaultAddEditViewModelTest : BaseViewModelTest() { every { policyManager.getActivePolicies(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "Test Org", id = "testId", type = PolicyType.ORGANIZATION_DATA_OWNERSHIP, diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/SelectAccountViewModelTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/SelectAccountViewModelTest.kt index 8d104eef1a..4ec451333c 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/SelectAccountViewModelTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/SelectAccountViewModelTest.kt @@ -4,8 +4,8 @@ import app.cash.turbine.test import com.bitwarden.core.data.repository.util.bufferedMutableSharedFlow import com.bitwarden.cxf.model.ImportCredentialsRequestData import com.bitwarden.data.repository.model.Environment +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.bitwarden.ui.platform.base.BaseViewModelTest import com.bitwarden.ui.platform.resource.BitwardenString import com.bitwarden.ui.util.asText @@ -17,7 +17,7 @@ import com.x8bit.bitwarden.data.platform.manager.PolicyManager import com.x8bit.bitwarden.data.platform.manager.SpecialCircumstanceManager import com.x8bit.bitwarden.data.platform.manager.model.FirstTimeState import com.x8bit.bitwarden.data.platform.manager.model.SpecialCircumstance -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.ui.vault.feature.exportitems.model.AccountSelectionListItem import com.x8bit.bitwarden.ui.vault.feature.exportitems.selectaccount.SelectAccountAction import com.x8bit.bitwarden.ui.vault.feature.exportitems.selectaccount.SelectAccountEvent @@ -36,8 +36,8 @@ import org.junit.jupiter.api.Test class SelectAccountViewModelTest : BaseViewModelTest() { private val mutableUserUserStateFlow = MutableStateFlow(DEFAULT_USER_STATE) - private val mutableRestrictItemTypesFlow = bufferedMutableSharedFlow>() - private val mutablePersonalOwnershipPolicyFlow = bufferedMutableSharedFlow>() + private val mutableRestrictItemTypesFlow = bufferedMutableSharedFlow>() + private val mutablePersonalOwnershipPolicyFlow = bufferedMutableSharedFlow>() private val authRepository = mockk { every { userStateFlow } returns mutableUserUserStateFlow @@ -215,7 +215,7 @@ class SelectAccountViewModelTest : BaseViewModelTest() { SelectAccountAction.Internal.SelectionDataReceive( userState = DEFAULT_USER_STATE.copy(accounts = listOf(accountInOrg)), itemRestrictedOrgs = listOf( - createMockPolicyView( + createMockSdkPolicy( id = organizationId, enabled = true, ), diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/reviewexport/ReviewExportViewModelTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/reviewexport/ReviewExportViewModelTest.kt index baf9f21ecc..f1d9347889 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/reviewexport/ReviewExportViewModelTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/reviewexport/ReviewExportViewModelTest.kt @@ -25,7 +25,7 @@ import com.x8bit.bitwarden.data.platform.manager.model.SpecialCircumstance import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockCardListView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockCipherListView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockDecryptCipherListResult -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.data.vault.repository.VaultRepository import io.mockk.awaits import io.mockk.coEvery @@ -187,7 +187,7 @@ class ReviewExportViewModelTest : BaseViewModelTest() { every { policyManager.getActivePolicies(PolicyType.RESTRICTED_ITEM_TYPES) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( type = PolicyType.RESTRICTED_ITEM_TYPES, enabled = true, ), diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/verifypassword/VerifyPasswordViewModelTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/verifypassword/VerifyPasswordViewModelTest.kt index 4c16ee2ffa..6b54b2510a 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/verifypassword/VerifyPasswordViewModelTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/exportitems/verifypassword/VerifyPasswordViewModelTest.kt @@ -23,7 +23,7 @@ import com.x8bit.bitwarden.data.platform.manager.PolicyManager import com.x8bit.bitwarden.data.platform.manager.SpecialCircumstanceManager import com.x8bit.bitwarden.data.platform.manager.model.FirstTimeState import com.x8bit.bitwarden.data.platform.manager.model.SpecialCircumstance -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.data.vault.repository.VaultRepository import com.x8bit.bitwarden.data.vault.repository.model.VaultUnlockResult import com.x8bit.bitwarden.ui.vault.feature.exportitems.model.AccountSelectionListItem @@ -61,7 +61,7 @@ class VerifyPasswordViewModelTest : BaseViewModelTest() { } private val policyManager = mockk { every { getActivePolicies(PolicyType.RESTRICTED_ITEM_TYPES) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = DEFAULT_ORGANIZATION_ID, enabled = false, ), @@ -137,7 +137,7 @@ class VerifyPasswordViewModelTest : BaseViewModelTest() { every { policyManager.getActivePolicies(PolicyType.RESTRICTED_ITEM_TYPES) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = DEFAULT_ORGANIZATION_ID, enabled = true, ), diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/importitems/ImportItemsViewModelTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/importitems/ImportItemsViewModelTest.kt index 3490ffbdc6..41fe83f5f5 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/importitems/ImportItemsViewModelTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/importitems/ImportItemsViewModelTest.kt @@ -13,7 +13,7 @@ import com.bitwarden.ui.platform.resource.BitwardenString import com.bitwarden.ui.util.asPluralsText import com.bitwarden.ui.util.asText import com.x8bit.bitwarden.data.platform.manager.PolicyManager -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.data.vault.manager.model.SyncVaultDataResult import com.x8bit.bitwarden.data.vault.repository.VaultRepository import com.x8bit.bitwarden.data.vault.repository.model.ImportCredentialsResult @@ -100,7 +100,7 @@ class ImportItemsViewModelTest : BaseViewModelTest() { every { policyManager.getActivePolicies(PolicyType.RESTRICTED_ITEM_TYPES) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "org-id", id = "policy-id", type = PolicyType.RESTRICTED_ITEM_TYPES, diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingViewModelTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingViewModelTest.kt index c03b62138d..cbf474320e 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingViewModelTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingViewModelTest.kt @@ -25,8 +25,8 @@ import com.bitwarden.core.data.util.asSuccess import com.bitwarden.data.repository.model.Environment import com.bitwarden.data.repository.util.baseIconUrl import com.bitwarden.data.repository.util.baseWebSendUrl +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.bitwarden.send.SendType import com.bitwarden.ui.platform.base.BaseViewModelTest import com.bitwarden.ui.platform.components.account.model.AccountSummary @@ -96,8 +96,8 @@ import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockDriversLice import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockFolderView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockLoginListView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPassportView -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkFido2CredentialList +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSendView import com.x8bit.bitwarden.data.vault.manager.model.GetCipherResult import com.x8bit.bitwarden.data.vault.repository.VaultRepository @@ -219,7 +219,7 @@ class VaultItemListingViewModelTest : BaseViewModelTest() { authRepository = mockAuthRepository, dispatcherManager = FakeDispatcherManager(), ) - private val mutableActivePoliciesFlow: MutableStateFlow> = + private val mutableActivePoliciesFlow: MutableStateFlow> = MutableStateFlow(emptyList()) private val policyManager: PolicyManager = mockk { every { getEffectiveSendPolicy() } returns DEFAULT_EFFECTIVE_SEND_POLICY @@ -397,7 +397,7 @@ class VaultItemListingViewModelTest : BaseViewModelTest() { ) mutableActivePoliciesFlow.emit( listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "Test Organization", id = "testId", type = PolicyType.RESTRICTED_ITEM_TYPES, @@ -1683,7 +1683,7 @@ class VaultItemListingViewModelTest : BaseViewModelTest() { ) mutableActivePoliciesFlow.emit( listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "Test Organization", id = "testId", type = PolicyType.RESTRICTED_ITEM_TYPES, @@ -1723,7 +1723,7 @@ class VaultItemListingViewModelTest : BaseViewModelTest() { ) mutableActivePoliciesFlow.emit( listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "Test Organization", id = "testId", type = PolicyType.RESTRICTED_ITEM_TYPES, diff --git a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/vault/VaultViewModelTest.kt b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/vault/VaultViewModelTest.kt index eac9f46b81..ac1724e9ec 100644 --- a/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/vault/VaultViewModelTest.kt +++ b/app/src/test/kotlin/com/x8bit/bitwarden/ui/vault/feature/vault/VaultViewModelTest.kt @@ -9,8 +9,8 @@ import com.bitwarden.data.datasource.disk.model.FlightRecorderDataSet import com.bitwarden.data.repository.model.Environment import com.bitwarden.data.repository.util.baseIconUrl import com.bitwarden.network.exception.CookieRedirectException +import com.bitwarden.policies.Policy import com.bitwarden.policies.PolicyType -import com.bitwarden.policies.PolicyView import com.bitwarden.ui.platform.base.BaseViewModelTest import com.bitwarden.ui.platform.components.account.model.AccountSummary import com.bitwarden.ui.platform.components.snackbar.model.BitwardenSnackbarData @@ -62,8 +62,8 @@ import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockFolderView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockLoginListView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockLoginView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPassportView -import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockPolicyView import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkCipher +import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSdkPolicy import com.x8bit.bitwarden.data.vault.datasource.sdk.model.createMockSendView import com.x8bit.bitwarden.data.vault.manager.model.GetCipherResult import com.x8bit.bitwarden.data.vault.manager.model.SyncVaultDataResult @@ -133,7 +133,7 @@ class VaultViewModelTest : BaseViewModelTest() { every { setText(text = any(), toastDescriptorOverride = any()) } just runs } - private val mutableActivePoliciesFlow: MutableStateFlow> = + private val mutableActivePoliciesFlow: MutableStateFlow> = MutableStateFlow(emptyList()) private val policyManager: PolicyManager = mockk { every { @@ -848,7 +848,7 @@ class VaultViewModelTest : BaseViewModelTest() { every { policyManager.getActivePolicies(type = PolicyType.ORGANIZATION_DATA_OWNERSHIP) } returns listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "Test Organization", id = "testId", type = PolicyType.ORGANIZATION_DATA_OWNERSHIP, @@ -939,7 +939,7 @@ class VaultViewModelTest : BaseViewModelTest() { ) mutableActivePoliciesFlow.emit( listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "Test Organization", id = "testId", type = PolicyType.RESTRICTED_ITEM_TYPES, @@ -4331,7 +4331,7 @@ class VaultViewModelTest : BaseViewModelTest() { val viewModel = createViewModel() mutableActivePoliciesFlow.emit( listOf( - createMockPolicyView( + createMockSdkPolicy( organizationId = "Test Organization", id = "testId", type = PolicyType.RESTRICTED_ITEM_TYPES, diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 3cebcd4313..5fa3643f81 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -29,7 +29,7 @@ androidxRoom = "2.8.4" androidxSecurityCrypto = "1.1.0" androidxSplash = "1.2.0" androidxWork = "2.11.2" -bitwardenSdk = "3.0.0-8946-8b9fa3e2" +bitwardenSdk = "3.0.0-9018-167d44ec" crashlytics = "3.0.8" detekt = "1.23.8" firebaseBom = "34.18.0"