mirror of
https://github.com/bitwarden/android.git
synced 2026-10-22 02:53:19 -05:00
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>
This commit is contained in:
48 files changed
+290
-258
No files matched your search
@@ -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<PolicyView>,
|
||||
policies: List<Policy>,
|
||||
organizations: List<OrganizationUserPolicyContext>,
|
||||
policyType: PolicyType,
|
||||
): Result<List<PolicyView>>
|
||||
): Result<List<Policy>>
|
||||
}
|
||||
+3
-3
@@ -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<PolicyView>,
|
||||
policies: List<Policy>,
|
||||
organizations: List<OrganizationUserPolicyContext>,
|
||||
policyType: PolicyType,
|
||||
): Result<List<PolicyView>> = runCatchingWithLogs {
|
||||
): Result<List<Policy>> = runCatchingWithLogs {
|
||||
globalClient.policies().filterByType(
|
||||
policies = policies,
|
||||
organizationUserPolicyContexts = organizations,
|
||||
|
||||
@@ -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<PolicyView> = policyManager.getUserPolicies(
|
||||
): List<Policy> = policyManager.getUserPolicies(
|
||||
userId = userId,
|
||||
type = policyType,
|
||||
)
|
||||
|
||||
+3
-3
@@ -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 -> {
|
||||
|
||||
+2
-2
@@ -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<PolicyView>,
|
||||
getUserPolicies: (userId: String, policy: PolicyType) -> List<Policy>,
|
||||
): UserState =
|
||||
UserState(
|
||||
activeUserId = this.activeUserId,
|
||||
|
||||
@@ -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<List<PolicyView>>
|
||||
fun getActivePoliciesFlow(type: PolicyType): Flow<List<Policy>>
|
||||
|
||||
/**
|
||||
* Get all the policies of the given [type] that are enabled and applicable to the user.
|
||||
*/
|
||||
fun getActivePolicies(type: PolicyType): List<PolicyView>
|
||||
fun getActivePolicies(type: PolicyType): List<Policy>
|
||||
|
||||
/**
|
||||
* Returns the current, precedence-resolved [EffectiveSendPolicy] for the active user. When
|
||||
@@ -38,7 +38,7 @@ interface PolicyManager {
|
||||
fun getUserPolicies(
|
||||
userId: String,
|
||||
type: PolicyType,
|
||||
): List<PolicyView>
|
||||
): List<Policy>
|
||||
|
||||
/**
|
||||
* Get the organization id of the personal ownership policy.
|
||||
|
||||
+15
-15
@@ -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<List<PolicyView>> =
|
||||
override fun getActivePoliciesFlow(type: PolicyType): Flow<List<Policy>> =
|
||||
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<PolicyView> =
|
||||
override fun getActivePolicies(type: PolicyType): List<Policy> =
|
||||
authDiskSource
|
||||
.userState
|
||||
?.activeUserId
|
||||
@@ -75,13 +75,13 @@ class PolicyManagerImpl(
|
||||
override fun getUserPolicies(
|
||||
userId: String,
|
||||
type: PolicyType,
|
||||
): List<PolicyView> =
|
||||
): List<Policy> =
|
||||
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<List<PolicyView>> = combine(
|
||||
): Flow<List<Policy>> = 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<PolicyView>?,
|
||||
policies: List<Policy>?,
|
||||
organizations: List<OrganizationUserPolicyContext>?,
|
||||
): List<PolicyView>? =
|
||||
): List<Policy>? =
|
||||
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<PolicyView>,
|
||||
disableSendPolicies: List<Policy>,
|
||||
isSendControlsEnabled: Boolean,
|
||||
sendControlsPolicies: List<PolicyView>,
|
||||
sendOptionsPolicies: List<PolicyView>,
|
||||
sendControlsPolicies: List<Policy>,
|
||||
sendOptionsPolicies: List<Policy>,
|
||||
): EffectiveSendPolicy {
|
||||
if (!isSendControlsEnabled) {
|
||||
return EffectiveSendPolicy(
|
||||
|
||||
+3
-3
@@ -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,
|
||||
|
||||
+2
-2
@@ -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<PolicyView>,
|
||||
policies: List<Policy>,
|
||||
) {
|
||||
// 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
|
||||
|
||||
+1
-1
@@ -657,7 +657,7 @@ class VaultSdkSourceImpl(
|
||||
vararg cipherViews: CipherView,
|
||||
): Result<List<Fido2CredentialAutofillView>> = runCatchingWithLogs {
|
||||
val fido2 = getClient(userId = userId).platform().fido2()
|
||||
cipherViews.flatMap { fido2.decryptFido2AutofillCredentials(cipherView = it) }
|
||||
cipherViews.flatMap { fido2.getFido2AutofillCredentials(cipherView = it) }
|
||||
}
|
||||
|
||||
override suspend fun silentlyDiscoverCredentials(
|
||||
|
||||
-1
@@ -838,7 +838,6 @@ fun Cipher.toFailureCipherListView(): CipherListView =
|
||||
organizationId = organizationId,
|
||||
folderId = folderId,
|
||||
collectionIds = collectionIds,
|
||||
key = key,
|
||||
name = name.orEmpty(),
|
||||
subtitle = "",
|
||||
type = when (type) {
|
||||
|
||||
+7
-7
@@ -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<SyncResponseJson.Policy>.toSdkPolicyViews(): List<PolicyView> =
|
||||
this.map { it.toSdkPolicyView() }
|
||||
fun List<SyncResponseJson.Policy>.toSdkPolicies(): List<Policy> =
|
||||
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,
|
||||
|
||||
+11
-10
@@ -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<LoginUriView>?.toUriItems(): List<UriItem> =
|
||||
* Retrieves the cipher's primary (first) FIDO2 credential, or null if there is no FIDO2 credential
|
||||
* assigned.
|
||||
*/
|
||||
private fun List<Fido2Credential>?.getPrimaryFido2CredentialOrNull(
|
||||
private fun List<Fido2CredentialView>?.getPrimaryFido2CredentialOrNull(
|
||||
isClone: Boolean,
|
||||
): Fido2Credential? {
|
||||
): Fido2CredentialView? {
|
||||
if (isNullOrEmpty() || isClone) return null
|
||||
|
||||
return first()
|
||||
@@ -436,10 +436,11 @@ private fun List<Fido2Credential>?.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,
|
||||
),
|
||||
)
|
||||
+2
-2
@@ -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<PolicyView>,
|
||||
val itemRestrictedOrgs: List<Policy>,
|
||||
) : Internal()
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -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,
|
||||
|
||||
+3
-3
@@ -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<PolicyView>())
|
||||
val policies = listOf(mockk<Policy>())
|
||||
val organizations = listOf(mockk<OrganizationUserPolicyContext>())
|
||||
val policyType = mockk<PolicyType>()
|
||||
val expectedResult = listOf(mockk<PolicyView>())
|
||||
val expectedResult = listOf(mockk<Policy>())
|
||||
every {
|
||||
clientPolicies.filterByType(
|
||||
policies = policies,
|
||||
|
||||
@@ -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,
|
||||
|
||||
+7
-7
@@ -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,
|
||||
)
|
||||
|
||||
+3
-3
@@ -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,
|
||||
|
||||
+2
-2
@@ -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)
|
||||
|
||||
+2
-2
@@ -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<PolicyView> = listOf(mockk())
|
||||
val policies: List<Policy> = listOf(mockk())
|
||||
every { settingsRepository.isAutofillSavePromptDisabled } returns false
|
||||
every {
|
||||
policyManager.getActivePolicies(PolicyType.ORGANIZATION_DATA_OWNERSHIP)
|
||||
|
||||
+42
-42
@@ -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<PolicyView>().asSuccess()
|
||||
} returns emptyList<Policy>().asSuccess()
|
||||
|
||||
assertTrue(policyManager.getActivePolicies(type = PolicyType.MASTER_PASSWORD).isEmpty())
|
||||
}
|
||||
@@ -183,7 +183,7 @@ class PolicyManagerTest {
|
||||
organizations = any(),
|
||||
policyType = any(),
|
||||
)
|
||||
} returns emptyList<PolicyView>().asSuccess()
|
||||
} returns emptyList<Policy>().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<PolicyView>(),
|
||||
emptyList<Policy>(),
|
||||
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<PolicyView>().asSuccess()
|
||||
} returns emptyList<Policy>().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<PolicyView>().asSuccess()
|
||||
} returns emptyList<Policy>().asSuccess()
|
||||
every {
|
||||
authSdkSource.filterPolicies(
|
||||
policies = any(),
|
||||
organizations = any(),
|
||||
policyType = PolicyType.SEND_OPTIONS,
|
||||
)
|
||||
} returns emptyList<PolicyView>().asSuccess()
|
||||
} returns emptyList<Policy>().asSuccess()
|
||||
every {
|
||||
authSdkSource.filterPolicies(
|
||||
policies = any(),
|
||||
@@ -901,8 +901,8 @@ class PolicyManagerTest {
|
||||
policyType = PolicyType.DISABLE_SEND,
|
||||
)
|
||||
} returnsMany listOf(
|
||||
emptyList<PolicyView>().asSuccess(),
|
||||
listOf(createMockPolicyView(organizationId = organizations.id, enabled = true))
|
||||
emptyList<Policy>().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<PolicyView>().asSuccess()
|
||||
} returns emptyList<Policy>().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<PolicyView> = emptyList(),
|
||||
sendControlsPolicies: List<PolicyView> = emptyList(),
|
||||
sendOptionsPolicies: List<PolicyView> = emptyList(),
|
||||
disableSendPolicies: List<Policy> = emptyList(),
|
||||
sendControlsPolicies: List<Policy> = emptyList(),
|
||||
sendOptionsPolicies: List<Policy> = emptyList(),
|
||||
) {
|
||||
val userState: UserStateJson = mockk {
|
||||
every { activeUserId } returns USER_ID
|
||||
|
||||
+4
-4
@@ -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(
|
||||
|
||||
+9
-9
@@ -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<PolicyView>())
|
||||
private val userPolicies = mutableMapOf<String, List<PolicyView>>()
|
||||
private val mutablePoliciesFlow = MutableStateFlow(emptyList<Policy>())
|
||||
private val userPolicies = mutableMapOf<String, List<Policy>>()
|
||||
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",
|
||||
|
||||
+5
-5
@@ -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<List<PolicyView>>()
|
||||
private val mutablePolicyFlow = bufferedMutableSharedFlow<List<Policy>>()
|
||||
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,
|
||||
|
||||
+12
-12
@@ -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<List<PolicyView>>()
|
||||
private val mutableActivePolicyFlow = bufferedMutableSharedFlow<List<Policy>>()
|
||||
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(
|
||||
|
||||
+2
-2
@@ -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<Fido2ClientException>("mockException"))
|
||||
|
||||
val result = vaultSdkSource.decryptFido2CredentialAutofillViews(
|
||||
|
||||
-2
@@ -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<CopyableCipherFields> = listOf(
|
||||
@@ -73,7 +72,6 @@ fun createMockCipherListView(
|
||||
viewPassword = viewPassword,
|
||||
permissions = permissions,
|
||||
localData = localData,
|
||||
key = key,
|
||||
subtitle = subtitle,
|
||||
hasOldAttachments = hasOldAttachments,
|
||||
copyableFields = copyableFields,
|
||||
|
||||
+7
-7
@@ -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<Fido2Credential>? = null,
|
||||
fido2Credentials: List<Fido2CredentialView>? = 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<LoginUriView>? = listOf(createMockUriView(number = number)),
|
||||
fido2Credentials: List<Fido2Credential>? = createMockSdkFido2CredentialList(number, clock),
|
||||
fido2Credentials: List<Fido2CredentialView>? = 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<Fido2Credential> = listOf(createMockSdkFido2Credential(number = number, clock = clock))
|
||||
): List<Fido2CredentialView> = 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",
|
||||
|
||||
+37
-1
@@ -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<Fido2Credential> = 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].
|
||||
*/
|
||||
|
||||
+5
-5
@@ -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,
|
||||
+4
-4
@@ -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,
|
||||
|
||||
+13
-13
@@ -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)
|
||||
|
||||
-2
@@ -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)
|
||||
|
||||
+15
-15
@@ -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<PolicyView>(),
|
||||
emptyList<SyncResponseJson.Policy>().toSdkPolicyViews(),
|
||||
emptyList<Policy>(),
|
||||
emptyList<SyncResponseJson.Policy>().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(),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
+5
-5
@@ -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<String>(), toastDescriptorOverride = any<Text>()) } just runs
|
||||
}
|
||||
|
||||
private val mutableActivePoliciesFlow: MutableStateFlow<List<PolicyView>> =
|
||||
private val mutableActivePoliciesFlow: MutableStateFlow<List<Policy>> =
|
||||
MutableStateFlow(emptyList())
|
||||
private val policyManager: PolicyManager = mockk<PolicyManager> {
|
||||
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,
|
||||
|
||||
+9
-9
@@ -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<List<PolicyView>>()
|
||||
private val mutableRemovePinPolicyFlow = bufferedMutableSharedFlow<List<PolicyView>>()
|
||||
private val mutableActivePolicyFlow = bufferedMutableSharedFlow<List<Policy>>()
|
||||
private val mutableRemovePinPolicyFlow = bufferedMutableSharedFlow<List<Policy>>()
|
||||
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,
|
||||
|
||||
+3
-3
@@ -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))
|
||||
|
||||
+2
-2
@@ -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<List<PolicyView>>()
|
||||
private val mutablePoliciesFlow = bufferedMutableSharedFlow<List<Policy>>()
|
||||
private val policyManager = mockk<PolicyManager> {
|
||||
every { getActivePolicies(any()) } returns emptyList()
|
||||
every { getActivePoliciesFlow(any()) } returns mutablePoliciesFlow
|
||||
|
||||
+9
-9
@@ -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<List<PolicyView>>()
|
||||
private val mutablePolicyFlow = bufferedMutableSharedFlow<List<Policy>>()
|
||||
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,
|
||||
|
||||
+3
-3
@@ -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,
|
||||
|
||||
+5
-5
@@ -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<List<PolicyView>>()
|
||||
private val mutablePersonalOwnershipPolicyFlow = bufferedMutableSharedFlow<List<PolicyView>>()
|
||||
private val mutableRestrictItemTypesFlow = bufferedMutableSharedFlow<List<Policy>>()
|
||||
private val mutablePersonalOwnershipPolicyFlow = bufferedMutableSharedFlow<List<Policy>>()
|
||||
|
||||
private val authRepository = mockk<AuthRepository> {
|
||||
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,
|
||||
),
|
||||
|
||||
+2
-2
@@ -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,
|
||||
),
|
||||
|
||||
+3
-3
@@ -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<PolicyManager> {
|
||||
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,
|
||||
),
|
||||
|
||||
+2
-2
@@ -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,
|
||||
|
||||
+6
-6
@@ -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<List<PolicyView>> =
|
||||
private val mutableActivePoliciesFlow: MutableStateFlow<List<Policy>> =
|
||||
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,
|
||||
|
||||
+6
-6
@@ -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<String>(), toastDescriptorOverride = any<Text>()) } just runs
|
||||
}
|
||||
|
||||
private val mutableActivePoliciesFlow: MutableStateFlow<List<PolicyView>> =
|
||||
private val mutableActivePoliciesFlow: MutableStateFlow<List<Policy>> =
|
||||
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,
|
||||
|
||||
@@ -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"
|
||||
|
||||
Reference in new issue
Block a user