fix : protect some more calls to client and rework the concerned apis

This commit is contained in:
ganfra 2024-11-21 18:20:59 +01:00
parent 9717775327
commit 3cb8d4f54f
8 changed files with 93 additions and 42 deletions

View file

@ -30,6 +30,7 @@ import io.element.android.libraries.matrix.api.room.preview.RoomPreviewInfo
import io.element.android.libraries.matrix.api.roomdirectory.RoomDirectoryService
import io.element.android.libraries.matrix.api.roomlist.RoomListService
import io.element.android.libraries.matrix.api.roomlist.RoomSummary
import io.element.android.libraries.matrix.api.sync.SlidingSyncVersion
import io.element.android.libraries.matrix.api.user.MatrixSearchUserResults
import io.element.android.libraries.matrix.api.user.MatrixUser
import io.element.android.libraries.matrix.api.verification.SessionVerificationService
@ -84,9 +85,8 @@ class FakeMatrixClient(
private val getUrlLambda: (String) -> Result<String> = { lambdaError() },
private val canDeactivateAccountResult: () -> Boolean = { lambdaError() },
private val deactivateAccountResult: (String, Boolean) -> Result<Unit> = { _, _ -> lambdaError() },
var isNativeSlidingSyncSupportedLambda: suspend () -> Boolean = { true },
var isSlidingSyncProxySupportedLambda: suspend () -> Boolean = { true },
var isUsingNativeSlidingSyncLambda: () -> Boolean = { true },
private val currentSlidingSyncVersionLambda: () -> Result<SlidingSyncVersion> = { lambdaError() },
private val availableSlidingSyncVersionsLambda: () -> Result<List<SlidingSyncVersion>> = { lambdaError() }
) : MatrixClient {
var setDisplayNameCalled: Boolean = false
private set
@ -340,15 +340,11 @@ class FakeMatrixClient(
return getUrlLambda(url)
}
override suspend fun isNativeSlidingSyncSupported(): Boolean {
return isNativeSlidingSyncSupportedLambda()
override suspend fun currentSlidingSyncVersion(): Result<SlidingSyncVersion> {
return currentSlidingSyncVersionLambda()
}
override suspend fun isSlidingSyncProxySupported(): Boolean {
return isSlidingSyncProxySupportedLambda()
}
override fun isUsingNativeSlidingSync(): Boolean {
return isUsingNativeSlidingSyncLambda()
override suspend fun availableSlidingSyncVersions(): Result<List<SlidingSyncVersion>> {
return availableSlidingSyncVersionsLambda()
}
}