mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-02 21:33:26 +00:00
Adopt various rust side Timeline API additions (#3423)
* Adopt new reaction toggling API introduced in matrix-org/matrix-rust-sdk/pull/4127 * Adopt the changes introduced in matrix-org/matrix-rust-sdk/pull/4111: use the new `TimelineUniqueId` type instead of `String` for unique timeline identifiers. * Bump the RustSDK to v1.0.58. * Fix unit tests
This commit is contained in:
@@ -8,6 +8,7 @@
|
||||
@testable import ElementX
|
||||
|
||||
import Combine
|
||||
import MatrixRustSDK
|
||||
import XCTest
|
||||
|
||||
@MainActor
|
||||
@@ -258,9 +259,9 @@ class TimelineViewModelTests: XCTestCase {
|
||||
|
||||
func testSendReadReceiptWithoutEvents() async throws {
|
||||
// Given a room with only virtual items.
|
||||
let items = [SeparatorRoomTimelineItem(uniqueID: "v1"),
|
||||
SeparatorRoomTimelineItem(uniqueID: "v2"),
|
||||
SeparatorRoomTimelineItem(uniqueID: "v3")]
|
||||
let items = [SeparatorRoomTimelineItem(uniqueID: .init(id: "v1")),
|
||||
SeparatorRoomTimelineItem(uniqueID: .init(id: "v2")),
|
||||
SeparatorRoomTimelineItem(uniqueID: .init(id: "v3"))]
|
||||
let (viewModel, _, timelineProxy, _) = readReceiptsConfiguration(with: items)
|
||||
|
||||
// When sending a read receipt for the last item.
|
||||
@@ -275,7 +276,7 @@ class TimelineViewModelTests: XCTestCase {
|
||||
// Given a room where the last event is a virtual item.
|
||||
let items: [RoomTimelineItemProtocol] = [TextRoomTimelineItem(eventID: "t1"),
|
||||
TextRoomTimelineItem(eventID: "t2"),
|
||||
SeparatorRoomTimelineItem(uniqueID: "v3")]
|
||||
SeparatorRoomTimelineItem(uniqueID: .init(id: "v3"))]
|
||||
let (viewModel, _, _, _) = readReceiptsConfiguration(with: items)
|
||||
|
||||
// When sending a read receipt for the last item.
|
||||
@@ -436,14 +437,14 @@ private extension TextRoomTimelineItem {
|
||||
}
|
||||
|
||||
private extension SeparatorRoomTimelineItem {
|
||||
init(uniqueID: String) {
|
||||
init(uniqueID: TimelineUniqueId) {
|
||||
self.init(id: .virtual(uniqueID: uniqueID), text: "")
|
||||
}
|
||||
}
|
||||
|
||||
private extension TextRoomTimelineItem {
|
||||
init(eventID: String) {
|
||||
self.init(id: .event(uniqueID: UUID().uuidString, eventOrTransactionID: .eventId(eventId: eventID)),
|
||||
self.init(id: .event(uniqueID: .init(id: UUID().uuidString), eventOrTransactionID: .eventId(eventId: eventID)),
|
||||
timestamp: "",
|
||||
isOutgoing: false,
|
||||
isEditable: false,
|
||||
|
||||
Reference in New Issue
Block a user