From 347edb67ab243a924cf16c35eb204516126039e6 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 20 Feb 2024 17:48:08 +0100 Subject: [PATCH] Fix tests. --- .../roomlist/impl/RoomListPresenterTests.kt | 13 ++++++++----- .../libraries/matrix/test/sync/FakeSyncService.kt | 6 ++++-- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/features/roomlist/impl/src/test/kotlin/io/element/android/features/roomlist/impl/RoomListPresenterTests.kt b/features/roomlist/impl/src/test/kotlin/io/element/android/features/roomlist/impl/RoomListPresenterTests.kt index 8b937db63d..698408d6e1 100644 --- a/features/roomlist/impl/src/test/kotlin/io/element/android/features/roomlist/impl/RoomListPresenterTests.kt +++ b/features/roomlist/impl/src/test/kotlin/io/element/android/features/roomlist/impl/RoomListPresenterTests.kt @@ -54,6 +54,7 @@ import io.element.android.libraries.matrix.api.encryption.BackupState import io.element.android.libraries.matrix.api.encryption.RecoveryState import io.element.android.libraries.matrix.api.room.RoomNotificationMode import io.element.android.libraries.matrix.api.roomlist.RoomListService +import io.element.android.libraries.matrix.api.sync.SyncState import io.element.android.libraries.matrix.api.timeline.ReceiptType import io.element.android.libraries.matrix.test.AN_AVATAR_URL import io.element.android.libraries.matrix.test.AN_EXCEPTION @@ -68,6 +69,7 @@ import io.element.android.libraries.matrix.test.room.FakeMatrixRoom import io.element.android.libraries.matrix.test.room.aRoomInfo import io.element.android.libraries.matrix.test.room.aRoomSummaryFilled import io.element.android.libraries.matrix.test.roomlist.FakeRoomListService +import io.element.android.libraries.matrix.test.sync.FakeSyncService import io.element.android.libraries.matrix.test.verification.FakeSessionVerificationService import io.element.android.services.analytics.api.AnalyticsService import io.element.android.services.analytics.test.FakeAnalyticsService @@ -103,7 +105,7 @@ class RoomListPresenterTests { assertThat(withUserState.matrixUser!!.userId).isEqualTo(A_USER_ID) assertThat(withUserState.matrixUser!!.displayName).isEqualTo(A_USER_NAME) assertThat(withUserState.matrixUser!!.avatarUrl).isEqualTo(AN_AVATAR_URL) - assertThat(withUserState.showAvatarIndicator).isFalse() + assertThat(withUserState.showAvatarIndicator).isTrue() scope.cancel() } } @@ -126,12 +128,12 @@ class RoomListPresenterTests { }.test { skipItems(1) val initialState = awaitItem() - assertThat(initialState.showAvatarIndicator).isFalse() + assertThat(initialState.showAvatarIndicator).isTrue() sessionVerificationService.givenCanVerifySession(false) - assertThat(awaitItem().showAvatarIndicator).isFalse() - encryptionService.emitBackupState(BackupState.UNKNOWN) + assertThat(awaitItem().showAvatarIndicator).isTrue() + encryptionService.emitBackupState(BackupState.ENABLED) val finalState = awaitItem() - assertThat(finalState.showAvatarIndicator).isTrue() + assertThat(finalState.showAvatarIndicator).isFalse() scope.cancel() } } @@ -284,6 +286,7 @@ class RoomListPresenterTests { sessionVerificationService = FakeSessionVerificationService().apply { givenCanVerifySession(false) }, + syncService = FakeSyncService(initialState = SyncState.Running) ) val scope = CoroutineScope(context = coroutineContext + SupervisorJob()) val presenter = createRoomListPresenter( diff --git a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/sync/FakeSyncService.kt b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/sync/FakeSyncService.kt index d140bafd6f..ffc06e7d18 100644 --- a/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/sync/FakeSyncService.kt +++ b/libraries/matrix/test/src/main/kotlin/io/element/android/libraries/matrix/test/sync/FakeSyncService.kt @@ -21,8 +21,10 @@ import io.element.android.libraries.matrix.api.sync.SyncState import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.StateFlow -class FakeSyncService : SyncService { - private val syncStateFlow = MutableStateFlow(SyncState.Idle) +class FakeSyncService( + initialState: SyncState = SyncState.Idle +) : SyncService { + private val syncStateFlow = MutableStateFlow(initialState) fun simulateError() { syncStateFlow.value = SyncState.Error