Cleanup
This commit is contained in:
@@ -21,7 +21,7 @@ class AppMigration05Test {
|
||||
val sessionStore = InMemorySessionStore().apply {
|
||||
updateData(
|
||||
aSessionData(
|
||||
sessionId = A_SESSION_ID,
|
||||
sessionId = A_SESSION_ID.value,
|
||||
sessionPath = "",
|
||||
)
|
||||
)
|
||||
@@ -37,7 +37,7 @@ class AppMigration05Test {
|
||||
val sessionStore = InMemorySessionStore().apply {
|
||||
updateData(
|
||||
aSessionData(
|
||||
sessionId = A_SESSION_ID,
|
||||
sessionId = A_SESSION_ID.value,
|
||||
sessionPath = "/a/path/existing",
|
||||
)
|
||||
)
|
||||
|
||||
@@ -21,7 +21,7 @@ class AppMigration06Test {
|
||||
val sessionStore = InMemorySessionStore().apply {
|
||||
updateData(
|
||||
aSessionData(
|
||||
sessionId = A_SESSION_ID,
|
||||
sessionId = A_SESSION_ID.value,
|
||||
sessionPath = "/a/path/to/a/session/AN_ID",
|
||||
cachePath = "",
|
||||
)
|
||||
@@ -38,7 +38,7 @@ class AppMigration06Test {
|
||||
val sessionStore = InMemorySessionStore().apply {
|
||||
updateData(
|
||||
aSessionData(
|
||||
sessionId = A_SESSION_ID,
|
||||
sessionId = A_SESSION_ID.value,
|
||||
cachePath = "/a/path/existing",
|
||||
)
|
||||
)
|
||||
|
||||
@@ -37,5 +37,6 @@ dependencies {
|
||||
testImplementation(libs.test.turbine)
|
||||
testImplementation(projects.libraries.matrix.test)
|
||||
testImplementation(projects.libraries.sessionStorage.implMemory)
|
||||
testImplementation(projects.libraries.sessionStorage.test)
|
||||
testImplementation(projects.tests.testutils)
|
||||
}
|
||||
|
||||
@@ -16,6 +16,7 @@ import io.element.android.libraries.matrix.test.A_SESSION_ID
|
||||
import io.element.android.libraries.matrix.test.core.aBuildMeta
|
||||
import io.element.android.libraries.sessionstorage.api.SessionStore
|
||||
import io.element.android.libraries.sessionstorage.impl.memory.InMemorySessionStore
|
||||
import io.element.android.libraries.sessionstorage.test.aSessionData
|
||||
import io.element.android.tests.testutils.WarmUpRule
|
||||
import kotlinx.coroutines.test.runTest
|
||||
import org.junit.Rule
|
||||
|
||||
@@ -15,7 +15,7 @@ import kotlinx.coroutines.flow.MutableStateFlow
|
||||
import kotlinx.coroutines.sync.Mutex
|
||||
import kotlinx.coroutines.sync.withLock
|
||||
import org.matrix.rustcomponents.sdk.TimelineChange
|
||||
import org.matrix.rustcomponents.sdk.TimelineDiffInterface
|
||||
import org.matrix.rustcomponents.sdk.TimelineDiff
|
||||
import org.matrix.rustcomponents.sdk.TimelineItem
|
||||
import timber.log.Timber
|
||||
|
||||
@@ -36,7 +36,7 @@ internal class MatrixTimelineDiffProcessor(
|
||||
}
|
||||
}
|
||||
|
||||
suspend fun postDiffs(diffs: List<TimelineDiffInterface>) {
|
||||
suspend fun postDiffs(diffs: List<TimelineDiff>) {
|
||||
updateTimelineItems {
|
||||
Timber.v("Update timeline items from postDiffs (with ${diffs.size} items) on ${Thread.currentThread()}")
|
||||
diffs.forEach { diff ->
|
||||
@@ -52,7 +52,7 @@ internal class MatrixTimelineDiffProcessor(
|
||||
timelineItems.value = mutableTimelineItems
|
||||
}
|
||||
|
||||
private fun MutableList<MatrixTimelineItem>.applyDiff(diff: TimelineDiffInterface) {
|
||||
private fun MutableList<MatrixTimelineItem>.applyDiff(diff: TimelineDiff) {
|
||||
when (diff.change()) {
|
||||
TimelineChange.APPEND -> {
|
||||
val items = diff.append()?.map { it.asMatrixTimelineItem() } ?: return
|
||||
|
||||
@@ -25,5 +25,3 @@ class QrLoginProgressExtensionsKtTest {
|
||||
.isEqualTo(QrCodeLoginStep.Finished)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -15,12 +15,13 @@ 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)
|
||||
val sut = BackupStateMapper()
|
||||
assertThat(sut.map(RustBackupState.UNKNOWN)).isEqualTo(BackupState.UNKNOWN)
|
||||
assertThat(sut.map(RustBackupState.CREATING)).isEqualTo(BackupState.CREATING)
|
||||
assertThat(sut.map(RustBackupState.ENABLING)).isEqualTo(BackupState.ENABLING)
|
||||
assertThat(sut.map(RustBackupState.RESUMING)).isEqualTo(BackupState.RESUMING)
|
||||
assertThat(sut.map(RustBackupState.ENABLED)).isEqualTo(BackupState.ENABLED)
|
||||
assertThat(sut.map(RustBackupState.DOWNLOADING)).isEqualTo(BackupState.DOWNLOADING)
|
||||
assertThat(sut.map(RustBackupState.DISABLING)).isEqualTo(BackupState.DISABLING)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,19 +15,21 @@ import org.matrix.rustcomponents.sdk.BackupUploadState as RustBackupUploadState
|
||||
class BackupUploadStateMapperTest {
|
||||
@Test
|
||||
fun `Ensure that mapping is correct`() {
|
||||
assertThat(BackupUploadStateMapper().map(RustBackupUploadState.Waiting))
|
||||
val sut = BackupUploadStateMapper()
|
||||
assertThat(sut.map(RustBackupUploadState.Waiting))
|
||||
.isEqualTo(BackupUploadState.Waiting)
|
||||
assertThat(BackupUploadStateMapper().map(RustBackupUploadState.Error))
|
||||
assertThat(sut.map(RustBackupUploadState.Error))
|
||||
.isEqualTo(BackupUploadState.Error)
|
||||
assertThat(BackupUploadStateMapper().map(RustBackupUploadState.Done))
|
||||
assertThat(sut.map(RustBackupUploadState.Done))
|
||||
.isEqualTo(BackupUploadState.Done)
|
||||
assertThat(BackupUploadStateMapper().map(RustBackupUploadState.Uploading(1.toUInt(), 2.toUInt())))
|
||||
assertThat(sut.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())))
|
||||
val sut = BackupUploadStateMapper()
|
||||
assertThat(sut.map(RustBackupUploadState.Uploading(2.toUInt(), 2.toUInt())))
|
||||
.isEqualTo(BackupUploadState.Done)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,17 +15,18 @@ import org.matrix.rustcomponents.sdk.EnableRecoveryProgress as RustEnableRecover
|
||||
class EnableRecoveryProgressMapperTest {
|
||||
@Test
|
||||
fun `Ensure that mapping is correct`() {
|
||||
assertThat(EnableRecoveryProgressMapper().map(RustEnableRecoveryProgress.CreatingRecoveryKey))
|
||||
val sut = EnableRecoveryProgressMapper()
|
||||
assertThat(sut.map(RustEnableRecoveryProgress.CreatingRecoveryKey))
|
||||
.isEqualTo(EnableRecoveryProgress.CreatingRecoveryKey)
|
||||
assertThat(EnableRecoveryProgressMapper().map(RustEnableRecoveryProgress.CreatingBackup))
|
||||
assertThat(sut.map(RustEnableRecoveryProgress.CreatingBackup))
|
||||
.isEqualTo(EnableRecoveryProgress.CreatingBackup)
|
||||
assertThat(EnableRecoveryProgressMapper().map(RustEnableRecoveryProgress.Starting))
|
||||
assertThat(sut.map(RustEnableRecoveryProgress.Starting))
|
||||
.isEqualTo(EnableRecoveryProgress.Starting)
|
||||
assertThat(EnableRecoveryProgressMapper().map(RustEnableRecoveryProgress.BackingUp(1.toUInt(), 2.toUInt())))
|
||||
assertThat(sut.map(RustEnableRecoveryProgress.BackingUp(1.toUInt(), 2.toUInt())))
|
||||
.isEqualTo(EnableRecoveryProgress.BackingUp(1, 2))
|
||||
assertThat(EnableRecoveryProgressMapper().map(RustEnableRecoveryProgress.RoomKeyUploadError))
|
||||
assertThat(sut.map(RustEnableRecoveryProgress.RoomKeyUploadError))
|
||||
.isEqualTo(EnableRecoveryProgress.RoomKeyUploadError)
|
||||
assertThat(EnableRecoveryProgressMapper().map(RustEnableRecoveryProgress.Done("recoveryKey")))
|
||||
assertThat(sut.map(RustEnableRecoveryProgress.Done("recoveryKey")))
|
||||
.isEqualTo(EnableRecoveryProgress.Done("recoveryKey"))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,9 +15,10 @@ 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)
|
||||
val sut = RecoveryStateMapper()
|
||||
assertThat(sut.map(RustRecoveryState.UNKNOWN)).isEqualTo(RecoveryState.UNKNOWN)
|
||||
assertThat(sut.map(RustRecoveryState.ENABLED)).isEqualTo(RecoveryState.ENABLED)
|
||||
assertThat(sut.map(RustRecoveryState.DISABLED)).isEqualTo(RecoveryState.DISABLED)
|
||||
assertThat(sut.map(RustRecoveryState.INCOMPLETE)).isEqualTo(RecoveryState.INCOMPLETE)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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.fixtures.factories
|
||||
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ALIAS
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ID
|
||||
import org.matrix.rustcomponents.sdk.PublicRoomJoinRule
|
||||
import org.matrix.rustcomponents.sdk.RoomDescription
|
||||
|
||||
internal fun aRustRoomDescription(): RoomDescription {
|
||||
return RoomDescription(
|
||||
roomId = A_ROOM_ID.value,
|
||||
name = "name",
|
||||
topic = "topic",
|
||||
alias = A_ROOM_ALIAS.value,
|
||||
avatarUrl = "avatarUrl",
|
||||
joinRule = PublicRoomJoinRule.PUBLIC,
|
||||
isWorldReadable = true,
|
||||
joinedMembers = 2u
|
||||
)
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
* 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.fixtures.factories
|
||||
|
||||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
import io.element.android.libraries.matrix.test.A_USER_ID
|
||||
import org.matrix.rustcomponents.sdk.RoomHero
|
||||
|
||||
internal fun aRustRoomHero(
|
||||
userId: UserId = A_USER_ID,
|
||||
): RoomHero {
|
||||
return RoomHero(
|
||||
userId = userId.value,
|
||||
displayName = "displayName",
|
||||
avatarUrl = "avatarUrl",
|
||||
)
|
||||
}
|
||||
@@ -5,7 +5,7 @@
|
||||
* Please see LICENSE in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.matrix.impl.fixtures
|
||||
package io.element.android.libraries.matrix.impl.fixtures.factories
|
||||
|
||||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ID
|
||||
@@ -5,7 +5,7 @@
|
||||
* Please see LICENSE in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.matrix.impl.fixtures
|
||||
package io.element.android.libraries.matrix.impl.fixtures.factories
|
||||
|
||||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
import org.matrix.rustcomponents.sdk.MembershipState
|
||||
@@ -0,0 +1,34 @@
|
||||
/*
|
||||
* 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.fixtures.factories
|
||||
|
||||
import org.matrix.rustcomponents.sdk.RoomPowerLevels
|
||||
|
||||
internal fun aRustRoomPowerLevels(
|
||||
ban: Long,
|
||||
invite: Long,
|
||||
kick: Long,
|
||||
redact: Long,
|
||||
eventsDefault: Long,
|
||||
stateDefault: Long,
|
||||
usersDefault: Long,
|
||||
roomName: Long,
|
||||
roomAvatar: Long,
|
||||
roomTopic: Long,
|
||||
) = RoomPowerLevels(
|
||||
ban = ban,
|
||||
invite = invite,
|
||||
kick = kick,
|
||||
redact = redact,
|
||||
eventsDefault = eventsDefault,
|
||||
stateDefault = stateDefault,
|
||||
usersDefault = usersDefault,
|
||||
roomName = roomName,
|
||||
roomAvatar = roomAvatar,
|
||||
roomTopic = roomTopic,
|
||||
)
|
||||
@@ -0,0 +1,35 @@
|
||||
/*
|
||||
* 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.fixtures.factories
|
||||
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ALIAS
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ID
|
||||
import org.matrix.rustcomponents.sdk.RoomPreview
|
||||
|
||||
internal fun aRustRoomPreview(
|
||||
canonicalAlias: String? = A_ROOM_ALIAS.value,
|
||||
isJoined: Boolean = true,
|
||||
isInvited: Boolean = true,
|
||||
isPublic: Boolean = true,
|
||||
canKnock: Boolean = true,
|
||||
): RoomPreview {
|
||||
return RoomPreview(
|
||||
roomId = A_ROOM_ID.value,
|
||||
canonicalAlias = canonicalAlias,
|
||||
name = "name",
|
||||
topic = "topic",
|
||||
avatarUrl = "avatarUrl",
|
||||
numJoinedMembers = 1u,
|
||||
roomType = null,
|
||||
isHistoryWorldReadable = true,
|
||||
isJoined = isJoined,
|
||||
isInvited = isInvited,
|
||||
isPublic = isPublic,
|
||||
canKnock = canKnock,
|
||||
)
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
/*
|
||||
* 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.fixtures.factories
|
||||
|
||||
import org.matrix.rustcomponents.sdk.SearchUsersResults
|
||||
import org.matrix.rustcomponents.sdk.UserProfile
|
||||
|
||||
internal fun aRustSearchUsersResults(
|
||||
results: List<UserProfile>,
|
||||
limited: Boolean,
|
||||
) = SearchUsersResults(
|
||||
results = results,
|
||||
limited = limited,
|
||||
)
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
/*
|
||||
* 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.fixtures.factories
|
||||
|
||||
import io.element.android.libraries.matrix.test.A_DEVICE_ID
|
||||
import io.element.android.libraries.matrix.test.A_HOMESERVER_URL
|
||||
import io.element.android.libraries.matrix.test.A_USER_ID
|
||||
import org.matrix.rustcomponents.sdk.Session
|
||||
import org.matrix.rustcomponents.sdk.SlidingSyncVersion
|
||||
|
||||
internal fun aRustSession(
|
||||
proxy: SlidingSyncVersion = SlidingSyncVersion.None
|
||||
): Session {
|
||||
return Session(
|
||||
accessToken = "accessToken",
|
||||
refreshToken = "refreshToken",
|
||||
userId = A_USER_ID.value,
|
||||
deviceId = A_DEVICE_ID.value,
|
||||
homeserverUrl = A_HOMESERVER_URL,
|
||||
oidcData = null,
|
||||
slidingSyncVersion = proxy,
|
||||
)
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
/*
|
||||
* 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.fixtures.factories
|
||||
|
||||
import io.element.android.libraries.matrix.test.A_USER_ID
|
||||
import org.matrix.rustcomponents.sdk.UserProfile
|
||||
|
||||
fun aRustUserProfile(
|
||||
userId: String = A_USER_ID.value,
|
||||
displayName: String = "displayName",
|
||||
avatarUrl: String = "avatarUrl",
|
||||
) = UserProfile(
|
||||
userId = userId,
|
||||
displayName = displayName,
|
||||
avatarUrl = avatarUrl,
|
||||
)
|
||||
@@ -5,7 +5,7 @@
|
||||
* Please see LICENSE in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.matrix.impl.fixtures
|
||||
package io.element.android.libraries.matrix.impl.fixtures.fakes
|
||||
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ID
|
||||
@@ -5,9 +5,10 @@
|
||||
* Please see LICENSE in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.matrix.impl.fixtures
|
||||
package io.element.android.libraries.matrix.impl.fixtures.fakes
|
||||
|
||||
import io.element.android.libraries.matrix.api.core.RoomId
|
||||
import io.element.android.libraries.matrix.impl.fixtures.factories.aRustRoomInfo
|
||||
import org.matrix.rustcomponents.sdk.EventTimelineItem
|
||||
import org.matrix.rustcomponents.sdk.NoPointer
|
||||
import org.matrix.rustcomponents.sdk.RoomInfo
|
||||
@@ -5,7 +5,7 @@
|
||||
* Please see LICENSE in the repository root for full details.
|
||||
*/
|
||||
|
||||
package io.element.android.libraries.matrix.impl.fixtures
|
||||
package io.element.android.libraries.matrix.impl.fixtures.fakes
|
||||
|
||||
import org.matrix.rustcomponents.sdk.NoPointer
|
||||
import org.matrix.rustcomponents.sdk.RoomMember
|
||||
@@ -0,0 +1,30 @@
|
||||
/*
|
||||
* 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.fixtures.fakes
|
||||
|
||||
import org.matrix.rustcomponents.sdk.InsertData
|
||||
import org.matrix.rustcomponents.sdk.NoPointer
|
||||
import org.matrix.rustcomponents.sdk.SetData
|
||||
import org.matrix.rustcomponents.sdk.TimelineChange
|
||||
import org.matrix.rustcomponents.sdk.TimelineDiff
|
||||
import org.matrix.rustcomponents.sdk.TimelineItem
|
||||
|
||||
class FakeRustTimelineDiff(
|
||||
private val change: TimelineChange,
|
||||
private val item: TimelineItem? = FakeRustTimelineItem()
|
||||
) : TimelineDiff(NoPointer) {
|
||||
override fun change() = change
|
||||
override fun append(): List<TimelineItem>? = item?.let { listOf(it) }
|
||||
override fun insert(): InsertData? = item?.let { InsertData(1u, it) }
|
||||
override fun pushBack(): TimelineItem? = item
|
||||
override fun pushFront(): TimelineItem? = item
|
||||
override fun remove(): UInt? = 1u
|
||||
override fun reset(): List<TimelineItem>? = item?.let { listOf(it) }
|
||||
override fun set(): SetData? = item?.let { SetData(1u, it) }
|
||||
override fun truncate(): UInt? = 1u
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
/*
|
||||
* 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.fixtures.fakes
|
||||
|
||||
import org.matrix.rustcomponents.sdk.EventTimelineItem
|
||||
import org.matrix.rustcomponents.sdk.NoPointer
|
||||
import org.matrix.rustcomponents.sdk.TimelineItem
|
||||
import org.matrix.rustcomponents.sdk.VirtualTimelineItem
|
||||
|
||||
class FakeRustTimelineItem : TimelineItem(NoPointer) {
|
||||
override fun asEvent(): EventTimelineItem? = null
|
||||
override fun asVirtual(): VirtualTimelineItem? = null
|
||||
override fun fmtDebug(): String = "fmtDebug"
|
||||
override fun uniqueId(): String = "uniqueId"
|
||||
}
|
||||
@@ -8,6 +8,7 @@
|
||||
package io.element.android.libraries.matrix.impl.mapper
|
||||
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.libraries.matrix.impl.fixtures.factories.aRustSession
|
||||
import io.element.android.libraries.matrix.impl.paths.SessionPaths
|
||||
import io.element.android.libraries.matrix.test.A_DEVICE_ID
|
||||
import io.element.android.libraries.matrix.test.A_HOMESERVER_URL
|
||||
@@ -16,7 +17,6 @@ import io.element.android.libraries.matrix.test.A_SECRET
|
||||
import io.element.android.libraries.matrix.test.A_USER_ID
|
||||
import io.element.android.libraries.sessionstorage.api.LoginType
|
||||
import org.junit.Test
|
||||
import org.matrix.rustcomponents.sdk.Session
|
||||
import org.matrix.rustcomponents.sdk.SlidingSyncVersion
|
||||
import java.io.File
|
||||
|
||||
@@ -82,17 +82,3 @@ class SessionKtTest {
|
||||
assertThat(result.slidingSyncProxy).isEqualTo("proxyUrl")
|
||||
}
|
||||
}
|
||||
|
||||
internal fun aRustSession(
|
||||
proxy: SlidingSyncVersion = SlidingSyncVersion.None
|
||||
): Session {
|
||||
return Session(
|
||||
accessToken = "accessToken",
|
||||
refreshToken = "refreshToken",
|
||||
userId = A_USER_ID.value,
|
||||
deviceId = A_DEVICE_ID.value,
|
||||
homeserverUrl = A_HOMESERVER_URL,
|
||||
oidcData = null,
|
||||
slidingSyncVersion = proxy,
|
||||
)
|
||||
}
|
||||
|
||||
@@ -12,7 +12,6 @@ import io.element.android.libraries.matrix.api.poll.PollKind
|
||||
import org.junit.Test
|
||||
import org.matrix.rustcomponents.sdk.PollKind as RustPollKind
|
||||
|
||||
|
||||
class PollKindKtTest {
|
||||
@Test
|
||||
fun `map should return Disclosed when RustPollKind is Disclosed`() {
|
||||
|
||||
@@ -15,8 +15,9 @@ import io.element.android.libraries.matrix.api.room.CurrentUserMembership
|
||||
import io.element.android.libraries.matrix.api.room.MatrixRoomInfo
|
||||
import io.element.android.libraries.matrix.api.room.RoomNotificationMode
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
import io.element.android.libraries.matrix.impl.room.member.aRustRoomMember
|
||||
import io.element.android.libraries.matrix.impl.roomlist.aRustRoomInfo
|
||||
import io.element.android.libraries.matrix.impl.fixtures.factories.aRustRoomHero
|
||||
import io.element.android.libraries.matrix.impl.fixtures.factories.aRustRoomInfo
|
||||
import io.element.android.libraries.matrix.impl.fixtures.factories.aRustRoomMember
|
||||
import io.element.android.libraries.matrix.test.AN_AVATAR_URL
|
||||
import io.element.android.libraries.matrix.test.AN_EVENT_ID
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ALIAS
|
||||
@@ -52,7 +53,7 @@ class MatrixRoomInfoMapperTest {
|
||||
alternativeAliases = listOf(A_ROOM_ALIAS.value),
|
||||
membership = Membership.JOINED,
|
||||
inviter = aRustRoomMember(A_USER_ID),
|
||||
heroes = listOf(aRoomHero()),
|
||||
heroes = listOf(aRustRoomHero()),
|
||||
activeMembersCount = 2uL,
|
||||
invitedMembersCount = 3uL,
|
||||
joinedMembersCount = 4uL,
|
||||
@@ -67,7 +68,7 @@ class MatrixRoomInfoMapperTest {
|
||||
numUnreadNotifications = 13uL,
|
||||
numUnreadMentions = 14uL,
|
||||
pinnedEventIds = listOf(AN_EVENT_ID.value),
|
||||
roomCreator = A_USER_ID.value,
|
||||
roomCreator = A_USER_ID,
|
||||
)
|
||||
)
|
||||
).isEqualTo(
|
||||
@@ -127,7 +128,7 @@ class MatrixRoomInfoMapperTest {
|
||||
alternativeAliases = emptyList(),
|
||||
membership = Membership.INVITED,
|
||||
inviter = null,
|
||||
heroes = listOf(aRoomHero()),
|
||||
heroes = listOf(aRustRoomHero()),
|
||||
activeMembersCount = 2uL,
|
||||
invitedMembersCount = 3uL,
|
||||
joinedMembersCount = 4uL,
|
||||
|
||||
@@ -8,9 +8,8 @@
|
||||
package io.element.android.libraries.matrix.impl.room
|
||||
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import org.junit.Test
|
||||
|
||||
import io.element.android.libraries.matrix.api.room.MessageEventType
|
||||
import org.junit.Test
|
||||
import org.matrix.rustcomponents.sdk.MessageLikeEventType
|
||||
|
||||
class MessageEventTypeKtTest {
|
||||
|
||||
@@ -10,10 +10,10 @@ package io.element.android.libraries.matrix.impl.room
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.libraries.matrix.api.core.UserId
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
import io.element.android.libraries.matrix.impl.fixtures.aRustRoomInfo
|
||||
import io.element.android.libraries.matrix.impl.fixtures.factories.aRustRoomHero
|
||||
import io.element.android.libraries.matrix.impl.fixtures.factories.aRustRoomInfo
|
||||
import io.element.android.libraries.matrix.test.A_USER_ID
|
||||
import org.junit.Test
|
||||
import org.matrix.rustcomponents.sdk.RoomHero
|
||||
|
||||
class RoomInfoExtTest {
|
||||
@Test
|
||||
@@ -21,7 +21,7 @@ class RoomInfoExtTest {
|
||||
val result = aRustRoomInfo(
|
||||
isDirect = true,
|
||||
activeMembersCount = 2uL,
|
||||
heroes = listOf(aRoomHero())
|
||||
heroes = listOf(aRustRoomHero())
|
||||
).elementHeroes()
|
||||
assertThat(result).isEqualTo(
|
||||
listOf(
|
||||
@@ -39,7 +39,7 @@ class RoomInfoExtTest {
|
||||
val result = aRustRoomInfo(
|
||||
isDirect = true,
|
||||
activeMembersCount = 2uL,
|
||||
heroes = listOf(aRoomHero(), aRoomHero())
|
||||
heroes = listOf(aRustRoomHero(), aRustRoomHero())
|
||||
).elementHeroes()
|
||||
assertThat(result).isEmpty()
|
||||
}
|
||||
@@ -49,7 +49,7 @@ class RoomInfoExtTest {
|
||||
val result = aRustRoomInfo(
|
||||
isDirect = false,
|
||||
activeMembersCount = 2uL,
|
||||
heroes = listOf(aRoomHero())
|
||||
heroes = listOf(aRustRoomHero())
|
||||
).elementHeroes()
|
||||
assertThat(result).isEmpty()
|
||||
}
|
||||
@@ -59,18 +59,9 @@ class RoomInfoExtTest {
|
||||
val result = aRustRoomInfo(
|
||||
isDirect = true,
|
||||
activeMembersCount = 3uL,
|
||||
heroes = listOf(aRoomHero())
|
||||
heroes = listOf(aRustRoomHero())
|
||||
).elementHeroes()
|
||||
assertThat(result).isEmpty()
|
||||
}
|
||||
}
|
||||
|
||||
internal fun aRoomHero(
|
||||
userId: UserId = A_USER_ID,
|
||||
): RoomHero {
|
||||
return RoomHero(
|
||||
userId = userId.value,
|
||||
displayName = "displayName",
|
||||
avatarUrl = "avatarUrl",
|
||||
)
|
||||
}
|
||||
|
||||
@@ -8,9 +8,8 @@
|
||||
package io.element.android.libraries.matrix.impl.room
|
||||
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import org.junit.Test
|
||||
|
||||
import io.element.android.libraries.matrix.api.room.StateEventType
|
||||
import org.junit.Test
|
||||
import org.matrix.rustcomponents.sdk.StateEventType as RustStateEventType
|
||||
|
||||
class StateEventTypeTest {
|
||||
|
||||
@@ -11,9 +11,9 @@ import app.cash.turbine.test
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.libraries.matrix.api.room.MatrixRoomMembersState
|
||||
import io.element.android.libraries.matrix.api.room.roomMembers
|
||||
import io.element.android.libraries.matrix.impl.fixtures.FakeRustRoom
|
||||
import io.element.android.libraries.matrix.impl.fixtures.FakeRustRoomMembersIterator
|
||||
import io.element.android.libraries.matrix.impl.fixtures.aRustRoomMember
|
||||
import io.element.android.libraries.matrix.impl.fixtures.fakes.FakeRustRoom
|
||||
import io.element.android.libraries.matrix.impl.fixtures.fakes.FakeRustRoomMembersIterator
|
||||
import io.element.android.libraries.matrix.impl.fixtures.factories.aRustRoomMember
|
||||
import io.element.android.libraries.matrix.impl.room.member.RoomMemberListFetcher.Source.CACHE
|
||||
import io.element.android.libraries.matrix.impl.room.member.RoomMemberListFetcher.Source.CACHE_AND_SERVER
|
||||
import io.element.android.libraries.matrix.impl.room.member.RoomMemberListFetcher.Source.SERVER
|
||||
|
||||
@@ -9,15 +9,15 @@ package io.element.android.libraries.matrix.impl.room.powerlevels
|
||||
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.libraries.matrix.api.room.powerlevels.MatrixRoomPowerLevels
|
||||
import io.element.android.libraries.matrix.impl.fixtures.factories.aRustRoomPowerLevels
|
||||
import org.junit.Test
|
||||
import org.matrix.rustcomponents.sdk.RoomPowerLevels as RustRoomPowerLevels
|
||||
|
||||
class RoomPowerLevelsMapperTest {
|
||||
@Test
|
||||
fun `test that mapping of RoomPowerLevels is correct`() {
|
||||
assertThat(
|
||||
RoomPowerLevelsMapper.map(
|
||||
RustRoomPowerLevels(
|
||||
aRustRoomPowerLevels(
|
||||
ban = 1,
|
||||
invite = 2,
|
||||
kick = 3,
|
||||
|
||||
@@ -10,10 +10,10 @@ package io.element.android.libraries.matrix.impl.room.preview
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.libraries.matrix.api.room.RoomType
|
||||
import io.element.android.libraries.matrix.api.room.preview.RoomPreview
|
||||
import io.element.android.libraries.matrix.impl.fixtures.factories.aRustRoomPreview
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ALIAS
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ID
|
||||
import org.junit.Test
|
||||
import org.matrix.rustcomponents.sdk.RoomPreview as RustRoomPreview
|
||||
|
||||
class RoomPreviewMapperTest {
|
||||
@Test
|
||||
@@ -71,26 +71,3 @@ class RoomPreviewMapperTest {
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
internal fun aRustRoomPreview(
|
||||
canonicalAlias: String? = A_ROOM_ALIAS.value,
|
||||
isJoined: Boolean = true,
|
||||
isInvited: Boolean = true,
|
||||
isPublic: Boolean = true,
|
||||
canKnock: Boolean = true,
|
||||
): RustRoomPreview {
|
||||
return RustRoomPreview(
|
||||
roomId = A_ROOM_ID.value,
|
||||
canonicalAlias = canonicalAlias,
|
||||
name = "name",
|
||||
topic = "topic",
|
||||
avatarUrl = "avatarUrl",
|
||||
numJoinedMembers = 1u,
|
||||
roomType = null,
|
||||
isHistoryWorldReadable = true,
|
||||
isJoined = isJoined,
|
||||
isInvited = isInvited,
|
||||
isPublic = isPublic,
|
||||
canKnock = canKnock,
|
||||
)
|
||||
}
|
||||
|
||||
@@ -9,12 +9,12 @@ package io.element.android.libraries.matrix.impl.roomdirectory
|
||||
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.libraries.matrix.api.roomdirectory.RoomDescription
|
||||
import io.element.android.libraries.matrix.impl.fixtures.factories.aRustRoomDescription
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ALIAS
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ID
|
||||
import io.element.android.libraries.matrix.test.roomdirectory.aRoomDescription
|
||||
import org.junit.Test
|
||||
import org.matrix.rustcomponents.sdk.PublicRoomJoinRule
|
||||
import org.matrix.rustcomponents.sdk.RoomDescription as RustRoomDescription
|
||||
|
||||
class RoomDescriptionMapperTest {
|
||||
@Test
|
||||
@@ -45,16 +45,3 @@ class RoomDescriptionMapperTest {
|
||||
assertThat(null.map()).isEqualTo(RoomDescription.JoinRule.UNKNOWN)
|
||||
}
|
||||
}
|
||||
|
||||
internal fun aRustRoomDescription(): RustRoomDescription {
|
||||
return RustRoomDescription(
|
||||
roomId = A_ROOM_ID.value,
|
||||
name = "name",
|
||||
topic = "topic",
|
||||
alias = A_ROOM_ALIAS.value,
|
||||
avatarUrl = "avatarUrl",
|
||||
joinRule = PublicRoomJoinRule.PUBLIC,
|
||||
isWorldReadable = true,
|
||||
joinedMembers = 2u
|
||||
)
|
||||
}
|
||||
|
||||
@@ -10,7 +10,7 @@ package io.element.android.libraries.matrix.impl.roomlist
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import com.sun.jna.Pointer
|
||||
import io.element.android.libraries.matrix.api.roomlist.RoomSummary
|
||||
import io.element.android.libraries.matrix.impl.fixtures.FakeRustRoomListItem
|
||||
import io.element.android.libraries.matrix.impl.fixtures.fakes.FakeRustRoomListItem
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ID
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ID_2
|
||||
import io.element.android.libraries.matrix.test.A_ROOM_ID_3
|
||||
|
||||
@@ -9,6 +9,7 @@ package io.element.android.libraries.matrix.impl.timeline
|
||||
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.libraries.matrix.api.timeline.MatrixTimelineItem
|
||||
import io.element.android.libraries.matrix.impl.fixtures.fakes.FakeRustTimelineDiff
|
||||
import io.element.android.libraries.matrix.impl.timeline.item.event.EventTimelineItemMapper
|
||||
import io.element.android.libraries.matrix.impl.timeline.item.event.TimelineEventContentMapper
|
||||
import io.element.android.libraries.matrix.impl.timeline.item.virtual.VirtualTimelineItemMapper
|
||||
@@ -19,29 +20,7 @@ import kotlinx.coroutines.flow.MutableStateFlow
|
||||
import kotlinx.coroutines.test.TestScope
|
||||
import kotlinx.coroutines.test.runTest
|
||||
import org.junit.Test
|
||||
import org.matrix.rustcomponents.sdk.EventTimelineItem
|
||||
import org.matrix.rustcomponents.sdk.InsertData
|
||||
import org.matrix.rustcomponents.sdk.NoPointer
|
||||
import org.matrix.rustcomponents.sdk.SetData
|
||||
import org.matrix.rustcomponents.sdk.TimelineChange
|
||||
import org.matrix.rustcomponents.sdk.TimelineDiffInterface
|
||||
import org.matrix.rustcomponents.sdk.TimelineItem
|
||||
import org.matrix.rustcomponents.sdk.VirtualTimelineItem
|
||||
|
||||
open class FakeTimelineDiff(
|
||||
private val change: TimelineChange,
|
||||
private val item: TimelineItem? = FakeTimelineItem()
|
||||
) : TimelineDiffInterface {
|
||||
override fun change() = change
|
||||
override fun append(): List<TimelineItem>? = item?.let { listOf(it) }
|
||||
override fun insert(): InsertData? = item?.let { InsertData(1u, it) }
|
||||
override fun pushBack(): TimelineItem? = item
|
||||
override fun pushFront(): TimelineItem? = item
|
||||
override fun remove(): UInt? = 1u
|
||||
override fun reset(): List<TimelineItem>? = item?.let { listOf(it) }
|
||||
override fun set(): SetData? = item?.let { SetData(1u, it) }
|
||||
override fun truncate(): UInt? = 1u
|
||||
}
|
||||
|
||||
class MatrixTimelineDiffProcessorTest {
|
||||
private val timelineItems = MutableStateFlow<List<MatrixTimelineItem>>(emptyList())
|
||||
@@ -53,7 +32,7 @@ class MatrixTimelineDiffProcessorTest {
|
||||
fun `Append adds new entries at the end of the list`() = runTest {
|
||||
timelineItems.value = listOf(anEvent)
|
||||
val processor = createProcessor()
|
||||
processor.postDiffs(listOf(FakeTimelineDiff(change = TimelineChange.APPEND)))
|
||||
processor.postDiffs(listOf(FakeRustTimelineDiff(change = TimelineChange.APPEND)))
|
||||
assertThat(timelineItems.value.count()).isEqualTo(2)
|
||||
assertThat(timelineItems.value).containsExactly(
|
||||
anEvent,
|
||||
@@ -65,7 +44,7 @@ class MatrixTimelineDiffProcessorTest {
|
||||
fun `PushBack adds a new entry at the end of the list`() = runTest {
|
||||
timelineItems.value = listOf(anEvent)
|
||||
val processor = createProcessor()
|
||||
processor.postDiffs(listOf(FakeTimelineDiff(change = TimelineChange.PUSH_BACK)))
|
||||
processor.postDiffs(listOf(FakeRustTimelineDiff(change = TimelineChange.PUSH_BACK)))
|
||||
assertThat(timelineItems.value.count()).isEqualTo(2)
|
||||
assertThat(timelineItems.value).containsExactly(
|
||||
anEvent,
|
||||
@@ -77,7 +56,7 @@ class MatrixTimelineDiffProcessorTest {
|
||||
fun `PushFront inserts a new entry at the start of the list`() = runTest {
|
||||
timelineItems.value = listOf(anEvent)
|
||||
val processor = createProcessor()
|
||||
processor.postDiffs(listOf(FakeTimelineDiff(change = TimelineChange.PUSH_FRONT)))
|
||||
processor.postDiffs(listOf(FakeRustTimelineDiff(change = TimelineChange.PUSH_FRONT)))
|
||||
assertThat(timelineItems.value.count()).isEqualTo(2)
|
||||
assertThat(timelineItems.value).containsExactly(
|
||||
MatrixTimelineItem.Other,
|
||||
@@ -89,7 +68,7 @@ class MatrixTimelineDiffProcessorTest {
|
||||
fun `Set replaces an entry at some index`() = runTest {
|
||||
timelineItems.value = listOf(anEvent, anEvent2)
|
||||
val processor = createProcessor()
|
||||
processor.postDiffs(listOf(FakeTimelineDiff(change = TimelineChange.SET)))
|
||||
processor.postDiffs(listOf(FakeRustTimelineDiff(change = TimelineChange.SET)))
|
||||
assertThat(timelineItems.value.count()).isEqualTo(2)
|
||||
assertThat(timelineItems.value).containsExactly(
|
||||
anEvent,
|
||||
@@ -101,7 +80,7 @@ class MatrixTimelineDiffProcessorTest {
|
||||
fun `Insert inserts a new entry at the provided index`() = runTest {
|
||||
timelineItems.value = listOf(anEvent, anEvent2)
|
||||
val processor = createProcessor()
|
||||
processor.postDiffs(listOf(FakeTimelineDiff(change = TimelineChange.INSERT)))
|
||||
processor.postDiffs(listOf(FakeRustTimelineDiff(change = TimelineChange.INSERT)))
|
||||
assertThat(timelineItems.value.count()).isEqualTo(3)
|
||||
assertThat(timelineItems.value).containsExactly(
|
||||
anEvent,
|
||||
@@ -114,7 +93,7 @@ class MatrixTimelineDiffProcessorTest {
|
||||
fun `Remove removes an entry at some index`() = runTest {
|
||||
timelineItems.value = listOf(anEvent, MatrixTimelineItem.Other, anEvent2)
|
||||
val processor = createProcessor()
|
||||
processor.postDiffs(listOf(FakeTimelineDiff(change = TimelineChange.REMOVE)))
|
||||
processor.postDiffs(listOf(FakeRustTimelineDiff(change = TimelineChange.REMOVE)))
|
||||
assertThat(timelineItems.value.count()).isEqualTo(2)
|
||||
assertThat(timelineItems.value).containsExactly(
|
||||
anEvent,
|
||||
@@ -126,7 +105,7 @@ class MatrixTimelineDiffProcessorTest {
|
||||
fun `PopBack removes an entry at the end of the list`() = runTest {
|
||||
timelineItems.value = listOf(anEvent, anEvent2)
|
||||
val processor = createProcessor()
|
||||
processor.postDiffs(listOf(FakeTimelineDiff(change = TimelineChange.POP_BACK)))
|
||||
processor.postDiffs(listOf(FakeRustTimelineDiff(change = TimelineChange.POP_BACK)))
|
||||
assertThat(timelineItems.value.count()).isEqualTo(1)
|
||||
assertThat(timelineItems.value).containsExactly(
|
||||
anEvent,
|
||||
@@ -137,7 +116,7 @@ class MatrixTimelineDiffProcessorTest {
|
||||
fun `PopFront removes an entry at the start of the list`() = runTest {
|
||||
timelineItems.value = listOf(anEvent, anEvent2)
|
||||
val processor = createProcessor()
|
||||
processor.postDiffs(listOf(FakeTimelineDiff(change = TimelineChange.POP_FRONT)))
|
||||
processor.postDiffs(listOf(FakeRustTimelineDiff(change = TimelineChange.POP_FRONT)))
|
||||
assertThat(timelineItems.value.count()).isEqualTo(1)
|
||||
assertThat(timelineItems.value).containsExactly(
|
||||
anEvent2,
|
||||
@@ -148,7 +127,7 @@ class MatrixTimelineDiffProcessorTest {
|
||||
fun `Clear removes all the entries`() = runTest {
|
||||
timelineItems.value = listOf(anEvent, anEvent2)
|
||||
val processor = createProcessor()
|
||||
processor.postDiffs(listOf(FakeTimelineDiff(change = TimelineChange.CLEAR)))
|
||||
processor.postDiffs(listOf(FakeRustTimelineDiff(change = TimelineChange.CLEAR)))
|
||||
assertThat(timelineItems.value).isEmpty()
|
||||
}
|
||||
|
||||
@@ -156,7 +135,7 @@ class MatrixTimelineDiffProcessorTest {
|
||||
fun `Truncate removes all entries after the provided length`() = runTest {
|
||||
timelineItems.value = listOf(anEvent, MatrixTimelineItem.Other, anEvent2)
|
||||
val processor = createProcessor()
|
||||
processor.postDiffs(listOf(FakeTimelineDiff(change = TimelineChange.TRUNCATE)))
|
||||
processor.postDiffs(listOf(FakeRustTimelineDiff(change = TimelineChange.TRUNCATE)))
|
||||
assertThat(timelineItems.value.count()).isEqualTo(1)
|
||||
assertThat(timelineItems.value).containsExactly(
|
||||
anEvent,
|
||||
@@ -167,7 +146,7 @@ class MatrixTimelineDiffProcessorTest {
|
||||
fun `Reset removes all entries and add the provided ones`() = runTest {
|
||||
timelineItems.value = listOf(anEvent, MatrixTimelineItem.Other, anEvent2)
|
||||
val processor = createProcessor()
|
||||
processor.postDiffs(listOf(FakeTimelineDiff(change = TimelineChange.RESET)))
|
||||
processor.postDiffs(listOf(FakeRustTimelineDiff(change = TimelineChange.RESET)))
|
||||
assertThat(timelineItems.value.count()).isEqualTo(1)
|
||||
assertThat(timelineItems.value).containsExactly(
|
||||
MatrixTimelineItem.Other,
|
||||
@@ -190,10 +169,3 @@ class MatrixTimelineDiffProcessorTest {
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
class FakeTimelineItem : TimelineItem(NoPointer) {
|
||||
override fun asEvent(): EventTimelineItem? = null
|
||||
override fun asVirtual(): VirtualTimelineItem? = null
|
||||
override fun fmtDebug(): String = "fmtDebug"
|
||||
override fun uniqueId(): String = "uniqueId"
|
||||
}
|
||||
|
||||
@@ -43,4 +43,3 @@ internal val dayEvent = MatrixTimelineItem.Virtual(
|
||||
uniqueId = UniqueId("day"),
|
||||
virtual = VirtualTimelineItem.DayDivider(0),
|
||||
)
|
||||
|
||||
|
||||
@@ -13,7 +13,6 @@ import io.element.android.libraries.matrix.test.A_USER_ID
|
||||
import org.junit.Test
|
||||
|
||||
class RoomBeginningPostProcessorTest {
|
||||
|
||||
@Test
|
||||
fun `processor returns empty list when empty list is provided`() {
|
||||
val processor = RoomBeginningPostProcessor(Timeline.Mode.LIVE)
|
||||
|
||||
@@ -9,14 +9,14 @@ package io.element.android.libraries.matrix.impl.usersearch
|
||||
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
import io.element.android.libraries.matrix.impl.fixtures.factories.aRustUserProfile
|
||||
import io.element.android.libraries.matrix.test.A_USER_ID
|
||||
import org.junit.Test
|
||||
import org.matrix.rustcomponents.sdk.UserProfile
|
||||
|
||||
class UserProfileMapperTest {
|
||||
@Test
|
||||
fun map() {
|
||||
assertThat(UserProfileMapper.map(UserProfile(A_USER_ID.value, "displayName", "avatarUrl")))
|
||||
assertThat(UserProfileMapper.map(aRustUserProfile(A_USER_ID.value, "displayName", "avatarUrl")))
|
||||
.isEqualTo(MatrixUser(A_USER_ID, "displayName", "avatarUrl"))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,19 +10,19 @@ package io.element.android.libraries.matrix.impl.usersearch
|
||||
import com.google.common.truth.Truth.assertThat
|
||||
import io.element.android.libraries.matrix.api.user.MatrixSearchUserResults
|
||||
import io.element.android.libraries.matrix.api.user.MatrixUser
|
||||
import io.element.android.libraries.matrix.impl.fixtures.factories.aRustSearchUsersResults
|
||||
import io.element.android.libraries.matrix.impl.fixtures.factories.aRustUserProfile
|
||||
import io.element.android.libraries.matrix.test.A_USER_ID
|
||||
import kotlinx.collections.immutable.toImmutableList
|
||||
import org.junit.Test
|
||||
import org.matrix.rustcomponents.sdk.SearchUsersResults
|
||||
import org.matrix.rustcomponents.sdk.UserProfile
|
||||
|
||||
class UserSearchResultMapperTest {
|
||||
@Test
|
||||
fun `map limited list`() {
|
||||
assertThat(
|
||||
UserSearchResultMapper.map(
|
||||
SearchUsersResults(
|
||||
results = listOf(UserProfile(A_USER_ID.value, "displayName", "avatarUrl")),
|
||||
aRustSearchUsersResults(
|
||||
results = listOf(aRustUserProfile(A_USER_ID.value, "displayName", "avatarUrl")),
|
||||
limited = true,
|
||||
)
|
||||
)
|
||||
@@ -39,9 +39,9 @@ class UserSearchResultMapperTest {
|
||||
fun `map not limited list`() {
|
||||
assertThat(
|
||||
UserSearchResultMapper.map(
|
||||
SearchUsersResults(
|
||||
listOf(UserProfile(A_USER_ID.value, "displayName", "avatarUrl")),
|
||||
false,
|
||||
aRustSearchUsersResults(
|
||||
results = listOf(aRustUserProfile(A_USER_ID.value, "displayName", "avatarUrl")),
|
||||
limited = false,
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
@@ -51,9 +51,9 @@ class DefaultFirebaseNewTokenHandlerTest {
|
||||
val pusherSubscriber = FakePusherSubscriber(registerPusherResult = registerPusherResult)
|
||||
val firebaseNewTokenHandler = createDefaultFirebaseNewTokenHandler(
|
||||
sessionStore = InMemoryMultiSessionsStore().apply {
|
||||
storeData(aSessionData(A_USER_ID))
|
||||
storeData(aSessionData(A_USER_ID_2))
|
||||
storeData(aSessionData(A_USER_ID_3))
|
||||
storeData(aSessionData(A_USER_ID.value))
|
||||
storeData(aSessionData(A_USER_ID_2.value))
|
||||
storeData(aSessionData(A_USER_ID_3.value))
|
||||
},
|
||||
matrixClientProvider = FakeMatrixClientProvider { sessionId ->
|
||||
when (sessionId) {
|
||||
@@ -90,7 +90,7 @@ class DefaultFirebaseNewTokenHandlerTest {
|
||||
val pusherSubscriber = FakePusherSubscriber(registerPusherResult = registerPusherResult)
|
||||
val firebaseNewTokenHandler = createDefaultFirebaseNewTokenHandler(
|
||||
sessionStore = InMemoryMultiSessionsStore().apply {
|
||||
storeData(aSessionData(A_USER_ID))
|
||||
storeData(aSessionData(A_USER_ID.value))
|
||||
},
|
||||
matrixClientProvider = FakeMatrixClientProvider {
|
||||
Result.failure(IllegalStateException())
|
||||
@@ -114,7 +114,7 @@ class DefaultFirebaseNewTokenHandlerTest {
|
||||
val pusherSubscriber = FakePusherSubscriber(registerPusherResult = registerPusherResult)
|
||||
val firebaseNewTokenHandler = createDefaultFirebaseNewTokenHandler(
|
||||
sessionStore = InMemoryMultiSessionsStore().apply {
|
||||
storeData(aSessionData(A_USER_ID))
|
||||
storeData(aSessionData(A_USER_ID.value))
|
||||
},
|
||||
matrixClientProvider = FakeMatrixClientProvider {
|
||||
Result.success(aMatrixClient1)
|
||||
|
||||
Reference in New Issue
Block a user