mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-03 06:31:27 +00:00
Vote on a poll and end a poll (#1597)
* Fix project file * Add vote and end poll actions * Handle redaction * Fix local echo behavior * Cleanup * Fix UI tests * Add localisation * Cleanup * Fix end poll action style
This commit is contained in:
@@ -1485,6 +1485,48 @@ class RoomProxyMock: RoomProxyProtocol {
|
||||
return createPollQuestionAnswersPollKindReturnValue
|
||||
}
|
||||
}
|
||||
//MARK: - sendPollResponse
|
||||
|
||||
var sendPollResponsePollStartIDAnswersCallsCount = 0
|
||||
var sendPollResponsePollStartIDAnswersCalled: Bool {
|
||||
return sendPollResponsePollStartIDAnswersCallsCount > 0
|
||||
}
|
||||
var sendPollResponsePollStartIDAnswersReceivedArguments: (pollStartID: String, answers: [String])?
|
||||
var sendPollResponsePollStartIDAnswersReceivedInvocations: [(pollStartID: String, answers: [String])] = []
|
||||
var sendPollResponsePollStartIDAnswersReturnValue: Result<Void, RoomProxyError>!
|
||||
var sendPollResponsePollStartIDAnswersClosure: ((String, [String]) async -> Result<Void, RoomProxyError>)?
|
||||
|
||||
func sendPollResponse(pollStartID: String, answers: [String]) async -> Result<Void, RoomProxyError> {
|
||||
sendPollResponsePollStartIDAnswersCallsCount += 1
|
||||
sendPollResponsePollStartIDAnswersReceivedArguments = (pollStartID: pollStartID, answers: answers)
|
||||
sendPollResponsePollStartIDAnswersReceivedInvocations.append((pollStartID: pollStartID, answers: answers))
|
||||
if let sendPollResponsePollStartIDAnswersClosure = sendPollResponsePollStartIDAnswersClosure {
|
||||
return await sendPollResponsePollStartIDAnswersClosure(pollStartID, answers)
|
||||
} else {
|
||||
return sendPollResponsePollStartIDAnswersReturnValue
|
||||
}
|
||||
}
|
||||
//MARK: - endPoll
|
||||
|
||||
var endPollPollStartIDCallsCount = 0
|
||||
var endPollPollStartIDCalled: Bool {
|
||||
return endPollPollStartIDCallsCount > 0
|
||||
}
|
||||
var endPollPollStartIDReceivedPollStartID: String?
|
||||
var endPollPollStartIDReceivedInvocations: [String] = []
|
||||
var endPollPollStartIDReturnValue: Result<Void, RoomProxyError>!
|
||||
var endPollPollStartIDClosure: ((String) async -> Result<Void, RoomProxyError>)?
|
||||
|
||||
func endPoll(pollStartID: String) async -> Result<Void, RoomProxyError> {
|
||||
endPollPollStartIDCallsCount += 1
|
||||
endPollPollStartIDReceivedPollStartID = pollStartID
|
||||
endPollPollStartIDReceivedInvocations.append(pollStartID)
|
||||
if let endPollPollStartIDClosure = endPollPollStartIDClosure {
|
||||
return await endPollPollStartIDClosure(pollStartID)
|
||||
} else {
|
||||
return endPollPollStartIDReturnValue
|
||||
}
|
||||
}
|
||||
}
|
||||
class RoomTimelineProviderMock: RoomTimelineProviderProtocol {
|
||||
var updatePublisher: AnyPublisher<TimelineProviderUpdate, Never> {
|
||||
|
||||
Reference in New Issue
Block a user