Account deactivation.

This commit is contained in:
Benoit Marty 2024-09-17 13:19:46 +02:00
parent b94a5c9c51
commit b87bec6228
29 changed files with 1071 additions and 9 deletions

View file

@ -79,6 +79,8 @@ class FakeMatrixClient(
private val clearCacheLambda: () -> Unit = { lambdaError() },
private val userIdServerNameLambda: () -> String = { lambdaError() },
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 },
@ -175,6 +177,12 @@ class FakeMatrixClient(
return logoutLambda(ignoreSdkError, userInitiated)
}
override fun canDeactivateAccount() = canDeactivateAccountResult()
override suspend fun deactivateAccount(password: String, eraseData: Boolean): Result<Unit> = simulateLongTask {
deactivateAccountResult(password, eraseData)
}
override fun close() = Unit
override suspend fun getUserProfile(): Result<MatrixUser> = simulateLongTask {