Add unit test on crypto mappers

This commit is contained in:
Benoit Marty
2024-09-12 12:58:00 +02:00
committed by Benoit Marty
parent 1ae10364ae
commit f028e902db
4 changed files with 113 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
/*
* Copyright 2024 New Vector Ltd.
*
* SPDX-License-Identifier: AGPL-3.0-only
* Please see LICENSE in the repository root for full details.
*/
package io.element.android.libraries.matrix.impl.encryption
import com.google.common.truth.Truth.assertThat
import io.element.android.libraries.matrix.api.encryption.BackupState
import org.junit.Test
import org.matrix.rustcomponents.sdk.BackupState as RustBackupState
class BackupStateMapperTest {
@Test
fun `Ensure that mapping is correct`() {
assertThat(BackupStateMapper().map(RustBackupState.UNKNOWN)).isEqualTo(BackupState.UNKNOWN)
assertThat(BackupStateMapper().map(RustBackupState.CREATING)).isEqualTo(BackupState.CREATING)
assertThat(BackupStateMapper().map(RustBackupState.ENABLING)).isEqualTo(BackupState.ENABLING)
assertThat(BackupStateMapper().map(RustBackupState.RESUMING)).isEqualTo(BackupState.RESUMING)
assertThat(BackupStateMapper().map(RustBackupState.ENABLED)).isEqualTo(BackupState.ENABLED)
assertThat(BackupStateMapper().map(RustBackupState.DOWNLOADING)).isEqualTo(BackupState.DOWNLOADING)
assertThat(BackupStateMapper().map(RustBackupState.DISABLING)).isEqualTo(BackupState.DISABLING)
}
}

View File

@@ -0,0 +1,33 @@
/*
* Copyright 2024 New Vector Ltd.
*
* SPDX-License-Identifier: AGPL-3.0-only
* Please see LICENSE in the repository root for full details.
*/
package io.element.android.libraries.matrix.impl.encryption
import com.google.common.truth.Truth.assertThat
import io.element.android.libraries.matrix.api.encryption.BackupUploadState
import org.junit.Test
import org.matrix.rustcomponents.sdk.BackupUploadState as RustBackupUploadState
class BackupUploadStateMapperTest {
@Test
fun `Ensure that mapping is correct`() {
assertThat(BackupUploadStateMapper().map(RustBackupUploadState.Waiting))
.isEqualTo(BackupUploadState.Waiting)
assertThat(BackupUploadStateMapper().map(RustBackupUploadState.Error))
.isEqualTo(BackupUploadState.Error)
assertThat(BackupUploadStateMapper().map(RustBackupUploadState.Done))
.isEqualTo(BackupUploadState.Done)
assertThat(BackupUploadStateMapper().map(RustBackupUploadState.Uploading(1.toUInt(), 2.toUInt())))
.isEqualTo(BackupUploadState.Uploading(1, 2))
}
@Test
fun `Ensure that full uploading is mapper to Done`() {
assertThat(BackupUploadStateMapper().map(RustBackupUploadState.Uploading(2.toUInt(), 2.toUInt())))
.isEqualTo(BackupUploadState.Done)
}
}

View File

@@ -0,0 +1,31 @@
/*
* Copyright 2024 New Vector Ltd.
*
* SPDX-License-Identifier: AGPL-3.0-only
* Please see LICENSE in the repository root for full details.
*/
package io.element.android.libraries.matrix.impl.encryption
import com.google.common.truth.Truth.assertThat
import io.element.android.libraries.matrix.api.encryption.EnableRecoveryProgress
import org.junit.Test
import org.matrix.rustcomponents.sdk.EnableRecoveryProgress as RustEnableRecoveryProgress
class EnableRecoveryProgressMapperTest {
@Test
fun `Ensure that mapping is correct`() {
assertThat(EnableRecoveryProgressMapper().map(RustEnableRecoveryProgress.CreatingRecoveryKey))
.isEqualTo(EnableRecoveryProgress.CreatingRecoveryKey)
assertThat(EnableRecoveryProgressMapper().map(RustEnableRecoveryProgress.CreatingBackup))
.isEqualTo(EnableRecoveryProgress.CreatingBackup)
assertThat(EnableRecoveryProgressMapper().map(RustEnableRecoveryProgress.Starting))
.isEqualTo(EnableRecoveryProgress.Starting)
assertThat(EnableRecoveryProgressMapper().map(RustEnableRecoveryProgress.BackingUp(1.toUInt(), 2.toUInt())))
.isEqualTo(EnableRecoveryProgress.BackingUp(1, 2))
assertThat(EnableRecoveryProgressMapper().map(RustEnableRecoveryProgress.RoomKeyUploadError))
.isEqualTo(EnableRecoveryProgress.RoomKeyUploadError)
assertThat(EnableRecoveryProgressMapper().map(RustEnableRecoveryProgress.Done("recoveryKey")))
.isEqualTo(EnableRecoveryProgress.Done("recoveryKey"))
}
}

View File

@@ -0,0 +1,23 @@
/*
* Copyright 2024 New Vector Ltd.
*
* SPDX-License-Identifier: AGPL-3.0-only
* Please see LICENSE in the repository root for full details.
*/
package io.element.android.libraries.matrix.impl.encryption
import com.google.common.truth.Truth.assertThat
import io.element.android.libraries.matrix.api.encryption.RecoveryState
import org.junit.Test
import org.matrix.rustcomponents.sdk.RecoveryState as RustRecoveryState
class RecoveryStateMapperTest {
@Test
fun `Ensure that mapping is correct`() {
assertThat(RecoveryStateMapper().map(RustRecoveryState.UNKNOWN)).isEqualTo(RecoveryState.UNKNOWN)
assertThat(RecoveryStateMapper().map(RustRecoveryState.ENABLED)).isEqualTo(RecoveryState.ENABLED)
assertThat(RecoveryStateMapper().map(RustRecoveryState.DISABLED)).isEqualTo(RecoveryState.DISABLED)
assertThat(RecoveryStateMapper().map(RustRecoveryState.INCOMPLETE)).isEqualTo(RecoveryState.INCOMPLETE)
}
}