mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-02 21:33:26 +00:00
Fix a bug where the room state wouldn't indicate when a call was in progress. (#3442)
* Fix breaking changes on decryption errors and sending failures. * Update SDK and analytics events. * Add extra UTD strings. --------- Co-authored-by: Stefan Ceriu <stefan.ceriu@gmail.com>
This commit is contained in:
@@ -2837,15 +2837,15 @@ class ClientProxyMock: ClientProxyProtocol {
|
||||
}
|
||||
//MARK: - knockRoom
|
||||
|
||||
var knockRoomMessageUnderlyingCallsCount = 0
|
||||
var knockRoomMessageCallsCount: Int {
|
||||
var knockRoomViaMessageUnderlyingCallsCount = 0
|
||||
var knockRoomViaMessageCallsCount: Int {
|
||||
get {
|
||||
if Thread.isMainThread {
|
||||
return knockRoomMessageUnderlyingCallsCount
|
||||
return knockRoomViaMessageUnderlyingCallsCount
|
||||
} else {
|
||||
var returnValue: Int? = nil
|
||||
DispatchQueue.main.sync {
|
||||
returnValue = knockRoomMessageUnderlyingCallsCount
|
||||
returnValue = knockRoomViaMessageUnderlyingCallsCount
|
||||
}
|
||||
|
||||
return returnValue!
|
||||
@@ -2853,29 +2853,29 @@ class ClientProxyMock: ClientProxyProtocol {
|
||||
}
|
||||
set {
|
||||
if Thread.isMainThread {
|
||||
knockRoomMessageUnderlyingCallsCount = newValue
|
||||
knockRoomViaMessageUnderlyingCallsCount = newValue
|
||||
} else {
|
||||
DispatchQueue.main.sync {
|
||||
knockRoomMessageUnderlyingCallsCount = newValue
|
||||
knockRoomViaMessageUnderlyingCallsCount = newValue
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
var knockRoomMessageCalled: Bool {
|
||||
return knockRoomMessageCallsCount > 0
|
||||
var knockRoomViaMessageCalled: Bool {
|
||||
return knockRoomViaMessageCallsCount > 0
|
||||
}
|
||||
var knockRoomMessageReceivedArguments: (roomID: String, message: String?)?
|
||||
var knockRoomMessageReceivedInvocations: [(roomID: String, message: String?)] = []
|
||||
var knockRoomViaMessageReceivedArguments: (roomID: String, via: [String], message: String?)?
|
||||
var knockRoomViaMessageReceivedInvocations: [(roomID: String, via: [String], message: String?)] = []
|
||||
|
||||
var knockRoomMessageUnderlyingReturnValue: Result<Void, ClientProxyError>!
|
||||
var knockRoomMessageReturnValue: Result<Void, ClientProxyError>! {
|
||||
var knockRoomViaMessageUnderlyingReturnValue: Result<Void, ClientProxyError>!
|
||||
var knockRoomViaMessageReturnValue: Result<Void, ClientProxyError>! {
|
||||
get {
|
||||
if Thread.isMainThread {
|
||||
return knockRoomMessageUnderlyingReturnValue
|
||||
return knockRoomViaMessageUnderlyingReturnValue
|
||||
} else {
|
||||
var returnValue: Result<Void, ClientProxyError>? = nil
|
||||
DispatchQueue.main.sync {
|
||||
returnValue = knockRoomMessageUnderlyingReturnValue
|
||||
returnValue = knockRoomViaMessageUnderlyingReturnValue
|
||||
}
|
||||
|
||||
return returnValue!
|
||||
@@ -2883,26 +2883,26 @@ class ClientProxyMock: ClientProxyProtocol {
|
||||
}
|
||||
set {
|
||||
if Thread.isMainThread {
|
||||
knockRoomMessageUnderlyingReturnValue = newValue
|
||||
knockRoomViaMessageUnderlyingReturnValue = newValue
|
||||
} else {
|
||||
DispatchQueue.main.sync {
|
||||
knockRoomMessageUnderlyingReturnValue = newValue
|
||||
knockRoomViaMessageUnderlyingReturnValue = newValue
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
var knockRoomMessageClosure: ((String, String?) async -> Result<Void, ClientProxyError>)?
|
||||
var knockRoomViaMessageClosure: ((String, [String], String?) async -> Result<Void, ClientProxyError>)?
|
||||
|
||||
func knockRoom(_ roomID: String, message: String?) async -> Result<Void, ClientProxyError> {
|
||||
knockRoomMessageCallsCount += 1
|
||||
knockRoomMessageReceivedArguments = (roomID: roomID, message: message)
|
||||
func knockRoom(_ roomID: String, via: [String], message: String?) async -> Result<Void, ClientProxyError> {
|
||||
knockRoomViaMessageCallsCount += 1
|
||||
knockRoomViaMessageReceivedArguments = (roomID: roomID, via: via, message: message)
|
||||
DispatchQueue.main.async {
|
||||
self.knockRoomMessageReceivedInvocations.append((roomID: roomID, message: message))
|
||||
self.knockRoomViaMessageReceivedInvocations.append((roomID: roomID, via: via, message: message))
|
||||
}
|
||||
if let knockRoomMessageClosure = knockRoomMessageClosure {
|
||||
return await knockRoomMessageClosure(roomID, message)
|
||||
if let knockRoomViaMessageClosure = knockRoomViaMessageClosure {
|
||||
return await knockRoomViaMessageClosure(roomID, via, message)
|
||||
} else {
|
||||
return knockRoomMessageReturnValue
|
||||
return knockRoomViaMessageReturnValue
|
||||
}
|
||||
}
|
||||
//MARK: - knockRoomAlias
|
||||
|
||||
@@ -2208,16 +2208,16 @@ open class ClientSDKMock: MatrixRustSDK.Client {
|
||||
|
||||
//MARK: - knock
|
||||
|
||||
open var knockRoomIdOrAliasThrowableError: Error?
|
||||
var knockRoomIdOrAliasUnderlyingCallsCount = 0
|
||||
open var knockRoomIdOrAliasCallsCount: Int {
|
||||
open var knockRoomIdOrAliasReasonServerNamesThrowableError: Error?
|
||||
var knockRoomIdOrAliasReasonServerNamesUnderlyingCallsCount = 0
|
||||
open var knockRoomIdOrAliasReasonServerNamesCallsCount: Int {
|
||||
get {
|
||||
if Thread.isMainThread {
|
||||
return knockRoomIdOrAliasUnderlyingCallsCount
|
||||
return knockRoomIdOrAliasReasonServerNamesUnderlyingCallsCount
|
||||
} else {
|
||||
var returnValue: Int? = nil
|
||||
DispatchQueue.main.sync {
|
||||
returnValue = knockRoomIdOrAliasUnderlyingCallsCount
|
||||
returnValue = knockRoomIdOrAliasReasonServerNamesUnderlyingCallsCount
|
||||
}
|
||||
|
||||
return returnValue!
|
||||
@@ -2225,29 +2225,29 @@ open class ClientSDKMock: MatrixRustSDK.Client {
|
||||
}
|
||||
set {
|
||||
if Thread.isMainThread {
|
||||
knockRoomIdOrAliasUnderlyingCallsCount = newValue
|
||||
knockRoomIdOrAliasReasonServerNamesUnderlyingCallsCount = newValue
|
||||
} else {
|
||||
DispatchQueue.main.sync {
|
||||
knockRoomIdOrAliasUnderlyingCallsCount = newValue
|
||||
knockRoomIdOrAliasReasonServerNamesUnderlyingCallsCount = newValue
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
open var knockRoomIdOrAliasCalled: Bool {
|
||||
return knockRoomIdOrAliasCallsCount > 0
|
||||
open var knockRoomIdOrAliasReasonServerNamesCalled: Bool {
|
||||
return knockRoomIdOrAliasReasonServerNamesCallsCount > 0
|
||||
}
|
||||
open var knockRoomIdOrAliasReceivedRoomIdOrAlias: String?
|
||||
open var knockRoomIdOrAliasReceivedInvocations: [String] = []
|
||||
open var knockRoomIdOrAliasReasonServerNamesReceivedArguments: (roomIdOrAlias: String, reason: String?, serverNames: [String])?
|
||||
open var knockRoomIdOrAliasReasonServerNamesReceivedInvocations: [(roomIdOrAlias: String, reason: String?, serverNames: [String])] = []
|
||||
|
||||
var knockRoomIdOrAliasUnderlyingReturnValue: Room!
|
||||
open var knockRoomIdOrAliasReturnValue: Room! {
|
||||
var knockRoomIdOrAliasReasonServerNamesUnderlyingReturnValue: Room!
|
||||
open var knockRoomIdOrAliasReasonServerNamesReturnValue: Room! {
|
||||
get {
|
||||
if Thread.isMainThread {
|
||||
return knockRoomIdOrAliasUnderlyingReturnValue
|
||||
return knockRoomIdOrAliasReasonServerNamesUnderlyingReturnValue
|
||||
} else {
|
||||
var returnValue: Room? = nil
|
||||
DispatchQueue.main.sync {
|
||||
returnValue = knockRoomIdOrAliasUnderlyingReturnValue
|
||||
returnValue = knockRoomIdOrAliasReasonServerNamesUnderlyingReturnValue
|
||||
}
|
||||
|
||||
return returnValue!
|
||||
@@ -2255,29 +2255,29 @@ open class ClientSDKMock: MatrixRustSDK.Client {
|
||||
}
|
||||
set {
|
||||
if Thread.isMainThread {
|
||||
knockRoomIdOrAliasUnderlyingReturnValue = newValue
|
||||
knockRoomIdOrAliasReasonServerNamesUnderlyingReturnValue = newValue
|
||||
} else {
|
||||
DispatchQueue.main.sync {
|
||||
knockRoomIdOrAliasUnderlyingReturnValue = newValue
|
||||
knockRoomIdOrAliasReasonServerNamesUnderlyingReturnValue = newValue
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
open var knockRoomIdOrAliasClosure: ((String) async throws -> Room)?
|
||||
open var knockRoomIdOrAliasReasonServerNamesClosure: ((String, String?, [String]) async throws -> Room)?
|
||||
|
||||
open override func knock(roomIdOrAlias: String) async throws -> Room {
|
||||
if let error = knockRoomIdOrAliasThrowableError {
|
||||
open override func knock(roomIdOrAlias: String, reason: String?, serverNames: [String]) async throws -> Room {
|
||||
if let error = knockRoomIdOrAliasReasonServerNamesThrowableError {
|
||||
throw error
|
||||
}
|
||||
knockRoomIdOrAliasCallsCount += 1
|
||||
knockRoomIdOrAliasReceivedRoomIdOrAlias = roomIdOrAlias
|
||||
knockRoomIdOrAliasReasonServerNamesCallsCount += 1
|
||||
knockRoomIdOrAliasReasonServerNamesReceivedArguments = (roomIdOrAlias: roomIdOrAlias, reason: reason, serverNames: serverNames)
|
||||
DispatchQueue.main.async {
|
||||
self.knockRoomIdOrAliasReceivedInvocations.append(roomIdOrAlias)
|
||||
self.knockRoomIdOrAliasReasonServerNamesReceivedInvocations.append((roomIdOrAlias: roomIdOrAlias, reason: reason, serverNames: serverNames))
|
||||
}
|
||||
if let knockRoomIdOrAliasClosure = knockRoomIdOrAliasClosure {
|
||||
return try await knockRoomIdOrAliasClosure(roomIdOrAlias)
|
||||
if let knockRoomIdOrAliasReasonServerNamesClosure = knockRoomIdOrAliasReasonServerNamesClosure {
|
||||
return try await knockRoomIdOrAliasReasonServerNamesClosure(roomIdOrAlias, reason, serverNames)
|
||||
} else {
|
||||
return knockRoomIdOrAliasReturnValue
|
||||
return knockRoomIdOrAliasReasonServerNamesReturnValue
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user