mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-10-31 16:24:11 +00:00
Move the old MockTimelineController to the mocks folder and TimelineControllerMock
This commit is contained in:
@@ -495,7 +495,6 @@
|
|||||||
51B3B19FA5F91B455C807BA7 /* RoomPollsHistoryScreenModels.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E964AF2DFEB31E2B799999F /* RoomPollsHistoryScreenModels.swift */; };
|
51B3B19FA5F91B455C807BA7 /* RoomPollsHistoryScreenModels.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6E964AF2DFEB31E2B799999F /* RoomPollsHistoryScreenModels.swift */; };
|
||||||
522269133E6F65F68482F4F4 /* RemotePreferenceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 181CF280BC8E3F335AFCB4B8 /* RemotePreferenceTests.swift */; };
|
522269133E6F65F68482F4F4 /* RemotePreferenceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 181CF280BC8E3F335AFCB4B8 /* RemotePreferenceTests.swift */; };
|
||||||
52473A4D7B1FBD4CD1E770C8 /* MatrixEntityRegex.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6AD1A853D605C2146B0DC028 /* MatrixEntityRegex.swift */; };
|
52473A4D7B1FBD4CD1E770C8 /* MatrixEntityRegex.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6AD1A853D605C2146B0DC028 /* MatrixEntityRegex.swift */; };
|
||||||
530C2238E40F71223327FC95 /* MockTimelineController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1BA8082E26C77A2C587B34B3 /* MockTimelineController.swift */; };
|
|
||||||
5341D48F833E3E30F16FA2A3 /* SeparatorRoomTimelineView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2910422CB628D3B2BBE47449 /* SeparatorRoomTimelineView.swift */; };
|
5341D48F833E3E30F16FA2A3 /* SeparatorRoomTimelineView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2910422CB628D3B2BBE47449 /* SeparatorRoomTimelineView.swift */; };
|
||||||
5375902175B2FEA2949D7D74 /* LoginScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CDDDDD9FE1A699D23A5E096 /* LoginScreen.swift */; };
|
5375902175B2FEA2949D7D74 /* LoginScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4CDDDDD9FE1A699D23A5E096 /* LoginScreen.swift */; };
|
||||||
53A55748D5F587C9061F98BF /* ServerConfigurationScreenViewStateTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 277C20CDD5B64510401B6D0D /* ServerConfigurationScreenViewStateTests.swift */; };
|
53A55748D5F587C9061F98BF /* ServerConfigurationScreenViewStateTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 277C20CDD5B64510401B6D0D /* ServerConfigurationScreenViewStateTests.swift */; };
|
||||||
@@ -1325,6 +1324,7 @@
|
|||||||
DC77E9DB2CFBE84A2BDF20C5 /* RoomRolesAndPermissionsFlowCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0833F51229E166BCA141D004 /* RoomRolesAndPermissionsFlowCoordinator.swift */; };
|
DC77E9DB2CFBE84A2BDF20C5 /* RoomRolesAndPermissionsFlowCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0833F51229E166BCA141D004 /* RoomRolesAndPermissionsFlowCoordinator.swift */; };
|
||||||
DCFE7CB3B9A104330BBB96AD /* AnalyticsPromptScreenCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B67DF223EEB8DCAF178A1D4 /* AnalyticsPromptScreenCoordinator.swift */; };
|
DCFE7CB3B9A104330BBB96AD /* AnalyticsPromptScreenCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9B67DF223EEB8DCAF178A1D4 /* AnalyticsPromptScreenCoordinator.swift */; };
|
||||||
DD21CE51DF9BD04FC8155972 /* LeaveSpaceHandleSDKMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 580BDCD23DD02481AB5FFB47 /* LeaveSpaceHandleSDKMock.swift */; };
|
DD21CE51DF9BD04FC8155972 /* LeaveSpaceHandleSDKMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = 580BDCD23DD02481AB5FFB47 /* LeaveSpaceHandleSDKMock.swift */; };
|
||||||
|
DD4D8B5D668197D345A3ED42 /* TimelineControllerMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = F933BB25FC426D5C67E1D812 /* TimelineControllerMock.swift */; };
|
||||||
DDE7B4771452300C103B1EB8 /* RoomDirectoryCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F6210134203BE1F2DD5C679 /* RoomDirectoryCell.swift */; };
|
DDE7B4771452300C103B1EB8 /* RoomDirectoryCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F6210134203BE1F2DD5C679 /* RoomDirectoryCell.swift */; };
|
||||||
DDFBDEE1DC32BDD5488F898C /* ClientProxyMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2F96CCBEAAA7F2185BFA354 /* ClientProxyMock.swift */; };
|
DDFBDEE1DC32BDD5488F898C /* ClientProxyMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2F96CCBEAAA7F2185BFA354 /* ClientProxyMock.swift */; };
|
||||||
DE3BF0ED68E56BF625591D49 /* LinkNewDeviceScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 72C4A2D279386A811BDC6DAE /* LinkNewDeviceScreen.swift */; };
|
DE3BF0ED68E56BF625591D49 /* LinkNewDeviceScreen.swift in Sources */ = {isa = PBXBuildFile; fileRef = 72C4A2D279386A811BDC6DAE /* LinkNewDeviceScreen.swift */; };
|
||||||
@@ -1802,7 +1802,6 @@
|
|||||||
1B8E176484A89BAC389D4076 /* RoomMembersListScreen.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomMembersListScreen.swift; sourceTree = "<group>"; };
|
1B8E176484A89BAC389D4076 /* RoomMembersListScreen.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomMembersListScreen.swift; sourceTree = "<group>"; };
|
||||||
1B9D191A81FFB0C72CE73E77 /* RoomSelectionScreenModels.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomSelectionScreenModels.swift; sourceTree = "<group>"; };
|
1B9D191A81FFB0C72CE73E77 /* RoomSelectionScreenModels.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomSelectionScreenModels.swift; sourceTree = "<group>"; };
|
||||||
1BA5A62DA4B543827FF82354 /* LAContextMock.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LAContextMock.swift; sourceTree = "<group>"; };
|
1BA5A62DA4B543827FF82354 /* LAContextMock.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LAContextMock.swift; sourceTree = "<group>"; };
|
||||||
1BA8082E26C77A2C587B34B3 /* MockTimelineController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockTimelineController.swift; sourceTree = "<group>"; };
|
|
||||||
1BC752C2A4606C4C2D1ADB41 /* 94 */ = {isa = PBXFileReference; path = 94; sourceTree = "<group>"; };
|
1BC752C2A4606C4C2D1ADB41 /* 94 */ = {isa = PBXFileReference; path = 94; sourceTree = "<group>"; };
|
||||||
1BEE119165C106FA83F253EF /* AnalyticsServiceMock.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnalyticsServiceMock.swift; sourceTree = "<group>"; };
|
1BEE119165C106FA83F253EF /* AnalyticsServiceMock.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnalyticsServiceMock.swift; sourceTree = "<group>"; };
|
||||||
1C21A715237F2B6D6E80998C /* SecureBackupControllerProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SecureBackupControllerProtocol.swift; sourceTree = "<group>"; };
|
1C21A715237F2B6D6E80998C /* SecureBackupControllerProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SecureBackupControllerProtocol.swift; sourceTree = "<group>"; };
|
||||||
@@ -3057,6 +3056,7 @@
|
|||||||
F899D02CF26EA7675EEBE74C /* UserSessionScreenTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserSessionScreenTests.swift; sourceTree = "<group>"; };
|
F899D02CF26EA7675EEBE74C /* UserSessionScreenTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserSessionScreenTests.swift; sourceTree = "<group>"; };
|
||||||
F8CCF9A924521DECA44778C4 /* AppLockSetupBiometricsScreen.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppLockSetupBiometricsScreen.swift; sourceTree = "<group>"; };
|
F8CCF9A924521DECA44778C4 /* AppLockSetupBiometricsScreen.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppLockSetupBiometricsScreen.swift; sourceTree = "<group>"; };
|
||||||
F91AC45CDDF85E946391CA5C /* RoomThreadListScreenViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomThreadListScreenViewModel.swift; sourceTree = "<group>"; };
|
F91AC45CDDF85E946391CA5C /* RoomThreadListScreenViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomThreadListScreenViewModel.swift; sourceTree = "<group>"; };
|
||||||
|
F933BB25FC426D5C67E1D812 /* TimelineControllerMock.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TimelineControllerMock.swift; sourceTree = "<group>"; };
|
||||||
F968FDB68F9D4CB9010FED70 /* TimelineStateTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TimelineStateTests.swift; sourceTree = "<group>"; };
|
F968FDB68F9D4CB9010FED70 /* TimelineStateTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TimelineStateTests.swift; sourceTree = "<group>"; };
|
||||||
F9E543072DE58E751F028998 /* TimelineProxy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TimelineProxy.swift; sourceTree = "<group>"; };
|
F9E543072DE58E751F028998 /* TimelineProxy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TimelineProxy.swift; sourceTree = "<group>"; };
|
||||||
FA2397174D0DC3918A7A8A7B /* AnalyticsConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnalyticsConfiguration.swift; sourceTree = "<group>"; };
|
FA2397174D0DC3918A7A8A7B /* AnalyticsConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AnalyticsConfiguration.swift; sourceTree = "<group>"; };
|
||||||
@@ -3758,7 +3758,6 @@
|
|||||||
2F2FED77226A43559F009463 /* TimelineController */ = {
|
2F2FED77226A43559F009463 /* TimelineController */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
1BA8082E26C77A2C587B34B3 /* MockTimelineController.swift */,
|
|
||||||
A4216C12C0369A8AB059EDE9 /* TimelineController.swift */,
|
A4216C12C0369A8AB059EDE9 /* TimelineController.swift */,
|
||||||
8C0D5AE752AF87DA0A920812 /* TimelineControllerFactory.swift */,
|
8C0D5AE752AF87DA0A920812 /* TimelineControllerFactory.swift */,
|
||||||
7AC1E3FE9B59EA094867863E /* TimelineControllerFactoryProtocol.swift */,
|
7AC1E3FE9B59EA094867863E /* TimelineControllerFactoryProtocol.swift */,
|
||||||
@@ -3845,6 +3844,7 @@
|
|||||||
7DB2A5FF1E68BA580A20D405 /* SpaceRoomListProxyMock.swift */,
|
7DB2A5FF1E68BA580A20D405 /* SpaceRoomListProxyMock.swift */,
|
||||||
EF36FC3DE25B20B7FA91F1FD /* SpaceServiceProxyMock.swift */,
|
EF36FC3DE25B20B7FA91F1FD /* SpaceServiceProxyMock.swift */,
|
||||||
B0F5CC38803B8382D2C63222 /* TimelineControllerFactoryMock.swift */,
|
B0F5CC38803B8382D2C63222 /* TimelineControllerFactoryMock.swift */,
|
||||||
|
F933BB25FC426D5C67E1D812 /* TimelineControllerMock.swift */,
|
||||||
62EACAFB3F3E017060F9F1C5 /* TimelineProviderMock.swift */,
|
62EACAFB3F3E017060F9F1C5 /* TimelineProviderMock.swift */,
|
||||||
17A8AA0DFA06012A9DAB951E /* TimelineProxyMock.swift */,
|
17A8AA0DFA06012A9DAB951E /* TimelineProxyMock.swift */,
|
||||||
8536B40F578BA7FDB23D97B1 /* UserIdentityProxyMock.swift */,
|
8536B40F578BA7FDB23D97B1 /* UserIdentityProxyMock.swift */,
|
||||||
@@ -8629,7 +8629,6 @@
|
|||||||
C13128AAA787A4C2CBE4EE82 /* MessageForwardingScreenViewModelProtocol.swift in Sources */,
|
C13128AAA787A4C2CBE4EE82 /* MessageForwardingScreenViewModelProtocol.swift in Sources */,
|
||||||
C97325EFDCCEE457432A9E82 /* MessageText.swift in Sources */,
|
C97325EFDCCEE457432A9E82 /* MessageText.swift in Sources */,
|
||||||
AF2ABA2794E376B64104C964 /* MockSoftLogoutScreenState.swift in Sources */,
|
AF2ABA2794E376B64104C964 /* MockSoftLogoutScreenState.swift in Sources */,
|
||||||
530C2238E40F71223327FC95 /* MockTimelineController.swift in Sources */,
|
|
||||||
E938F7A45D6A3DBBE6789A03 /* NSEUserSession.swift in Sources */,
|
E938F7A45D6A3DBBE6789A03 /* NSEUserSession.swift in Sources */,
|
||||||
551E03A935A6B73158A1AB4A /* NSEUserSessionMock.swift in Sources */,
|
551E03A935A6B73158A1AB4A /* NSEUserSessionMock.swift in Sources */,
|
||||||
F9842667B68DC6FA1F9ECCBB /* NSItemProvider.swift in Sources */,
|
F9842667B68DC6FA1F9ECCBB /* NSItemProvider.swift in Sources */,
|
||||||
@@ -9071,6 +9070,7 @@
|
|||||||
7DCFC31B49BDD2BC32184E58 /* TimelineControllerFactory.swift in Sources */,
|
7DCFC31B49BDD2BC32184E58 /* TimelineControllerFactory.swift in Sources */,
|
||||||
63FD7DBE7BBA149B4B8B99D7 /* TimelineControllerFactoryMock.swift in Sources */,
|
63FD7DBE7BBA149B4B8B99D7 /* TimelineControllerFactoryMock.swift in Sources */,
|
||||||
B47213F07A67CE3A8D49CEC9 /* TimelineControllerFactoryProtocol.swift in Sources */,
|
B47213F07A67CE3A8D49CEC9 /* TimelineControllerFactoryProtocol.swift in Sources */,
|
||||||
|
DD4D8B5D668197D345A3ED42 /* TimelineControllerMock.swift in Sources */,
|
||||||
FA53FA227FFBE469AFF32F71 /* TimelineControllerProtocol.swift in Sources */,
|
FA53FA227FFBE469AFF32F71 /* TimelineControllerProtocol.swift in Sources */,
|
||||||
798BF3072137833FBD3F4C96 /* TimelineDeliveryStatusView.swift in Sources */,
|
798BF3072137833FBD3F4C96 /* TimelineDeliveryStatusView.swift in Sources */,
|
||||||
22BA593A5E19D8D3DE2FAA6F /* TimelineEventContent.swift in Sources */,
|
22BA593A5E19D8D3DE2FAA6F /* TimelineEventContent.swift in Sources */,
|
||||||
|
|||||||
+27
-27
@@ -81,29 +81,29 @@ extension TimelineControllerMock {
|
|||||||
|
|
||||||
editMessageHtmlIntentionalMentionsClosure = { [weak self] _, message, _, _ in
|
editMessageHtmlIntentionalMentionsClosure = { [weak self] _, message, _, _ in
|
||||||
guard let self else { return }
|
guard let self else { return }
|
||||||
self.callbacks.send(.messageSentOrEdited)
|
callbacks.send(.messageSentOrEdited)
|
||||||
self.timelineItems[self.timelineItems.endIndex - 1] = TextRoomTimelineItem(id: lastInsertedMessageID,
|
timelineItems[timelineItems.endIndex - 1] = TextRoomTimelineItem(id: lastInsertedMessageID,
|
||||||
timestamp: .distantFuture,
|
timestamp: .distantFuture,
|
||||||
isOutgoing: true,
|
isOutgoing: true,
|
||||||
isEditable: true,
|
isEditable: true,
|
||||||
canBeRepliedTo: true,
|
canBeRepliedTo: true,
|
||||||
sender: .test,
|
sender: .test,
|
||||||
content: .init(body: message),
|
content: .init(body: message),
|
||||||
properties: .init(isEdited: true))
|
properties: .init(isEdited: true))
|
||||||
self.callbacks.send(.updatedTimelineItems(timelineItems: self.timelineItems, isSwitchingTimelines: false))
|
callbacks.send(.updatedTimelineItems(timelineItems: timelineItems, isSwitchingTimelines: false))
|
||||||
}
|
}
|
||||||
|
|
||||||
sendMessageHtmlInReplyToEventIDIntentionalMentionsClosure = { [weak self] message, _, _, _ in
|
sendMessageHtmlInReplyToEventIDIntentionalMentionsClosure = { [weak self] message, _, _, _ in
|
||||||
guard let self else { return }
|
guard let self else { return }
|
||||||
self.callbacks.send(.messageSentOrEdited)
|
callbacks.send(.messageSentOrEdited)
|
||||||
self.timelineItems.append(TextRoomTimelineItem(id: lastInsertedMessageID,
|
timelineItems.append(TextRoomTimelineItem(id: lastInsertedMessageID,
|
||||||
timestamp: .distantFuture,
|
timestamp: .distantFuture,
|
||||||
isOutgoing: true,
|
isOutgoing: true,
|
||||||
isEditable: true,
|
isEditable: true,
|
||||||
canBeRepliedTo: true,
|
canBeRepliedTo: true,
|
||||||
sender: .test,
|
sender: .test,
|
||||||
content: .init(body: message)))
|
content: .init(body: message)))
|
||||||
self.callbacks.send(.updatedTimelineItems(timelineItems: self.timelineItems, isSwitchingTimelines: false))
|
callbacks.send(.updatedTimelineItems(timelineItems: timelineItems, isSwitchingTimelines: false))
|
||||||
}
|
}
|
||||||
|
|
||||||
sendAudioUrlAudioInfoCaptionRequestHandleClosure = { [weak self, timelineProxy] url, audioInfo, caption, requestHandle in
|
sendAudioUrlAudioInfoCaptionRequestHandleClosure = { [weak self, timelineProxy] url, audioInfo, caption, requestHandle in
|
||||||
@@ -225,23 +225,23 @@ extension TimelineControllerMock {
|
|||||||
guard let self else { return .success(()) }
|
guard let self else { return .success(()) }
|
||||||
|
|
||||||
let paginating = TimelinePaginationState(backward: .paginating, forward: .endReached)
|
let paginating = TimelinePaginationState(backward: .paginating, forward: .endReached)
|
||||||
self.paginationState = paginating
|
paginationState = paginating
|
||||||
self.callbacks.send(.paginationState(paginating))
|
callbacks.send(.paginationState(paginating))
|
||||||
|
|
||||||
guard !queue.isEmpty else {
|
guard !queue.isEmpty else {
|
||||||
let end = TimelinePaginationState(backward: .endReached, forward: .endReached)
|
let end = TimelinePaginationState(backward: .endReached, forward: .endReached)
|
||||||
self.paginationState = end
|
paginationState = end
|
||||||
self.callbacks.send(.paginationState(end))
|
callbacks.send(.paginationState(end))
|
||||||
return .success(())
|
return .success(())
|
||||||
}
|
}
|
||||||
|
|
||||||
let newItems = queue.removeFirst()
|
let newItems = queue.removeFirst()
|
||||||
self.timelineItems.insert(contentsOf: newItems, at: 0)
|
timelineItems.insert(contentsOf: newItems, at: 0)
|
||||||
self.callbacks.send(.updatedTimelineItems(timelineItems: self.timelineItems, isSwitchingTimelines: false))
|
callbacks.send(.updatedTimelineItems(timelineItems: timelineItems, isSwitchingTimelines: false))
|
||||||
|
|
||||||
let final = TimelinePaginationState(backward: queue.isEmpty ? .endReached : .idle, forward: .endReached)
|
let final = TimelinePaginationState(backward: queue.isEmpty ? .endReached : .idle, forward: .endReached)
|
||||||
self.paginationState = final
|
paginationState = final
|
||||||
self.callbacks.send(.paginationState(final))
|
callbacks.send(.paginationState(final))
|
||||||
|
|
||||||
return .success(())
|
return .success(())
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user