change (report room) : use client.isReportRoomApiSupported instead of hardcoded value

This commit is contained in:
ganfra 2025-05-13 16:20:37 +02:00
parent e6b1c196d6
commit 21f75db4bb
7 changed files with 25 additions and 9 deletions

View file

@ -162,6 +162,11 @@ interface MatrixClient {
fun canDeactivateAccount(): Boolean
suspend fun deactivateAccount(password: String, eraseData: Boolean): Result<Unit>
/**
* Check if the user can report a room.
*/
suspend fun canReportRoom(): Boolean
}
/**

View file

@ -666,6 +666,12 @@ class RustMatrixClient(
}
}
override suspend fun canReportRoom(): Boolean = withContext(sessionDispatcher) {
runCatching {
innerClient.isReportRoomApiSupported()
}.getOrDefault(false)
}
private suspend fun File.getCacheSize(
includeCryptoDb: Boolean = false,
): Long = withContext(sessionDispatcher) {

View file

@ -88,6 +88,7 @@ class FakeMatrixClient(
private val availableSlidingSyncVersionsLambda: () -> Result<List<SlidingSyncVersion>> = { lambdaError() },
private val ignoreUserResult: (UserId) -> Result<Unit> = { lambdaError() },
private var unIgnoreUserResult: (UserId) -> Result<Unit> = { Result.success(Unit) },
private val canReportRoomLambda: () -> Boolean = { false },
override val ignoredUsersFlow: StateFlow<ImmutableList<UserId>> = MutableStateFlow(persistentListOf()),
) : MatrixClient {
var setDisplayNameCalled: Boolean = false
@ -329,4 +330,8 @@ class FakeMatrixClient(
override suspend fun availableSlidingSyncVersions(): Result<List<SlidingSyncVersion>> {
return availableSlidingSyncVersionsLambda()
}
override suspend fun canReportRoom(): Boolean {
return canReportRoomLambda()
}
}