mirror of
https://github.com/bitwarden/android.git
synced 2025-12-11 04:39:19 -06:00
Update test fixtures to allow for easier customization (#5224)
This commit is contained in:
parent
fc4f02c4d5
commit
4895f2a18a
@ -3,6 +3,7 @@ package com.x8bit.bitwarden.data.auth.repository.util
|
||||
import com.bitwarden.network.model.OrganizationType
|
||||
import com.bitwarden.network.model.PolicyTypeJson
|
||||
import com.bitwarden.network.model.createMockOrganization
|
||||
import com.bitwarden.network.model.createMockPermissions
|
||||
import com.bitwarden.network.model.createMockPolicy
|
||||
import com.x8bit.bitwarden.data.auth.repository.model.Organization
|
||||
import com.x8bit.bitwarden.data.auth.repository.model.PolicyInformation
|
||||
@ -54,11 +55,12 @@ class SyncResponseJsonExtensionsTest {
|
||||
),
|
||||
),
|
||||
listOf(
|
||||
createMockOrganization(number = 1).copy(
|
||||
shouldUseKeyConnector = true,
|
||||
createMockOrganization(number = 1, shouldUseKeyConnector = true),
|
||||
createMockOrganization(
|
||||
number = 2,
|
||||
type = OrganizationType.USER,
|
||||
permissions = createMockPermissions(shouldManageResetPassword = true),
|
||||
),
|
||||
createMockOrganization(number = 2, shouldManageResetPassword = true)
|
||||
.copy(type = OrganizationType.USER),
|
||||
)
|
||||
.toOrganizations(),
|
||||
)
|
||||
|
||||
@ -11,10 +11,10 @@ import com.bitwarden.network.model.SyncResponseJson
|
||||
import com.bitwarden.network.model.UpdateCipherCollectionsJsonRequest
|
||||
import com.bitwarden.network.model.UpdateCipherResponseJson
|
||||
import com.bitwarden.network.model.createMockAttachment
|
||||
import com.bitwarden.network.model.createMockAttachmentJsonResponse
|
||||
import com.bitwarden.network.model.createMockAttachmentResponse
|
||||
import com.bitwarden.network.model.createMockCipher
|
||||
import com.bitwarden.network.model.createMockCipherJsonRequest
|
||||
import com.bitwarden.network.model.createMockLogin
|
||||
import com.bitwarden.network.service.CiphersService
|
||||
import com.bitwarden.vault.Attachment
|
||||
import com.bitwarden.vault.AttachmentView
|
||||
@ -159,7 +159,10 @@ class CipherManagerTest {
|
||||
} returns createMockSdkCipher(number = 1, clock = clock).asSuccess()
|
||||
coEvery {
|
||||
ciphersService.createCipher(
|
||||
body = createMockCipherJsonRequest(number = 1, hasNullUri = true),
|
||||
body = createMockCipherJsonRequest(
|
||||
number = 1,
|
||||
login = createMockLogin(number = 1, uri = null),
|
||||
),
|
||||
)
|
||||
} returns error.asFailure()
|
||||
|
||||
@ -184,7 +187,10 @@ class CipherManagerTest {
|
||||
val mockCipher = createMockCipher(number = 1)
|
||||
coEvery {
|
||||
ciphersService.createCipher(
|
||||
body = createMockCipherJsonRequest(number = 1, hasNullUri = true),
|
||||
body = createMockCipherJsonRequest(
|
||||
number = 1,
|
||||
login = createMockLogin(number = 1, uri = null),
|
||||
),
|
||||
)
|
||||
} returns mockCipher.asSuccess()
|
||||
coEvery { vaultDiskSource.saveCipher(userId, mockCipher) } just runs
|
||||
@ -248,7 +254,10 @@ class CipherManagerTest {
|
||||
coEvery {
|
||||
ciphersService.createCipherInOrganization(
|
||||
body = CreateCipherInOrganizationJsonRequest(
|
||||
cipher = createMockCipherJsonRequest(number = 1, hasNullUri = true),
|
||||
cipher = createMockCipherJsonRequest(
|
||||
number = 1,
|
||||
login = createMockLogin(number = 1, uri = null),
|
||||
),
|
||||
collectionIds = listOf("mockId-1"),
|
||||
),
|
||||
)
|
||||
@ -279,7 +288,10 @@ class CipherManagerTest {
|
||||
coEvery {
|
||||
ciphersService.createCipherInOrganization(
|
||||
body = CreateCipherInOrganizationJsonRequest(
|
||||
cipher = createMockCipherJsonRequest(number = 1, hasNullUri = true),
|
||||
cipher = createMockCipherJsonRequest(
|
||||
number = 1,
|
||||
login = createMockLogin(number = 1, uri = null),
|
||||
),
|
||||
collectionIds = listOf("mockId-1"),
|
||||
),
|
||||
)
|
||||
@ -356,7 +368,10 @@ class CipherManagerTest {
|
||||
coEvery {
|
||||
ciphersService.updateCipher(
|
||||
cipherId = cipherId,
|
||||
body = createMockCipherJsonRequest(number = 1, hasNullUri = true),
|
||||
body = createMockCipherJsonRequest(
|
||||
number = 1,
|
||||
login = createMockLogin(number = 1, uri = null),
|
||||
),
|
||||
)
|
||||
} returns error.asFailure()
|
||||
|
||||
@ -385,7 +400,10 @@ class CipherManagerTest {
|
||||
coEvery {
|
||||
ciphersService.updateCipher(
|
||||
cipherId = cipherId,
|
||||
body = createMockCipherJsonRequest(number = 1, hasNullUri = true),
|
||||
body = createMockCipherJsonRequest(
|
||||
number = 1,
|
||||
login = createMockLogin(number = 1, uri = null),
|
||||
),
|
||||
)
|
||||
} returns UpdateCipherResponseJson
|
||||
.Invalid(
|
||||
@ -426,7 +444,10 @@ class CipherManagerTest {
|
||||
coEvery {
|
||||
ciphersService.updateCipher(
|
||||
cipherId = cipherId,
|
||||
body = createMockCipherJsonRequest(number = 1, hasNullUri = true),
|
||||
body = createMockCipherJsonRequest(
|
||||
number = 1,
|
||||
login = createMockLogin(number = 1, uri = null),
|
||||
),
|
||||
)
|
||||
} returns UpdateCipherResponseJson
|
||||
.Success(cipher = mockCipher)
|
||||
@ -804,7 +825,10 @@ class CipherManagerTest {
|
||||
ciphersService.shareCipher(
|
||||
cipherId = "mockId-1",
|
||||
body = ShareCipherJsonRequest(
|
||||
cipher = createMockCipherJsonRequest(number = 1, hasNullUri = true),
|
||||
cipher = createMockCipherJsonRequest(
|
||||
number = 1,
|
||||
login = createMockLogin(number = 1, uri = null),
|
||||
),
|
||||
collectionIds = listOf("mockId-1"),
|
||||
),
|
||||
)
|
||||
@ -844,7 +868,7 @@ class CipherManagerTest {
|
||||
val encryptedFile = File("path/to/encrypted/file")
|
||||
val decryptedFile = File("path/to/encrypted/file_decrypted")
|
||||
val mockCipherView = createMockCipherView(number = 1)
|
||||
val mockAttachmentJsonResponse = createMockAttachmentJsonResponse(number = 1)
|
||||
val mockAttachmentJsonResponse = createMockAttachmentResponse(number = 1)
|
||||
val mockNetworkCipher = createMockCipher(number = 1)
|
||||
|
||||
// Handle mocks for migration
|
||||
@ -949,7 +973,10 @@ class CipherManagerTest {
|
||||
ciphersService.shareCipher(
|
||||
cipherId = "mockId-1",
|
||||
body = ShareCipherJsonRequest(
|
||||
cipher = createMockCipherJsonRequest(number = 1, hasNullUri = true),
|
||||
cipher = createMockCipherJsonRequest(
|
||||
number = 1,
|
||||
login = createMockLogin(number = 1, uri = null),
|
||||
),
|
||||
collectionIds = listOf("mockId-1"),
|
||||
),
|
||||
)
|
||||
@ -994,7 +1021,10 @@ class CipherManagerTest {
|
||||
ciphersService.shareCipher(
|
||||
cipherId = "mockId-1",
|
||||
body = ShareCipherJsonRequest(
|
||||
cipher = createMockCipherJsonRequest(number = 1, hasNullUri = true),
|
||||
cipher = createMockCipherJsonRequest(
|
||||
number = 1,
|
||||
login = createMockLogin(number = 1, uri = null),
|
||||
),
|
||||
collectionIds = listOf("mockId-1"),
|
||||
),
|
||||
)
|
||||
@ -1367,7 +1397,7 @@ class CipherManagerTest {
|
||||
)
|
||||
val mockFile = File.createTempFile("mockFile", "temp")
|
||||
val mockAttachment = createMockSdkAttachment(number = 1)
|
||||
val mockAttachmentJsonResponse = createMockAttachmentJsonResponse(number = 1)
|
||||
val mockAttachmentJsonResponse = createMockAttachmentResponse(number = 1)
|
||||
val error = Throwable("Fail")
|
||||
coEvery {
|
||||
vaultSdkSource.encryptCipher(userId = userId, cipherView = mockCipherView)
|
||||
@ -1432,7 +1462,7 @@ class CipherManagerTest {
|
||||
)
|
||||
val mockFile = File.createTempFile("mockFile", "temp")
|
||||
val mockAttachment = createMockSdkAttachment(number = 1)
|
||||
val mockAttachmentJsonResponse = createMockAttachmentJsonResponse(number = 1)
|
||||
val mockAttachmentJsonResponse = createMockAttachmentResponse(number = 1)
|
||||
val mockCipherResponse = createMockCipher(number = 1).copy(collectionIds = null)
|
||||
val mockUpdatedCipherResponse = createMockCipher(number = 1).copy(
|
||||
collectionIds = listOf("mockId-1"),
|
||||
@ -1510,7 +1540,7 @@ class CipherManagerTest {
|
||||
)
|
||||
val mockFile = File.createTempFile("mockFile", "temp")
|
||||
val mockAttachment = createMockSdkAttachment(number = 1)
|
||||
val mockAttachmentJsonResponse = createMockAttachmentJsonResponse(number = 1)
|
||||
val mockAttachmentJsonResponse = createMockAttachmentResponse(number = 1)
|
||||
val mockCipherResponse = createMockCipher(number = 1).copy(collectionIds = null)
|
||||
val mockUpdatedCipherResponse = createMockCipher(number = 1).copy(
|
||||
collectionIds = listOf("mockId-1"),
|
||||
@ -1585,7 +1615,7 @@ class CipherManagerTest {
|
||||
)
|
||||
val mockFile = File.createTempFile("mockFile", "temp")
|
||||
val mockAttachment = createMockSdkAttachment(number = 1)
|
||||
val mockAttachmentJsonResponse = createMockAttachmentJsonResponse(number = 1)
|
||||
val mockAttachmentJsonResponse = createMockAttachmentResponse(number = 1)
|
||||
val mockCipherResponse = createMockCipher(number = 1).copy(collectionIds = null)
|
||||
val mockUpdatedCipherResponse = createMockCipher(number = 1).copy(
|
||||
collectionIds = listOf("mockId-1"),
|
||||
@ -1662,7 +1692,7 @@ class CipherManagerTest {
|
||||
)
|
||||
val mockFile = File.createTempFile("mockFile", "temp")
|
||||
val mockAttachment = createMockSdkAttachment(number = 1)
|
||||
val mockAttachmentJsonResponse = createMockAttachmentJsonResponse(number = 1)
|
||||
val mockAttachmentJsonResponse = createMockAttachmentResponse(number = 1)
|
||||
coEvery {
|
||||
vaultSdkSource.encryptCipher(userId = userId, cipherView = mockCipherView)
|
||||
} returns mockCipher.asSuccess()
|
||||
|
||||
@ -2307,10 +2307,7 @@ class VaultRepositoryTest {
|
||||
every { length() } returns 1
|
||||
}
|
||||
val sendFileResponse = CreateFileSendResponse.Success(
|
||||
createMockFileSendResponseJson(
|
||||
number = 1,
|
||||
type = SendTypeJson.FILE,
|
||||
),
|
||||
createMockFileSendResponseJson(number = 1),
|
||||
)
|
||||
val error = Throwable()
|
||||
coEvery {
|
||||
|
||||
@ -58,7 +58,7 @@ class VaultSdkCipherExtensionsTest {
|
||||
assertEquals(
|
||||
createMockCipher(
|
||||
number = 1,
|
||||
hasNullUri = true,
|
||||
login = createMockLogin(number = 1, uri = null),
|
||||
),
|
||||
result,
|
||||
)
|
||||
@ -71,7 +71,7 @@ class VaultSdkCipherExtensionsTest {
|
||||
assertEquals(
|
||||
createMockCipherJsonRequest(
|
||||
number = 1,
|
||||
hasNullUri = true,
|
||||
login = createMockLogin(number = 1, uri = null),
|
||||
),
|
||||
syncCipher,
|
||||
)
|
||||
|
||||
@ -15,7 +15,6 @@ import com.bitwarden.network.model.UpdateCipherResponseJson
|
||||
import com.bitwarden.network.model.createMockAttachment
|
||||
import com.bitwarden.network.model.createMockAttachmentInfo
|
||||
import com.bitwarden.network.model.createMockAttachmentJsonRequest
|
||||
import com.bitwarden.network.model.createMockAttachmentJsonResponse
|
||||
import com.bitwarden.network.model.createMockAttachmentResponse
|
||||
import com.bitwarden.network.model.createMockCipher
|
||||
import com.bitwarden.network.model.createMockCipherJsonRequest
|
||||
@ -96,7 +95,7 @@ class CiphersServiceTest : BaseServiceTest() {
|
||||
body = createMockAttachmentJsonRequest(number = 1),
|
||||
)
|
||||
assertEquals(
|
||||
createMockAttachmentJsonResponse(number = 1),
|
||||
createMockAttachmentResponse(number = 1),
|
||||
result.getOrThrow(),
|
||||
)
|
||||
}
|
||||
|
||||
@ -3,9 +3,14 @@ package com.bitwarden.network.model
|
||||
/**
|
||||
* Create a mock [CipherJsonRequest] with a given [number].
|
||||
*/
|
||||
fun createMockAttachmentJsonRequest(number: Int): AttachmentJsonRequest =
|
||||
fun createMockAttachmentJsonRequest(
|
||||
number: Int,
|
||||
fileName: String? = "mockFileName-$number",
|
||||
key: String? = "mockKey-$number",
|
||||
fileSize: String? = "1",
|
||||
): AttachmentJsonRequest =
|
||||
AttachmentJsonRequest(
|
||||
fileName = "mockFileName-$number",
|
||||
key = "mockKey-$number",
|
||||
fileSize = "1",
|
||||
fileName = fileName,
|
||||
key = key,
|
||||
fileSize = fileSize,
|
||||
)
|
||||
|
||||
@ -1,29 +1,18 @@
|
||||
package com.bitwarden.network.model
|
||||
|
||||
/**
|
||||
* Create a mock [AttachmentJsonResponse] with a given [number].
|
||||
*/
|
||||
fun createMockAttachmentJsonResponse(
|
||||
number: Int,
|
||||
fileUploadType: FileUploadType = FileUploadType.AZURE,
|
||||
): AttachmentJsonResponse =
|
||||
AttachmentJsonResponse.Success(
|
||||
attachmentId = "mockAttachmentId-$number",
|
||||
url = "mockUrl-$number",
|
||||
fileUploadType = fileUploadType,
|
||||
cipherResponse = createMockCipher(number = number),
|
||||
)
|
||||
|
||||
/**
|
||||
* Create a mock [AttachmentJsonResponse.Success] with a given [number].
|
||||
*/
|
||||
fun createMockAttachmentResponse(
|
||||
number: Int,
|
||||
attachmentId: String = "mockAttachmentId-$number",
|
||||
url: String = "mockUrl-$number",
|
||||
fileUploadType: FileUploadType = FileUploadType.AZURE,
|
||||
cipherResponse: SyncResponseJson.Cipher = createMockCipher(number = number),
|
||||
): AttachmentJsonResponse.Success =
|
||||
AttachmentJsonResponse.Success(
|
||||
attachmentId = "mockAttachmentId-$number",
|
||||
url = "mockUrl-$number",
|
||||
attachmentId = attachmentId,
|
||||
url = url,
|
||||
fileUploadType = fileUploadType,
|
||||
cipherResponse = createMockCipher(number = number),
|
||||
cipherResponse = cipherResponse,
|
||||
)
|
||||
|
||||
@ -5,29 +5,47 @@ import java.time.ZonedDateTime
|
||||
/**
|
||||
* Create a mock [CipherJsonRequest] with a given [number].
|
||||
*/
|
||||
fun createMockCipherJsonRequest(number: Int, hasNullUri: Boolean = false): CipherJsonRequest =
|
||||
@Suppress("LongParameterList")
|
||||
fun createMockCipherJsonRequest(
|
||||
number: Int,
|
||||
attachments: Map<String, AttachmentJsonRequest>? = mapOf(
|
||||
"mockId-$number" to createMockAttachmentJsonRequest(number = 1),
|
||||
),
|
||||
organizationId: String? = "mockOrganizationId-$number",
|
||||
folderId: String? = "mockFolderId-$number",
|
||||
name: String? = "mockName-$number",
|
||||
notes: String? = "mockNotes-$number",
|
||||
type: CipherTypeJson = CipherTypeJson.LOGIN,
|
||||
login: SyncResponseJson.Cipher.Login? = createMockLogin(number = number),
|
||||
card: SyncResponseJson.Cipher.Card? = createMockCard(number = number),
|
||||
sshKey: SyncResponseJson.Cipher.SshKey? = createMockSshKey(number = number),
|
||||
identity: SyncResponseJson.Cipher.Identity? = createMockIdentity(number = number),
|
||||
secureNote: SyncResponseJson.Cipher.SecureNote? = createMockSecureNote(),
|
||||
fields: List<SyncResponseJson.Cipher.Field>? = listOf(createMockField(number = number)),
|
||||
isFavorite: Boolean = false,
|
||||
passwordHistory: List<SyncResponseJson.Cipher.PasswordHistory>? = listOf(
|
||||
createMockPasswordHistory(number = number),
|
||||
),
|
||||
reprompt: CipherRepromptTypeJson = CipherRepromptTypeJson.NONE,
|
||||
lastKnownRevisionDate: ZonedDateTime? = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
key: String? = "mockKey-$number",
|
||||
): CipherJsonRequest =
|
||||
CipherJsonRequest(
|
||||
attachments = mapOf(
|
||||
"mockId-$number" to AttachmentJsonRequest(
|
||||
fileName = "mockFileName-$number",
|
||||
key = "mockKey-$number",
|
||||
fileSize = "1",
|
||||
),
|
||||
),
|
||||
organizationId = "mockOrganizationId-$number",
|
||||
folderId = "mockFolderId-$number",
|
||||
name = "mockName-$number",
|
||||
notes = "mockNotes-$number",
|
||||
type = CipherTypeJson.LOGIN,
|
||||
login = createMockLogin(number = number, hasNullUri = hasNullUri),
|
||||
card = createMockCard(number = number),
|
||||
sshKey = createMockSshKey(number = number),
|
||||
fields = listOf(createMockField(number = number)),
|
||||
identity = createMockIdentity(number = number),
|
||||
isFavorite = false,
|
||||
passwordHistory = listOf(createMockPasswordHistory(number = number)),
|
||||
reprompt = CipherRepromptTypeJson.NONE,
|
||||
secureNote = createMockSecureNote(),
|
||||
lastKnownRevisionDate = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
key = "mockKey-$number",
|
||||
attachments = attachments,
|
||||
organizationId = organizationId,
|
||||
folderId = folderId,
|
||||
name = name,
|
||||
notes = notes,
|
||||
type = type,
|
||||
login = login,
|
||||
card = card,
|
||||
sshKey = sshKey,
|
||||
identity = identity,
|
||||
secureNote = secureNote,
|
||||
fields = fields,
|
||||
isFavorite = isFavorite,
|
||||
passwordHistory = passwordHistory,
|
||||
reprompt = reprompt,
|
||||
lastKnownRevisionDate = lastKnownRevisionDate,
|
||||
key = key,
|
||||
)
|
||||
|
||||
@ -5,22 +5,35 @@ import java.time.ZonedDateTime
|
||||
/**
|
||||
* Create a mock [SendJsonRequest] with a given [number].
|
||||
*/
|
||||
@Suppress("LongParameterList")
|
||||
fun createMockSendJsonRequest(
|
||||
number: Int,
|
||||
name: String? = "mockName-$number",
|
||||
notes: String? = "mockNotes-$number",
|
||||
type: SendTypeJson = SendTypeJson.FILE,
|
||||
key: String = "mockKey-$number",
|
||||
maxAccessCount: Int? = 1,
|
||||
expirationDate: ZonedDateTime? = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
deletionDate: ZonedDateTime = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
fileLength: Long? = 1,
|
||||
file: SyncResponseJson.Send.File? = createMockFile(number = number),
|
||||
text: SyncResponseJson.Send.Text? = createMockText(number = number),
|
||||
password: String? = "mockPassword-$number",
|
||||
isDisabled: Boolean = false,
|
||||
shouldHideEmail: Boolean? = false,
|
||||
): SendJsonRequest =
|
||||
SendJsonRequest(
|
||||
name = "mockName-$number",
|
||||
notes = "mockNotes-$number",
|
||||
name = name,
|
||||
notes = notes,
|
||||
type = type,
|
||||
key = "mockKey-$number",
|
||||
maxAccessCount = 1,
|
||||
expirationDate = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
deletionDate = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
fileLength = 1,
|
||||
file = createMockFile(number),
|
||||
text = createMockText(number),
|
||||
password = "mockPassword-$number",
|
||||
isDisabled = false,
|
||||
shouldHideEmail = false,
|
||||
key = key,
|
||||
maxAccessCount = maxAccessCount,
|
||||
expirationDate = expirationDate,
|
||||
deletionDate = deletionDate,
|
||||
fileLength = fileLength,
|
||||
file = file,
|
||||
text = text,
|
||||
password = password,
|
||||
isDisabled = isDisabled,
|
||||
shouldHideEmail = shouldHideEmail,
|
||||
)
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
@file:Suppress("LongParameterList")
|
||||
|
||||
package com.bitwarden.network.model
|
||||
|
||||
import java.time.ZonedDateTime
|
||||
@ -12,102 +14,162 @@ private val MOCK_ZONED_DATE_TIME = ZonedDateTime.parse("2023-10-27T12:00:00Z")
|
||||
*/
|
||||
fun createMockCipher(
|
||||
number: Int,
|
||||
hasNullUri: Boolean = false,
|
||||
fido2Credentials: List<SyncResponseJson.Cipher.Fido2Credential> = listOf(
|
||||
createMockFido2Credential(number),
|
||||
id: String = "mockId-$number",
|
||||
organizationId: String? = "mockOrganizationId-$number",
|
||||
folderId: String? = "mockFolderId-$number",
|
||||
collectionIds: List<String>? = listOf("mockCollectionId-$number"),
|
||||
name: String? = "mockName-$number",
|
||||
notes: String? = "mockNotes-$number",
|
||||
creationDate: ZonedDateTime = MOCK_ZONED_DATE_TIME,
|
||||
revisionDate: ZonedDateTime = MOCK_ZONED_DATE_TIME,
|
||||
deletedDate: ZonedDateTime? = MOCK_ZONED_DATE_TIME,
|
||||
attachments: List<SyncResponseJson.Cipher.Attachment>? = listOf(
|
||||
createMockAttachment(number = number),
|
||||
),
|
||||
isDeleted: Boolean = true,
|
||||
type: CipherTypeJson = CipherTypeJson.LOGIN,
|
||||
login: SyncResponseJson.Cipher.Login? = createMockLogin(number = number),
|
||||
card: SyncResponseJson.Cipher.Card? = createMockCard(number = number),
|
||||
identity: SyncResponseJson.Cipher.Identity? = createMockIdentity(number = number),
|
||||
sshKey: SyncResponseJson.Cipher.SshKey? = createMockSshKey(number = number),
|
||||
secureNote: SyncResponseJson.Cipher.SecureNote? = createMockSecureNote(),
|
||||
fields: List<SyncResponseJson.Cipher.Field>? = listOf(createMockField(number = number)),
|
||||
isFavorite: Boolean = false,
|
||||
passwordHistory: List<SyncResponseJson.Cipher.PasswordHistory>? = listOf(
|
||||
createMockPasswordHistory(number = number),
|
||||
),
|
||||
permissions: SyncResponseJson.Cipher.CipherPermissions? = createMockCipherPermissions(),
|
||||
reprompt: CipherRepromptTypeJson = CipherRepromptTypeJson.NONE,
|
||||
shouldEdit: Boolean = false,
|
||||
shouldOrganizationUseTotp: Boolean = false,
|
||||
shouldViewPassword: Boolean = false,
|
||||
key: String? = "mockKey-$number",
|
||||
): SyncResponseJson.Cipher =
|
||||
SyncResponseJson.Cipher(
|
||||
id = "mockId-$number",
|
||||
organizationId = "mockOrganizationId-$number",
|
||||
folderId = "mockFolderId-$number",
|
||||
collectionIds = listOf("mockCollectionId-$number"),
|
||||
name = "mockName-$number",
|
||||
notes = "mockNotes-$number",
|
||||
type = CipherTypeJson.LOGIN,
|
||||
login = createMockLogin(
|
||||
number = number,
|
||||
hasNullUri = hasNullUri,
|
||||
fido2Credentials = fido2Credentials,
|
||||
),
|
||||
creationDate = MOCK_ZONED_DATE_TIME,
|
||||
deletedDate = if (isDeleted) MOCK_ZONED_DATE_TIME else null,
|
||||
revisionDate = MOCK_ZONED_DATE_TIME,
|
||||
attachments = listOf(createMockAttachment(number = number)),
|
||||
card = createMockCard(number = number),
|
||||
fields = listOf(createMockField(number = number)),
|
||||
identity = createMockIdentity(number = number),
|
||||
sshKey = createMockSshKey(number = number),
|
||||
isFavorite = false,
|
||||
passwordHistory = listOf(createMockPasswordHistory(number = number)),
|
||||
permissions = createMockCipherPermissions(),
|
||||
reprompt = CipherRepromptTypeJson.NONE,
|
||||
secureNote = createMockSecureNote(),
|
||||
shouldEdit = false,
|
||||
shouldOrganizationUseTotp = false,
|
||||
shouldViewPassword = false,
|
||||
key = "mockKey-$number",
|
||||
id = id,
|
||||
organizationId = organizationId,
|
||||
folderId = folderId,
|
||||
collectionIds = collectionIds,
|
||||
name = name,
|
||||
notes = notes,
|
||||
type = type,
|
||||
login = login,
|
||||
card = card,
|
||||
identity = identity,
|
||||
secureNote = secureNote,
|
||||
sshKey = sshKey,
|
||||
creationDate = creationDate,
|
||||
revisionDate = revisionDate,
|
||||
deletedDate = deletedDate,
|
||||
attachments = attachments,
|
||||
fields = fields,
|
||||
isFavorite = isFavorite,
|
||||
passwordHistory = passwordHistory,
|
||||
permissions = permissions,
|
||||
reprompt = reprompt,
|
||||
shouldEdit = shouldEdit,
|
||||
shouldOrganizationUseTotp = shouldOrganizationUseTotp,
|
||||
shouldViewPassword = shouldViewPassword,
|
||||
key = key,
|
||||
)
|
||||
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Cipher.Identity] with a given [number].
|
||||
*/
|
||||
fun createMockIdentity(number: Int): SyncResponseJson.Cipher.Identity =
|
||||
fun createMockIdentity(
|
||||
number: Int,
|
||||
firstName: String? = "mockFirstName-$number",
|
||||
middleName: String? = "mockMiddleName-$number",
|
||||
lastName: String? = "mockLastName-$number",
|
||||
passportNumber: String? = "mockPassportNumber-$number",
|
||||
country: String? = "mockCountry-$number",
|
||||
address1: String? = "mockAddress1-$number",
|
||||
address2: String? = "mockAddress2-$number",
|
||||
address3: String? = "mockAddress3-$number",
|
||||
city: String? = "mockCity-$number",
|
||||
postalCode: String? = "mockPostalCode-$number",
|
||||
title: String? = "mockTitle-$number",
|
||||
ssn: String? = "mockSsn-$number",
|
||||
phone: String? = "mockPhone-$number",
|
||||
company: String? = "mockCompany-$number",
|
||||
licenseNumber: String? = "mockLicenseNumber-$number",
|
||||
state: String? = "mockState-$number",
|
||||
email: String? = "mockEmail-$number",
|
||||
username: String? = "mockUsername-$number",
|
||||
): SyncResponseJson.Cipher.Identity =
|
||||
SyncResponseJson.Cipher.Identity(
|
||||
firstName = "mockFirstName-$number",
|
||||
middleName = "mockMiddleName-$number",
|
||||
lastName = "mockLastName-$number",
|
||||
passportNumber = "mockPassportNumber-$number",
|
||||
country = "mockCountry-$number",
|
||||
address1 = "mockAddress1-$number",
|
||||
address2 = "mockAddress2-$number",
|
||||
address3 = "mockAddress3-$number",
|
||||
city = "mockCity-$number",
|
||||
postalCode = "mockPostalCode-$number",
|
||||
title = "mockTitle-$number",
|
||||
ssn = "mockSsn-$number",
|
||||
phone = "mockPhone-$number",
|
||||
company = "mockCompany-$number",
|
||||
licenseNumber = "mockLicenseNumber-$number",
|
||||
state = "mockState-$number",
|
||||
email = "mockEmail-$number",
|
||||
username = "mockUsername-$number",
|
||||
firstName = firstName,
|
||||
middleName = middleName,
|
||||
lastName = lastName,
|
||||
passportNumber = passportNumber,
|
||||
country = country,
|
||||
address1 = address1,
|
||||
address2 = address2,
|
||||
address3 = address3,
|
||||
city = city,
|
||||
postalCode = postalCode,
|
||||
title = title,
|
||||
ssn = ssn,
|
||||
phone = phone,
|
||||
company = company,
|
||||
licenseNumber = licenseNumber,
|
||||
state = state,
|
||||
email = email,
|
||||
username = username,
|
||||
)
|
||||
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Cipher.Attachment] with a given [number].
|
||||
*/
|
||||
fun createMockAttachment(number: Int): SyncResponseJson.Cipher.Attachment =
|
||||
fun createMockAttachment(
|
||||
number: Int,
|
||||
fileName: String? = "mockFileName-$number",
|
||||
size: Int = 1,
|
||||
sizeName: String? = "mockSizeName-$number",
|
||||
id: String? = "mockId-$number",
|
||||
url: String? = "mockUrl-$number",
|
||||
key: String? = "mockKey-$number",
|
||||
): SyncResponseJson.Cipher.Attachment =
|
||||
SyncResponseJson.Cipher.Attachment(
|
||||
fileName = "mockFileName-$number",
|
||||
size = 1,
|
||||
sizeName = "mockSizeName-$number",
|
||||
id = "mockId-$number",
|
||||
url = "mockUrl-$number",
|
||||
key = "mockKey-$number",
|
||||
fileName = fileName,
|
||||
size = size,
|
||||
sizeName = sizeName,
|
||||
id = id,
|
||||
url = url,
|
||||
key = key,
|
||||
)
|
||||
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Cipher.Card] with a given [number].
|
||||
*/
|
||||
fun createMockCard(number: Int): SyncResponseJson.Cipher.Card =
|
||||
fun createMockCard(
|
||||
number: Int,
|
||||
cardNumber: String? = "mockNumber-$number",
|
||||
expMonth: String? = "mockExpMonth-$number",
|
||||
code: String? = "mockCode-$number",
|
||||
expirationYear: String? = "mockExpirationYear-$number",
|
||||
cardholderName: String? = "mockCardholderName-$number",
|
||||
brand: String? = "mockBrand-$number",
|
||||
): SyncResponseJson.Cipher.Card =
|
||||
SyncResponseJson.Cipher.Card(
|
||||
number = "mockNumber-$number",
|
||||
expMonth = "mockExpMonth-$number",
|
||||
code = "mockCode-$number",
|
||||
expirationYear = "mockExpirationYear-$number",
|
||||
cardholderName = "mockCardholderName-$number",
|
||||
brand = "mockBrand-$number",
|
||||
number = cardNumber,
|
||||
expMonth = expMonth,
|
||||
code = code,
|
||||
expirationYear = expirationYear,
|
||||
cardholderName = cardholderName,
|
||||
brand = brand,
|
||||
)
|
||||
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Cipher.PasswordHistory] with a given [number].
|
||||
*/
|
||||
fun createMockPasswordHistory(number: Int): SyncResponseJson.Cipher.PasswordHistory =
|
||||
fun createMockPasswordHistory(
|
||||
number: Int,
|
||||
password: String = "mockPassword-$number",
|
||||
lastUsedDate: ZonedDateTime = MOCK_ZONED_DATE_TIME,
|
||||
): SyncResponseJson.Cipher.PasswordHistory =
|
||||
SyncResponseJson.Cipher.PasswordHistory(
|
||||
password = "mockPassword-$number",
|
||||
lastUsedDate = MOCK_ZONED_DATE_TIME,
|
||||
password = password,
|
||||
lastUsedDate = lastUsedDate,
|
||||
)
|
||||
|
||||
/**
|
||||
@ -125,20 +187,28 @@ fun createMockCipherPermissions(
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Cipher.SecureNote].
|
||||
*/
|
||||
fun createMockSecureNote(): SyncResponseJson.Cipher.SecureNote =
|
||||
fun createMockSecureNote(
|
||||
type: SecureNoteTypeJson = SecureNoteTypeJson.GENERIC,
|
||||
): SyncResponseJson.Cipher.SecureNote =
|
||||
SyncResponseJson.Cipher.SecureNote(
|
||||
type = SecureNoteTypeJson.GENERIC,
|
||||
type = type,
|
||||
)
|
||||
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Cipher.Field] with a given [number].
|
||||
*/
|
||||
fun createMockField(number: Int): SyncResponseJson.Cipher.Field =
|
||||
fun createMockField(
|
||||
number: Int,
|
||||
linkedIdType: LinkedIdTypeJson? = LinkedIdTypeJson.LOGIN_USERNAME,
|
||||
name: String? = "mockName-$number",
|
||||
type: FieldTypeJson = FieldTypeJson.HIDDEN,
|
||||
value: String? = "mockValue-$number",
|
||||
): SyncResponseJson.Cipher.Field =
|
||||
SyncResponseJson.Cipher.Field(
|
||||
linkedIdType = LinkedIdTypeJson.LOGIN_USERNAME,
|
||||
name = "mockName-$number",
|
||||
type = FieldTypeJson.HIDDEN,
|
||||
value = "mockValue-$number",
|
||||
linkedIdType = linkedIdType,
|
||||
name = name,
|
||||
type = type,
|
||||
value = value,
|
||||
)
|
||||
|
||||
/**
|
||||
@ -146,56 +216,89 @@ fun createMockField(number: Int): SyncResponseJson.Cipher.Field =
|
||||
*/
|
||||
fun createMockLogin(
|
||||
number: Int,
|
||||
hasNullUri: Boolean = false,
|
||||
username: String? = "mockUsername-$number",
|
||||
password: String? = "mockPassword-$number",
|
||||
passwordRevisionDate: ZonedDateTime? = MOCK_ZONED_DATE_TIME,
|
||||
shouldAutofillOnPageLoad: Boolean? = false,
|
||||
uri: String? = "mockUri-$number",
|
||||
uris: List<SyncResponseJson.Cipher.Login.Uri> = listOf(createMockUri(number = number)),
|
||||
totp: String? = "mockTotp-$number",
|
||||
fido2Credentials: List<SyncResponseJson.Cipher.Fido2Credential> = listOf(
|
||||
createMockFido2Credential(number),
|
||||
createMockFido2Credential(number = number),
|
||||
),
|
||||
): SyncResponseJson.Cipher.Login =
|
||||
SyncResponseJson.Cipher.Login(
|
||||
username = "mockUsername-$number",
|
||||
password = "mockPassword-$number",
|
||||
passwordRevisionDate = MOCK_ZONED_DATE_TIME,
|
||||
shouldAutofillOnPageLoad = false,
|
||||
uri = if (hasNullUri) null else "mockUri-$number",
|
||||
uris = listOf(createMockUri(number = number)),
|
||||
totp = "mockTotp-$number",
|
||||
username = username,
|
||||
password = password,
|
||||
passwordRevisionDate = passwordRevisionDate,
|
||||
shouldAutofillOnPageLoad = shouldAutofillOnPageLoad,
|
||||
uri = uri,
|
||||
uris = uris,
|
||||
totp = totp,
|
||||
fido2Credentials = fido2Credentials,
|
||||
)
|
||||
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Cipher.SshKey] with a given [number].
|
||||
*/
|
||||
fun createMockSshKey(number: Int) = SyncResponseJson.Cipher.SshKey(
|
||||
publicKey = "mockPublicKey-$number",
|
||||
privateKey = "mockPrivateKey-$number",
|
||||
keyFingerprint = "mockKeyFingerprint-$number",
|
||||
)
|
||||
fun createMockSshKey(
|
||||
number: Int,
|
||||
publicKey: String = "mockPublicKey-$number",
|
||||
privateKey: String = "mockPrivateKey-$number",
|
||||
keyFingerprint: String = "mockKeyFingerprint-$number",
|
||||
): SyncResponseJson.Cipher.SshKey =
|
||||
SyncResponseJson.Cipher.SshKey(
|
||||
publicKey = publicKey,
|
||||
privateKey = privateKey,
|
||||
keyFingerprint = keyFingerprint,
|
||||
)
|
||||
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Cipher.Fido2Credential] with a given [number].
|
||||
*/
|
||||
fun createMockFido2Credential(number: Int) = SyncResponseJson.Cipher.Fido2Credential(
|
||||
credentialId = "mockCredentialId-$number",
|
||||
keyType = "mockKeyType-$number",
|
||||
keyAlgorithm = "mockKeyAlgorithm-$number",
|
||||
keyCurve = "mockKeyCurve-$number",
|
||||
keyValue = "mockKeyValue-$number",
|
||||
rpId = "mockRpId-$number",
|
||||
rpName = "mockRpName-$number",
|
||||
userHandle = "mockUserHandle-$number",
|
||||
userName = "mockUserName-$number",
|
||||
userDisplayName = "mockUserDisplayName-$number",
|
||||
counter = "mockCounter-$number",
|
||||
discoverable = "mockDiscoverable-$number",
|
||||
creationDate = MOCK_ZONED_DATE_TIME,
|
||||
)
|
||||
fun createMockFido2Credential(
|
||||
number: Int,
|
||||
credentialId: String = "mockCredentialId-$number",
|
||||
keyType: String = "mockKeyType-$number",
|
||||
keyAlgorithm: String = "mockKeyAlgorithm-$number",
|
||||
keyCurve: String = "mockKeyCurve-$number",
|
||||
keyValue: String = "mockKeyValue-$number",
|
||||
rpId: String = "mockRpId-$number",
|
||||
rpName: String? = "mockRpName-$number",
|
||||
userHandle: String? = "mockUserHandle-$number",
|
||||
userName: String? = "mockUserName-$number",
|
||||
userDisplayName: String? = "mockUserDisplayName-$number",
|
||||
counter: String = "mockCounter-$number",
|
||||
discoverable: String = "mockDiscoverable-$number",
|
||||
creationDate: ZonedDateTime = MOCK_ZONED_DATE_TIME,
|
||||
): SyncResponseJson.Cipher.Fido2Credential =
|
||||
SyncResponseJson.Cipher.Fido2Credential(
|
||||
credentialId = credentialId,
|
||||
keyType = keyType,
|
||||
keyAlgorithm = keyAlgorithm,
|
||||
keyCurve = keyCurve,
|
||||
keyValue = keyValue,
|
||||
rpId = rpId,
|
||||
rpName = rpName,
|
||||
userHandle = userHandle,
|
||||
userName = userName,
|
||||
userDisplayName = userDisplayName,
|
||||
counter = counter,
|
||||
discoverable = discoverable,
|
||||
creationDate = creationDate,
|
||||
)
|
||||
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Cipher.Login.Uri] with a given [number].
|
||||
*/
|
||||
fun createMockUri(number: Int): SyncResponseJson.Cipher.Login.Uri =
|
||||
fun createMockUri(
|
||||
number: Int,
|
||||
uri: String? = "mockUri-$number",
|
||||
uriMatchType: UriMatchTypeJson? = UriMatchTypeJson.HOST,
|
||||
uriChecksum: String? = "mockUriChecksum-$number",
|
||||
): SyncResponseJson.Cipher.Login.Uri =
|
||||
SyncResponseJson.Cipher.Login.Uri(
|
||||
uri = "mockUri-$number",
|
||||
uriMatchType = UriMatchTypeJson.HOST,
|
||||
uriChecksum = "mockUriChecksum-$number",
|
||||
uri = uri,
|
||||
uriMatchType = uriMatchType,
|
||||
uriChecksum = uriChecksum,
|
||||
)
|
||||
|
||||
@ -3,13 +3,23 @@ package com.bitwarden.network.model
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Collection] with a given [number].
|
||||
*/
|
||||
fun createMockCollection(number: Int): SyncResponseJson.Collection =
|
||||
@Suppress("LongParameterList")
|
||||
fun createMockCollection(
|
||||
number: Int,
|
||||
organizationId: String = "mockOrganizationId-$number",
|
||||
shouldHidePasswords: Boolean = false,
|
||||
name: String = "mockName-$number",
|
||||
externalId: String? = "mockExternalId-$number",
|
||||
isReadOnly: Boolean = false,
|
||||
id: String = "mockId-$number",
|
||||
canManage: Boolean? = true,
|
||||
): SyncResponseJson.Collection =
|
||||
SyncResponseJson.Collection(
|
||||
organizationId = "mockOrganizationId-$number",
|
||||
shouldHidePasswords = false,
|
||||
name = "mockName-$number",
|
||||
externalId = "mockExternalId-$number",
|
||||
isReadOnly = false,
|
||||
id = "mockId-$number",
|
||||
canManage = true,
|
||||
organizationId = organizationId,
|
||||
shouldHidePasswords = shouldHidePasswords,
|
||||
name = name,
|
||||
externalId = externalId,
|
||||
isReadOnly = isReadOnly,
|
||||
id = id,
|
||||
canManage = canManage,
|
||||
)
|
||||
|
||||
@ -3,20 +3,29 @@ package com.bitwarden.network.model
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Domains] with a given [number].
|
||||
*/
|
||||
fun createMockDomains(number: Int): SyncResponseJson.Domains =
|
||||
fun createMockDomains(
|
||||
number: Int,
|
||||
globalEquivalentDomains: List<SyncResponseJson.Domains.GlobalEquivalentDomain> = listOf(
|
||||
createMockGlobalEquivalentDomain(number = number),
|
||||
),
|
||||
equivalentDomains: List<List<String>>? = listOf(listOf("mockEquivalentDomain-$number")),
|
||||
): SyncResponseJson.Domains =
|
||||
SyncResponseJson.Domains(
|
||||
globalEquivalentDomains = listOf(
|
||||
SyncResponseJson.Domains.GlobalEquivalentDomain(
|
||||
isExcluded = false,
|
||||
domains = listOf(
|
||||
"mockDomain-$number",
|
||||
),
|
||||
type = 1,
|
||||
),
|
||||
),
|
||||
equivalentDomains = listOf(
|
||||
listOf(
|
||||
"mockEquivalentDomain-$number",
|
||||
),
|
||||
),
|
||||
globalEquivalentDomains = globalEquivalentDomains,
|
||||
equivalentDomains = equivalentDomains,
|
||||
)
|
||||
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Domains.GlobalEquivalentDomain] with a given [number].
|
||||
*/
|
||||
fun createMockGlobalEquivalentDomain(
|
||||
number: Int,
|
||||
isExcluded: Boolean = false,
|
||||
domains: List<String>? = listOf("mockDomain-$number"),
|
||||
type: Int = 1,
|
||||
): SyncResponseJson.Domains.GlobalEquivalentDomain =
|
||||
SyncResponseJson.Domains.GlobalEquivalentDomain(
|
||||
isExcluded = isExcluded,
|
||||
domains = domains,
|
||||
type = type,
|
||||
)
|
||||
|
||||
@ -5,9 +5,14 @@ import java.time.ZonedDateTime
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Folder] with a given [number].
|
||||
*/
|
||||
fun createMockFolder(number: Int): SyncResponseJson.Folder =
|
||||
fun createMockFolder(
|
||||
number: Int,
|
||||
id: String = "mockId-$number",
|
||||
name: String? = "mockName-$number",
|
||||
revisionDate: ZonedDateTime = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
): SyncResponseJson.Folder =
|
||||
SyncResponseJson.Folder(
|
||||
id = "mockId-$number",
|
||||
name = "mockName-$number",
|
||||
revisionDate = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
id = id,
|
||||
name = name,
|
||||
revisionDate = revisionDate,
|
||||
)
|
||||
|
||||
@ -5,16 +5,18 @@ import kotlinx.serialization.json.JsonObject
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Policy] with the given [number], [type], and [data].
|
||||
*/
|
||||
@Suppress("LongParameterList")
|
||||
fun createMockPolicy(
|
||||
number: Int = 1,
|
||||
organizationId: String = "mockOrganizationId-$number",
|
||||
id: String = "mockId-$number",
|
||||
type: PolicyTypeJson = PolicyTypeJson.MASTER_PASSWORD,
|
||||
isEnabled: Boolean = false,
|
||||
data: JsonObject? = null,
|
||||
): SyncResponseJson.Policy =
|
||||
SyncResponseJson.Policy(
|
||||
organizationId = organizationId,
|
||||
id = "mockId-$number",
|
||||
id = id,
|
||||
type = type,
|
||||
isEnabled = isEnabled,
|
||||
data = data,
|
||||
|
||||
@ -1,3 +1,5 @@
|
||||
@file:Suppress("LongParameterList")
|
||||
|
||||
package com.bitwarden.network.model
|
||||
|
||||
import java.time.ZonedDateTime
|
||||
@ -5,27 +7,54 @@ import java.time.ZonedDateTime
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Profile] with a given [number].
|
||||
*/
|
||||
fun createMockProfile(number: Int): SyncResponseJson.Profile =
|
||||
fun createMockProfile(
|
||||
number: Int,
|
||||
providerOrganizations: List<SyncResponseJson.Profile.Organization>? = listOf(
|
||||
createMockOrganization(number = number),
|
||||
),
|
||||
isPremiumFromOrganization: Boolean = false,
|
||||
shouldForcePasswordReset: Boolean = false,
|
||||
avatarColor: String? = "mockAvatarColor-$number",
|
||||
isEmailVerified: Boolean = false,
|
||||
isTwoFactorEnabled: Boolean = false,
|
||||
privateKey: String? = "mockPrivateKey-$number",
|
||||
isPremium: Boolean = false,
|
||||
culture: String? = "mockCulture-$number",
|
||||
name: String? = "mockName-$number",
|
||||
organizations: List<SyncResponseJson.Profile.Organization>? = listOf(
|
||||
createMockOrganization(number = number),
|
||||
),
|
||||
shouldUseKeyConnector: Boolean = false,
|
||||
id: String = "mockId-$number",
|
||||
masterPasswordHint: String? = "mockMasterPasswordHint-$number",
|
||||
email: String? = "mockEmail-$number",
|
||||
key: String? = "mockKey-$number",
|
||||
securityStamp: String? = "mockSecurityStamp-$number",
|
||||
providers: List<SyncResponseJson.Profile.Provider>? = listOf(
|
||||
createMockProvider(number = number),
|
||||
),
|
||||
creationDate: ZonedDateTime = ZonedDateTime.parse("2024-09-13T01:00:00.00Z"),
|
||||
): SyncResponseJson.Profile =
|
||||
SyncResponseJson.Profile(
|
||||
providerOrganizations = listOf(createMockOrganization(number = number)),
|
||||
isPremiumFromOrganization = false,
|
||||
shouldForcePasswordReset = false,
|
||||
avatarColor = "mockAvatarColor-$number",
|
||||
isEmailVerified = false,
|
||||
isTwoFactorEnabled = false,
|
||||
privateKey = "mockPrivateKey-$number",
|
||||
isPremium = false,
|
||||
culture = "mockCulture-$number",
|
||||
name = "mockName-$number",
|
||||
organizations = listOf(createMockOrganization(number = number)),
|
||||
shouldUseKeyConnector = false,
|
||||
id = "mockId-$number",
|
||||
masterPasswordHint = "mockMasterPasswordHint-$number",
|
||||
email = "mockEmail-$number",
|
||||
key = "mockKey-$number",
|
||||
securityStamp = "mockSecurityStamp-$number",
|
||||
providers = listOf(createMockProvider(number = number)),
|
||||
creationDate = ZonedDateTime.parse("2024-09-13T01:00:00.00Z"),
|
||||
providerOrganizations = providerOrganizations,
|
||||
isPremiumFromOrganization = isPremiumFromOrganization,
|
||||
shouldForcePasswordReset = shouldForcePasswordReset,
|
||||
avatarColor = avatarColor,
|
||||
isEmailVerified = isEmailVerified,
|
||||
isTwoFactorEnabled = isTwoFactorEnabled,
|
||||
privateKey = privateKey,
|
||||
isPremium = isPremium,
|
||||
culture = culture,
|
||||
name = name,
|
||||
organizations = organizations,
|
||||
shouldUseKeyConnector = shouldUseKeyConnector,
|
||||
id = id,
|
||||
masterPasswordHint = masterPasswordHint,
|
||||
email = email,
|
||||
key = key,
|
||||
securityStamp = securityStamp,
|
||||
providers = providers,
|
||||
creationDate = creationDate,
|
||||
)
|
||||
|
||||
/**
|
||||
@ -33,75 +62,116 @@ fun createMockProfile(number: Int): SyncResponseJson.Profile =
|
||||
*/
|
||||
fun createMockOrganization(
|
||||
number: Int,
|
||||
isEnabled: Boolean = false,
|
||||
shouldUsePolicies: Boolean = false,
|
||||
shouldManageResetPassword: Boolean = false,
|
||||
shouldUseKeyConnector: Boolean = false,
|
||||
keyConnectorUrl: String? = "mockKeyConnectorUrl-$number",
|
||||
type: OrganizationType = OrganizationType.ADMIN,
|
||||
seats: Int? = 1,
|
||||
isEnabled: Boolean = false,
|
||||
providerType: Int? = 1,
|
||||
maxCollections: Int? = 1,
|
||||
isSelfHost: Boolean = false,
|
||||
permissions: SyncResponseJson.Profile.Permissions = createMockPermissions(),
|
||||
providerId: String? = "mockProviderId-$number",
|
||||
id: String = "mockId-$number",
|
||||
shouldUseGroups: Boolean = false,
|
||||
shouldUseDirectory: Boolean = false,
|
||||
key: String? = "mockKey-$number",
|
||||
providerName: String? = "mockProviderName-$number",
|
||||
shouldUsersGetPremium: Boolean = false,
|
||||
maxStorageGb: Int? = 1,
|
||||
identifier: String? = "mockIdentifier-$number",
|
||||
use2fa: Boolean = false,
|
||||
familySponsorshipToDelete: Boolean? = false,
|
||||
userId: String? = "mockUserId-$number",
|
||||
shouldUseEvents: Boolean = false,
|
||||
familySponsorshipFriendlyName: String? = "mockFamilySponsorshipFriendlyName-$number",
|
||||
shouldUseTotp: Boolean = false,
|
||||
familySponsorshipLastSyncDate: ZonedDateTime? = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
name: String? = "mockName-$number",
|
||||
shouldUseApi: Boolean = false,
|
||||
familySponsorshipValidUntil: ZonedDateTime? = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
status: OrganizationStatusType = OrganizationStatusType.ACCEPTED,
|
||||
userIsClaimedByOrganization: Boolean = false,
|
||||
): SyncResponseJson.Profile.Organization =
|
||||
SyncResponseJson.Profile.Organization(
|
||||
shouldUsePolicies = shouldUsePolicies,
|
||||
shouldUseKeyConnector = false,
|
||||
keyConnectorUrl = "mockKeyConnectorUrl-$number",
|
||||
shouldUseKeyConnector = shouldUseKeyConnector,
|
||||
keyConnectorUrl = keyConnectorUrl,
|
||||
type = type,
|
||||
seats = 1,
|
||||
seats = seats,
|
||||
isEnabled = isEnabled,
|
||||
providerType = 1,
|
||||
maxCollections = 1,
|
||||
isSelfHost = false,
|
||||
permissions = createMockPermissions(shouldManageResetPassword = shouldManageResetPassword),
|
||||
providerId = "mockProviderId-$number",
|
||||
id = "mockId-$number",
|
||||
shouldUseGroups = false,
|
||||
shouldUseDirectory = false,
|
||||
key = "mockKey-$number",
|
||||
providerName = "mockProviderName-$number",
|
||||
shouldUsersGetPremium = false,
|
||||
maxStorageGb = 1,
|
||||
identifier = "mockIdentifier-$number",
|
||||
use2fa = false,
|
||||
familySponsorshipToDelete = false,
|
||||
userId = "mockUserId-$number",
|
||||
shouldUseEvents = false,
|
||||
familySponsorshipFriendlyName = "mockFamilySponsorshipFriendlyName-$number",
|
||||
shouldUseTotp = false,
|
||||
familySponsorshipLastSyncDate = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
name = "mockName-$number",
|
||||
shouldUseApi = false,
|
||||
familySponsorshipValidUntil = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
status = OrganizationStatusType.ACCEPTED,
|
||||
userIsClaimedByOrganization = false,
|
||||
providerType = providerType,
|
||||
maxCollections = maxCollections,
|
||||
isSelfHost = isSelfHost,
|
||||
permissions = permissions,
|
||||
providerId = providerId,
|
||||
id = id,
|
||||
shouldUseGroups = shouldUseGroups,
|
||||
shouldUseDirectory = shouldUseDirectory,
|
||||
key = key,
|
||||
providerName = providerName,
|
||||
shouldUsersGetPremium = shouldUsersGetPremium,
|
||||
maxStorageGb = maxStorageGb,
|
||||
identifier = identifier,
|
||||
use2fa = use2fa,
|
||||
familySponsorshipToDelete = familySponsorshipToDelete,
|
||||
userId = userId,
|
||||
shouldUseEvents = shouldUseEvents,
|
||||
familySponsorshipFriendlyName = familySponsorshipFriendlyName,
|
||||
shouldUseTotp = shouldUseTotp,
|
||||
familySponsorshipLastSyncDate = familySponsorshipLastSyncDate,
|
||||
name = name,
|
||||
shouldUseApi = shouldUseApi,
|
||||
familySponsorshipValidUntil = familySponsorshipValidUntil,
|
||||
status = status,
|
||||
userIsClaimedByOrganization = userIsClaimedByOrganization,
|
||||
)
|
||||
|
||||
/**
|
||||
* Create a mock set of organization keys with the given [number].
|
||||
*/
|
||||
fun createMockOrganizationKeys(number: Int): Map<String, String> =
|
||||
createMockOrganization(number = number)
|
||||
.let { mapOf(it.id to requireNotNull(it.key)) }
|
||||
fun createMockOrganizationKeys(
|
||||
number: Int,
|
||||
organization: SyncResponseJson.Profile.Organization = createMockOrganization(number = number),
|
||||
): Map<String, String> =
|
||||
mapOf(organization.id to requireNotNull(organization.key))
|
||||
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Profile.Permissions].
|
||||
*/
|
||||
fun createMockPermissions(
|
||||
shouldManageResetPassword: Boolean = false,
|
||||
shouldManagePolicies: Boolean = false,
|
||||
): SyncResponseJson.Profile.Permissions =
|
||||
SyncResponseJson.Profile.Permissions(
|
||||
shouldManageResetPassword = shouldManageResetPassword,
|
||||
shouldManagePolicies = false,
|
||||
shouldManagePolicies = shouldManagePolicies,
|
||||
)
|
||||
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Profile.Provider] with a given [number].
|
||||
*/
|
||||
fun createMockProvider(number: Int): SyncResponseJson.Profile.Provider =
|
||||
fun createMockProvider(
|
||||
number: Int,
|
||||
shouldUseEvents: Boolean = false,
|
||||
permissions: SyncResponseJson.Profile.Permissions = createMockPermissions(),
|
||||
name: String? = "mockName-$number",
|
||||
id: String = "mockId-$number",
|
||||
type: Int = 1,
|
||||
userId: String? = "mockUserId-$number",
|
||||
key: String? = "mockKey-$number",
|
||||
isEnabled: Boolean = false,
|
||||
status: Int = 1,
|
||||
): SyncResponseJson.Profile.Provider =
|
||||
SyncResponseJson.Profile.Provider(
|
||||
shouldUseEvents = false,
|
||||
permissions = createMockPermissions(),
|
||||
name = "mockName-$number",
|
||||
id = "mockId-$number",
|
||||
type = 1,
|
||||
userId = "mockUserId-$number",
|
||||
key = "mockKey-$number",
|
||||
isEnabled = false,
|
||||
status = 1,
|
||||
shouldUseEvents = shouldUseEvents,
|
||||
permissions = permissions,
|
||||
name = name,
|
||||
id = id,
|
||||
type = type,
|
||||
userId = userId,
|
||||
key = key,
|
||||
isEnabled = isEnabled,
|
||||
status = status,
|
||||
)
|
||||
|
||||
@ -2,46 +2,89 @@ package com.bitwarden.network.model
|
||||
|
||||
import java.time.ZonedDateTime
|
||||
|
||||
fun createMockFileSendResponseJson(number: Int, type: SendTypeJson = SendTypeJson.FILE) =
|
||||
/**
|
||||
* Create a mock [CreateFileSendResponseJson] with a given data.
|
||||
*/
|
||||
fun createMockFileSendResponseJson(
|
||||
number: Int,
|
||||
url: String = "www.test.com",
|
||||
fileUploadType: FileUploadType = FileUploadType.AZURE,
|
||||
sendResponse: SyncResponseJson.Send = createMockSend(number = number, type = SendTypeJson.FILE),
|
||||
): CreateFileSendResponseJson =
|
||||
CreateFileSendResponseJson(
|
||||
url = "www.test.com",
|
||||
fileUploadType = FileUploadType.AZURE,
|
||||
sendResponse = createMockSend(number = number, type = type),
|
||||
url = url,
|
||||
fileUploadType = fileUploadType,
|
||||
sendResponse = sendResponse,
|
||||
)
|
||||
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Send] with a given [number].
|
||||
*/
|
||||
@Suppress("LongParameterList")
|
||||
fun createMockSend(
|
||||
number: Int,
|
||||
accessCount: Int = 1,
|
||||
maxAccessCount: Int? = 1,
|
||||
notes: String? = "mockNotes-$number",
|
||||
revisionDate: ZonedDateTime = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
shouldHideEmail: Boolean = false,
|
||||
type: SendTypeJson = SendTypeJson.FILE,
|
||||
accessId: String? = "mockAccessId-$number",
|
||||
password: String? = "mockPassword-$number",
|
||||
file: SyncResponseJson.Send.File? = createMockFile(number = number),
|
||||
deletionDate: ZonedDateTime = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
name: String? = "mockName-$number",
|
||||
isDisabled: Boolean = false,
|
||||
id: String = "mockId-$number",
|
||||
text: SyncResponseJson.Send.Text? = createMockText(number = number),
|
||||
key: String? = "mockKey-$number",
|
||||
expirationDate: ZonedDateTime? = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
): SyncResponseJson.Send =
|
||||
SyncResponseJson.Send(
|
||||
accessCount = 1,
|
||||
notes = "mockNotes-$number",
|
||||
revisionDate = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
maxAccessCount = 1,
|
||||
shouldHideEmail = false,
|
||||
accessCount = accessCount,
|
||||
notes = notes,
|
||||
revisionDate = revisionDate,
|
||||
maxAccessCount = maxAccessCount,
|
||||
shouldHideEmail = shouldHideEmail,
|
||||
type = type,
|
||||
accessId = "mockAccessId-$number",
|
||||
password = "mockPassword-$number",
|
||||
file = createMockFile(number = number),
|
||||
deletionDate = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
name = "mockName-$number",
|
||||
isDisabled = false,
|
||||
id = "mockId-$number",
|
||||
text = createMockText(number = number),
|
||||
key = "mockKey-$number",
|
||||
expirationDate = ZonedDateTime.parse("2023-10-27T12:00:00Z"),
|
||||
accessId = accessId,
|
||||
password = password,
|
||||
file = file,
|
||||
deletionDate = deletionDate,
|
||||
name = name,
|
||||
isDisabled = isDisabled,
|
||||
id = id,
|
||||
text = text,
|
||||
key = key,
|
||||
expirationDate = expirationDate,
|
||||
)
|
||||
|
||||
fun createMockFile(number: Int): SyncResponseJson.Send.File =
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Send.File] with a given [number].
|
||||
*/
|
||||
fun createMockFile(
|
||||
number: Int,
|
||||
fileName: String? = "mockFileName-$number",
|
||||
size: Int? = 1,
|
||||
sizeName: String? = "mockSizeName-$number",
|
||||
id: String? = "mockId-$number",
|
||||
): SyncResponseJson.Send.File =
|
||||
SyncResponseJson.Send.File(
|
||||
fileName = "mockFileName-$number",
|
||||
size = 1,
|
||||
sizeName = "mockSizeName-$number",
|
||||
id = "mockId-$number",
|
||||
fileName = fileName,
|
||||
size = size,
|
||||
sizeName = sizeName,
|
||||
id = id,
|
||||
)
|
||||
|
||||
fun createMockText(number: Int): SyncResponseJson.Send.Text =
|
||||
/**
|
||||
* Create a mock [SyncResponseJson.Send.Text] with a given [number].
|
||||
*/
|
||||
fun createMockText(
|
||||
number: Int,
|
||||
isHidden: Boolean = false,
|
||||
text: String? = "mockText-$number",
|
||||
): SyncResponseJson.Send.Text =
|
||||
SyncResponseJson.Send.Text(
|
||||
isHidden = false,
|
||||
text = "mockText-$number",
|
||||
isHidden = isHidden,
|
||||
text = text,
|
||||
)
|
||||
|
||||
@ -1,12 +1,25 @@
|
||||
package com.bitwarden.network.model
|
||||
|
||||
fun createMockSyncResponse(number: Int): SyncResponseJson =
|
||||
/**
|
||||
* Create a mock [SyncResponseJson] with a given [number].
|
||||
*/
|
||||
@Suppress("LongParameterList")
|
||||
fun createMockSyncResponse(
|
||||
number: Int,
|
||||
folders: List<SyncResponseJson.Folder> = listOf(createMockFolder(number = number)),
|
||||
collections: List<SyncResponseJson.Collection> = listOf(createMockCollection(number = number)),
|
||||
profile: SyncResponseJson.Profile = createMockProfile(number = number),
|
||||
ciphers: List<SyncResponseJson.Cipher> = listOf(createMockCipher(number = number)),
|
||||
policies: List<SyncResponseJson.Policy> = listOf(createMockPolicy(number = number)),
|
||||
domains: SyncResponseJson.Domains = createMockDomains(number = number),
|
||||
sends: List<SyncResponseJson.Send> = listOf(createMockSend(number = number)),
|
||||
): SyncResponseJson =
|
||||
SyncResponseJson(
|
||||
folders = listOf(createMockFolder(number = number)),
|
||||
collections = listOf(createMockCollection(number = number)),
|
||||
profile = createMockProfile(number = number),
|
||||
ciphers = listOf(createMockCipher(number = number)),
|
||||
policies = listOf(createMockPolicy(number = number)),
|
||||
domains = createMockDomains(number = number),
|
||||
sends = listOf(createMockSend(number = number)),
|
||||
folders = folders,
|
||||
collections = collections,
|
||||
profile = profile,
|
||||
ciphers = ciphers,
|
||||
policies = policies,
|
||||
domains = domains,
|
||||
sends = sends,
|
||||
)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user