mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-03 06:55:59 +00:00
Add support for account deactivation when not using OIDC. (#3295)
This commit is contained in:
@@ -1947,6 +1947,11 @@ class ClientProxyMock: ClientProxyProtocol {
|
||||
}
|
||||
var underlyingAvailableSlidingSyncVersions: [SlidingSyncVersion]!
|
||||
var availableSlidingSyncVersionsClosure: (() async -> [SlidingSyncVersion])?
|
||||
var canDeactivateAccount: Bool {
|
||||
get { return underlyingCanDeactivateAccount }
|
||||
set(value) { underlyingCanDeactivateAccount = value }
|
||||
}
|
||||
var underlyingCanDeactivateAccount: Bool!
|
||||
var userIDServerName: String?
|
||||
var userDisplayNamePublisher: CurrentValuePublisher<String?, Never> {
|
||||
get { return underlyingUserDisplayNamePublisher }
|
||||
@@ -3209,6 +3214,76 @@ class ClientProxyMock: ClientProxyProtocol {
|
||||
return sessionVerificationControllerProxyReturnValue
|
||||
}
|
||||
}
|
||||
//MARK: - deactivateAccount
|
||||
|
||||
var deactivateAccountPasswordEraseDataUnderlyingCallsCount = 0
|
||||
var deactivateAccountPasswordEraseDataCallsCount: Int {
|
||||
get {
|
||||
if Thread.isMainThread {
|
||||
return deactivateAccountPasswordEraseDataUnderlyingCallsCount
|
||||
} else {
|
||||
var returnValue: Int? = nil
|
||||
DispatchQueue.main.sync {
|
||||
returnValue = deactivateAccountPasswordEraseDataUnderlyingCallsCount
|
||||
}
|
||||
|
||||
return returnValue!
|
||||
}
|
||||
}
|
||||
set {
|
||||
if Thread.isMainThread {
|
||||
deactivateAccountPasswordEraseDataUnderlyingCallsCount = newValue
|
||||
} else {
|
||||
DispatchQueue.main.sync {
|
||||
deactivateAccountPasswordEraseDataUnderlyingCallsCount = newValue
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
var deactivateAccountPasswordEraseDataCalled: Bool {
|
||||
return deactivateAccountPasswordEraseDataCallsCount > 0
|
||||
}
|
||||
var deactivateAccountPasswordEraseDataReceivedArguments: (password: String?, eraseData: Bool)?
|
||||
var deactivateAccountPasswordEraseDataReceivedInvocations: [(password: String?, eraseData: Bool)] = []
|
||||
|
||||
var deactivateAccountPasswordEraseDataUnderlyingReturnValue: Result<Void, ClientProxyError>!
|
||||
var deactivateAccountPasswordEraseDataReturnValue: Result<Void, ClientProxyError>! {
|
||||
get {
|
||||
if Thread.isMainThread {
|
||||
return deactivateAccountPasswordEraseDataUnderlyingReturnValue
|
||||
} else {
|
||||
var returnValue: Result<Void, ClientProxyError>? = nil
|
||||
DispatchQueue.main.sync {
|
||||
returnValue = deactivateAccountPasswordEraseDataUnderlyingReturnValue
|
||||
}
|
||||
|
||||
return returnValue!
|
||||
}
|
||||
}
|
||||
set {
|
||||
if Thread.isMainThread {
|
||||
deactivateAccountPasswordEraseDataUnderlyingReturnValue = newValue
|
||||
} else {
|
||||
DispatchQueue.main.sync {
|
||||
deactivateAccountPasswordEraseDataUnderlyingReturnValue = newValue
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
var deactivateAccountPasswordEraseDataClosure: ((String?, Bool) async -> Result<Void, ClientProxyError>)?
|
||||
|
||||
func deactivateAccount(password: String?, eraseData: Bool) async -> Result<Void, ClientProxyError> {
|
||||
deactivateAccountPasswordEraseDataCallsCount += 1
|
||||
deactivateAccountPasswordEraseDataReceivedArguments = (password: password, eraseData: eraseData)
|
||||
DispatchQueue.main.async {
|
||||
self.deactivateAccountPasswordEraseDataReceivedInvocations.append((password: password, eraseData: eraseData))
|
||||
}
|
||||
if let deactivateAccountPasswordEraseDataClosure = deactivateAccountPasswordEraseDataClosure {
|
||||
return await deactivateAccountPasswordEraseDataClosure(password, eraseData)
|
||||
} else {
|
||||
return deactivateAccountPasswordEraseDataReturnValue
|
||||
}
|
||||
}
|
||||
//MARK: - logout
|
||||
|
||||
var logoutUnderlyingCallsCount = 0
|
||||
|
||||
@@ -485,6 +485,71 @@ open class ClientSDKMock: MatrixRustSDK.Client {
|
||||
}
|
||||
}
|
||||
|
||||
//MARK: - canDeactivateAccount
|
||||
|
||||
var canDeactivateAccountUnderlyingCallsCount = 0
|
||||
open var canDeactivateAccountCallsCount: Int {
|
||||
get {
|
||||
if Thread.isMainThread {
|
||||
return canDeactivateAccountUnderlyingCallsCount
|
||||
} else {
|
||||
var returnValue: Int? = nil
|
||||
DispatchQueue.main.sync {
|
||||
returnValue = canDeactivateAccountUnderlyingCallsCount
|
||||
}
|
||||
|
||||
return returnValue!
|
||||
}
|
||||
}
|
||||
set {
|
||||
if Thread.isMainThread {
|
||||
canDeactivateAccountUnderlyingCallsCount = newValue
|
||||
} else {
|
||||
DispatchQueue.main.sync {
|
||||
canDeactivateAccountUnderlyingCallsCount = newValue
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
open var canDeactivateAccountCalled: Bool {
|
||||
return canDeactivateAccountCallsCount > 0
|
||||
}
|
||||
|
||||
var canDeactivateAccountUnderlyingReturnValue: Bool!
|
||||
open var canDeactivateAccountReturnValue: Bool! {
|
||||
get {
|
||||
if Thread.isMainThread {
|
||||
return canDeactivateAccountUnderlyingReturnValue
|
||||
} else {
|
||||
var returnValue: Bool? = nil
|
||||
DispatchQueue.main.sync {
|
||||
returnValue = canDeactivateAccountUnderlyingReturnValue
|
||||
}
|
||||
|
||||
return returnValue!
|
||||
}
|
||||
}
|
||||
set {
|
||||
if Thread.isMainThread {
|
||||
canDeactivateAccountUnderlyingReturnValue = newValue
|
||||
} else {
|
||||
DispatchQueue.main.sync {
|
||||
canDeactivateAccountUnderlyingReturnValue = newValue
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
open var canDeactivateAccountClosure: (() -> Bool)?
|
||||
|
||||
open override func canDeactivateAccount() -> Bool {
|
||||
canDeactivateAccountCallsCount += 1
|
||||
if let canDeactivateAccountClosure = canDeactivateAccountClosure {
|
||||
return canDeactivateAccountClosure()
|
||||
} else {
|
||||
return canDeactivateAccountReturnValue
|
||||
}
|
||||
}
|
||||
|
||||
//MARK: - createRoom
|
||||
|
||||
open var createRoomRequestThrowableError: Error?
|
||||
@@ -560,6 +625,52 @@ open class ClientSDKMock: MatrixRustSDK.Client {
|
||||
}
|
||||
}
|
||||
|
||||
//MARK: - deactivateAccount
|
||||
|
||||
open var deactivateAccountAuthDataEraseDataThrowableError: Error?
|
||||
var deactivateAccountAuthDataEraseDataUnderlyingCallsCount = 0
|
||||
open var deactivateAccountAuthDataEraseDataCallsCount: Int {
|
||||
get {
|
||||
if Thread.isMainThread {
|
||||
return deactivateAccountAuthDataEraseDataUnderlyingCallsCount
|
||||
} else {
|
||||
var returnValue: Int? = nil
|
||||
DispatchQueue.main.sync {
|
||||
returnValue = deactivateAccountAuthDataEraseDataUnderlyingCallsCount
|
||||
}
|
||||
|
||||
return returnValue!
|
||||
}
|
||||
}
|
||||
set {
|
||||
if Thread.isMainThread {
|
||||
deactivateAccountAuthDataEraseDataUnderlyingCallsCount = newValue
|
||||
} else {
|
||||
DispatchQueue.main.sync {
|
||||
deactivateAccountAuthDataEraseDataUnderlyingCallsCount = newValue
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
open var deactivateAccountAuthDataEraseDataCalled: Bool {
|
||||
return deactivateAccountAuthDataEraseDataCallsCount > 0
|
||||
}
|
||||
open var deactivateAccountAuthDataEraseDataReceivedArguments: (authData: AuthData?, eraseData: Bool)?
|
||||
open var deactivateAccountAuthDataEraseDataReceivedInvocations: [(authData: AuthData?, eraseData: Bool)] = []
|
||||
open var deactivateAccountAuthDataEraseDataClosure: ((AuthData?, Bool) async throws -> Void)?
|
||||
|
||||
open override func deactivateAccount(authData: AuthData?, eraseData: Bool) async throws {
|
||||
if let error = deactivateAccountAuthDataEraseDataThrowableError {
|
||||
throw error
|
||||
}
|
||||
deactivateAccountAuthDataEraseDataCallsCount += 1
|
||||
deactivateAccountAuthDataEraseDataReceivedArguments = (authData: authData, eraseData: eraseData)
|
||||
DispatchQueue.main.async {
|
||||
self.deactivateAccountAuthDataEraseDataReceivedInvocations.append((authData: authData, eraseData: eraseData))
|
||||
}
|
||||
try await deactivateAccountAuthDataEraseDataClosure?(authData, eraseData)
|
||||
}
|
||||
|
||||
//MARK: - deletePusher
|
||||
|
||||
open var deletePusherIdentifiersThrowableError: Error?
|
||||
|
||||
Reference in New Issue
Block a user