mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-06 04:18:31 +00:00
Replace the old MockUserSession with the generated UserSessionMock
This commit is contained in:
committed by
Stefan Ceriu
parent
a126715ba0
commit
3a904ebc9d
@@ -416,6 +416,7 @@
|
|||||||
652ACCF104A8CEF30788963C /* NotificationManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1423AB065857FA546444DB15 /* NotificationManager.swift */; };
|
652ACCF104A8CEF30788963C /* NotificationManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1423AB065857FA546444DB15 /* NotificationManager.swift */; };
|
||||||
6530865EB9A8C0F0AF0216DA /* ServerSelectionScreenModels.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9501D11B4258DFA33BA3B40F /* ServerSelectionScreenModels.swift */; };
|
6530865EB9A8C0F0AF0216DA /* ServerSelectionScreenModels.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9501D11B4258DFA33BA3B40F /* ServerSelectionScreenModels.swift */; };
|
||||||
654E802C127B84554042903E /* AnalyticsSettingsScreenViewModelProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECD5FCBA169B6A82F501CA1B /* AnalyticsSettingsScreenViewModelProtocol.swift */; };
|
654E802C127B84554042903E /* AnalyticsSettingsScreenViewModelProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = ECD5FCBA169B6A82F501CA1B /* AnalyticsSettingsScreenViewModelProtocol.swift */; };
|
||||||
|
6586E1F1D5F0651D0638FFAF /* UserSessionMock.swift in Sources */ = {isa = PBXBuildFile; fileRef = F4469F6AE311BDC439B3A5EC /* UserSessionMock.swift */; };
|
||||||
659E5B766F76FDEC1BF393A4 /* RoomDetailsEditScreenViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = E413F4CBD7BF0588F394A9DD /* RoomDetailsEditScreenViewModel.swift */; };
|
659E5B766F76FDEC1BF393A4 /* RoomDetailsEditScreenViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = E413F4CBD7BF0588F394A9DD /* RoomDetailsEditScreenViewModel.swift */; };
|
||||||
663E198678778F7426A9B27D /* Collection.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9FAFE1C2149E6AC8156ED2B /* Collection.swift */; };
|
663E198678778F7426A9B27D /* Collection.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9FAFE1C2149E6AC8156ED2B /* Collection.swift */; };
|
||||||
67160204A8D362BB7D4AD259 /* Search.swift in Sources */ = {isa = PBXBuildFile; fileRef = 693E16574C6F7F9FA1015A8C /* Search.swift */; };
|
67160204A8D362BB7D4AD259 /* Search.swift in Sources */ = {isa = PBXBuildFile; fileRef = 693E16574C6F7F9FA1015A8C /* Search.swift */; };
|
||||||
@@ -902,7 +903,6 @@
|
|||||||
D6661A94DBD97658B2ADBD6A /* MapTilerStaticMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A4D29F2683F5772AC72406F /* MapTilerStaticMap.swift */; };
|
D6661A94DBD97658B2ADBD6A /* MapTilerStaticMap.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A4D29F2683F5772AC72406F /* MapTilerStaticMap.swift */; };
|
||||||
D6DE764B17FB4A9A12C33BF4 /* MessageComposer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F1DF3FFFE5ED2B8133F43A7 /* MessageComposer.swift */; };
|
D6DE764B17FB4A9A12C33BF4 /* MessageComposer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9F1DF3FFFE5ED2B8133F43A7 /* MessageComposer.swift */; };
|
||||||
D7CDBAE82782BD0529DECB5F /* AttributedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52BD6ED18E2EB61E28C340AD /* AttributedString.swift */; };
|
D7CDBAE82782BD0529DECB5F /* AttributedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 52BD6ED18E2EB61E28C340AD /* AttributedString.swift */; };
|
||||||
D8359F67AF3A83516E9083C1 /* MockUserSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = A4756C5A8C8649AD6C10C615 /* MockUserSession.swift */; };
|
|
||||||
D876EC0FED3B6D46C806912A /* AvatarSize.swift in Sources */ = {isa = PBXBuildFile; fileRef = E24B88AD3D1599E8CB1376E0 /* AvatarSize.swift */; };
|
D876EC0FED3B6D46C806912A /* AvatarSize.swift in Sources */ = {isa = PBXBuildFile; fileRef = E24B88AD3D1599E8CB1376E0 /* AvatarSize.swift */; };
|
||||||
D9473FC9B077A6EDB7A12001 /* LocationRoomTimelineView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 772334731A8BF8E6D90B194D /* LocationRoomTimelineView.swift */; };
|
D9473FC9B077A6EDB7A12001 /* LocationRoomTimelineView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 772334731A8BF8E6D90B194D /* LocationRoomTimelineView.swift */; };
|
||||||
D98B5EE8C4F5A2CE84687AE8 /* UTType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 897DF5E9A70CE05A632FC8AF /* UTType.swift */; };
|
D98B5EE8C4F5A2CE84687AE8 /* UTType.swift in Sources */ = {isa = PBXBuildFile; fileRef = 897DF5E9A70CE05A632FC8AF /* UTType.swift */; };
|
||||||
@@ -1765,7 +1765,6 @@
|
|||||||
A40F1985065500F0E7F61A27 /* PollFormScreenViewModelProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PollFormScreenViewModelProtocol.swift; sourceTree = "<group>"; };
|
A40F1985065500F0E7F61A27 /* PollFormScreenViewModelProtocol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PollFormScreenViewModelProtocol.swift; sourceTree = "<group>"; };
|
||||||
A433BE28B40D418237BE37B5 /* ReportContentScreen.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportContentScreen.swift; sourceTree = "<group>"; };
|
A433BE28B40D418237BE37B5 /* ReportContentScreen.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReportContentScreen.swift; sourceTree = "<group>"; };
|
||||||
A436057DBEA1A23CA8CB1FD7 /* UIFont+AttributedStringBuilder.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "UIFont+AttributedStringBuilder.h"; sourceTree = "<group>"; };
|
A436057DBEA1A23CA8CB1FD7 /* UIFont+AttributedStringBuilder.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "UIFont+AttributedStringBuilder.h"; sourceTree = "<group>"; };
|
||||||
A4756C5A8C8649AD6C10C615 /* MockUserSession.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockUserSession.swift; sourceTree = "<group>"; };
|
|
||||||
A58E93D91DE3288010390DEE /* EmojiDetectionTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmojiDetectionTests.swift; sourceTree = "<group>"; };
|
A58E93D91DE3288010390DEE /* EmojiDetectionTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmojiDetectionTests.swift; sourceTree = "<group>"; };
|
||||||
A65F140F9FE5E8D4DAEFF354 /* RoomProxy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomProxy.swift; sourceTree = "<group>"; };
|
A65F140F9FE5E8D4DAEFF354 /* RoomProxy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RoomProxy.swift; sourceTree = "<group>"; };
|
||||||
A6B891A6DA826E2461DBB40F /* PHGPostHogConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PHGPostHogConfiguration.swift; sourceTree = "<group>"; };
|
A6B891A6DA826E2461DBB40F /* PHGPostHogConfiguration.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PHGPostHogConfiguration.swift; sourceTree = "<group>"; };
|
||||||
@@ -2101,6 +2100,7 @@
|
|||||||
F36C0A6D59717193F49EA986 /* UserSessionTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserSessionTests.swift; sourceTree = "<group>"; };
|
F36C0A6D59717193F49EA986 /* UserSessionTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserSessionTests.swift; sourceTree = "<group>"; };
|
||||||
F37FA1A5D55633E1942B153B /* CallScreenCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CallScreenCoordinator.swift; sourceTree = "<group>"; };
|
F37FA1A5D55633E1942B153B /* CallScreenCoordinator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CallScreenCoordinator.swift; sourceTree = "<group>"; };
|
||||||
F3EAE3E9D5EF4A6D5D9C6CFD /* EmojiPickerScreenViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmojiPickerScreenViewModel.swift; sourceTree = "<group>"; };
|
F3EAE3E9D5EF4A6D5D9C6CFD /* EmojiPickerScreenViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmojiPickerScreenViewModel.swift; sourceTree = "<group>"; };
|
||||||
|
F4469F6AE311BDC439B3A5EC /* UserSessionMock.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserSessionMock.swift; sourceTree = "<group>"; };
|
||||||
F4548A9BDE5CB3AB864BCA9F /* EffectsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EffectsView.swift; sourceTree = "<group>"; };
|
F4548A9BDE5CB3AB864BCA9F /* EffectsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EffectsView.swift; sourceTree = "<group>"; };
|
||||||
F506C6ADB1E1DA6638078E11 /* UITests.xctest */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.cfbundle; path = UITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
F506C6ADB1E1DA6638078E11 /* UITests.xctest */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.cfbundle; path = UITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||||
F5311C989EC15B4C2D699025 /* StaticLocationScreenViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StaticLocationScreenViewModel.swift; sourceTree = "<group>"; };
|
F5311C989EC15B4C2D699025 /* StaticLocationScreenViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StaticLocationScreenViewModel.swift; sourceTree = "<group>"; };
|
||||||
@@ -2669,6 +2669,7 @@
|
|||||||
248649EBA5BC33DB93698734 /* SessionVerificationControllerProxyMock.swift */,
|
248649EBA5BC33DB93698734 /* SessionVerificationControllerProxyMock.swift */,
|
||||||
7893780A1FD6E3F38B3E9049 /* UserIndicatorControllerMock.swift */,
|
7893780A1FD6E3F38B3E9049 /* UserIndicatorControllerMock.swift */,
|
||||||
AAD01F7FC2BBAC7351948595 /* UserProfile+Mock.swift */,
|
AAD01F7FC2BBAC7351948595 /* UserProfile+Mock.swift */,
|
||||||
|
F4469F6AE311BDC439B3A5EC /* UserSessionMock.swift */,
|
||||||
B23135B06B044CB811139D2F /* Generated */,
|
B23135B06B044CB811139D2F /* Generated */,
|
||||||
E5E545F92D01588360A9BAC5 /* SDK */,
|
E5E545F92D01588360A9BAC5 /* SDK */,
|
||||||
);
|
);
|
||||||
@@ -3847,7 +3848,6 @@
|
|||||||
82D5AD3EAE3A5C1068A44A88 /* Session */ = {
|
82D5AD3EAE3A5C1068A44A88 /* Session */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
A4756C5A8C8649AD6C10C615 /* MockUserSession.swift */,
|
|
||||||
6E5E9C044BEB7C70B1378E91 /* UserSession.swift */,
|
6E5E9C044BEB7C70B1378E91 /* UserSession.swift */,
|
||||||
5F4134FEFE4EB55759017408 /* UserSessionProtocol.swift */,
|
5F4134FEFE4EB55759017408 /* UserSessionProtocol.swift */,
|
||||||
);
|
);
|
||||||
@@ -6147,7 +6147,6 @@
|
|||||||
09C83DDDB07C28364F325209 /* MockRoomTimelineController.swift in Sources */,
|
09C83DDDB07C28364F325209 /* MockRoomTimelineController.swift in Sources */,
|
||||||
B721125D17A0BA86794F29FB /* MockServerSelectionScreenState.swift in Sources */,
|
B721125D17A0BA86794F29FB /* MockServerSelectionScreenState.swift in Sources */,
|
||||||
AF2ABA2794E376B64104C964 /* MockSoftLogoutScreenState.swift in Sources */,
|
AF2ABA2794E376B64104C964 /* MockSoftLogoutScreenState.swift in Sources */,
|
||||||
D8359F67AF3A83516E9083C1 /* MockUserSession.swift in Sources */,
|
|
||||||
F9842667B68DC6FA1F9ECCBB /* NSItemProvider.swift in Sources */,
|
F9842667B68DC6FA1F9ECCBB /* NSItemProvider.swift in Sources */,
|
||||||
EA01A06EEDFEF4AE7652E5F3 /* NSRegularExpresion.swift in Sources */,
|
EA01A06EEDFEF4AE7652E5F3 /* NSRegularExpresion.swift in Sources */,
|
||||||
FA2BBAE9FC5E2E9F960C0980 /* NavigationCoordinators.swift in Sources */,
|
FA2BBAE9FC5E2E9F960C0980 /* NavigationCoordinators.swift in Sources */,
|
||||||
@@ -6542,6 +6541,7 @@
|
|||||||
8AB8ED1051216546CB35FA0E /* UserSession.swift in Sources */,
|
8AB8ED1051216546CB35FA0E /* UserSession.swift in Sources */,
|
||||||
4A618590DEB72C4F186BFED4 /* UserSessionFlowCoordinator.swift in Sources */,
|
4A618590DEB72C4F186BFED4 /* UserSessionFlowCoordinator.swift in Sources */,
|
||||||
3113065AABBC14CEAE6843FA /* UserSessionFlowCoordinatorStateMachine.swift in Sources */,
|
3113065AABBC14CEAE6843FA /* UserSessionFlowCoordinatorStateMachine.swift in Sources */,
|
||||||
|
6586E1F1D5F0651D0638FFAF /* UserSessionMock.swift in Sources */,
|
||||||
978BB24F2A5D31EE59EEC249 /* UserSessionProtocol.swift in Sources */,
|
978BB24F2A5D31EE59EEC249 /* UserSessionProtocol.swift in Sources */,
|
||||||
7E91BAC17963ED41208F489B /* UserSessionStore.swift in Sources */,
|
7E91BAC17963ED41208F489B /* UserSessionStore.swift in Sources */,
|
||||||
AC69B6DF15FC451AB2945036 /* UserSessionStoreProtocol.swift in Sources */,
|
AC69B6DF15FC451AB2945036 /* UserSessionStoreProtocol.swift in Sources */,
|
||||||
|
|||||||
@@ -96,9 +96,9 @@ extension ClientProxyMock {
|
|||||||
|
|
||||||
switch room {
|
switch room {
|
||||||
case .empty:
|
case .empty:
|
||||||
return await RoomProxyMock(with: .init(name: "Empty room"))
|
return await RoomProxyMock(.init(name: "Empty room"))
|
||||||
case .filled(let details), .invalidated(let details):
|
case .filled(let details), .invalidated(let details):
|
||||||
return await RoomProxyMock(with: .init(id: roomID, name: details.name))
|
return await RoomProxyMock(.init(id: roomID, name: details.name))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13079,6 +13079,34 @@ class UserNotificationCenterMock: UserNotificationCenterProtocol {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
class UserSessionMock: UserSessionProtocol {
|
||||||
|
var clientProxy: ClientProxyProtocol {
|
||||||
|
get { return underlyingClientProxy }
|
||||||
|
set(value) { underlyingClientProxy = value }
|
||||||
|
}
|
||||||
|
var underlyingClientProxy: ClientProxyProtocol!
|
||||||
|
var mediaProvider: MediaProviderProtocol {
|
||||||
|
get { return underlyingMediaProvider }
|
||||||
|
set(value) { underlyingMediaProvider = value }
|
||||||
|
}
|
||||||
|
var underlyingMediaProvider: MediaProviderProtocol!
|
||||||
|
var voiceMessageMediaManager: VoiceMessageMediaManagerProtocol {
|
||||||
|
get { return underlyingVoiceMessageMediaManager }
|
||||||
|
set(value) { underlyingVoiceMessageMediaManager = value }
|
||||||
|
}
|
||||||
|
var underlyingVoiceMessageMediaManager: VoiceMessageMediaManagerProtocol!
|
||||||
|
var sessionSecurityStatePublisher: CurrentValuePublisher<SessionSecurityState, Never> {
|
||||||
|
get { return underlyingSessionSecurityStatePublisher }
|
||||||
|
set(value) { underlyingSessionSecurityStatePublisher = value }
|
||||||
|
}
|
||||||
|
var underlyingSessionSecurityStatePublisher: CurrentValuePublisher<SessionSecurityState, Never>!
|
||||||
|
var callbacks: PassthroughSubject<UserSessionCallback, Never> {
|
||||||
|
get { return underlyingCallbacks }
|
||||||
|
set(value) { underlyingCallbacks = value }
|
||||||
|
}
|
||||||
|
var underlyingCallbacks: PassthroughSubject<UserSessionCallback, Never>!
|
||||||
|
|
||||||
|
}
|
||||||
class VoiceMessageCacheMock: VoiceMessageCacheProtocol {
|
class VoiceMessageCacheMock: VoiceMessageCacheProtocol {
|
||||||
var urlForRecording: URL {
|
var urlForRecording: URL {
|
||||||
get { return underlyingUrlForRecording }
|
get { return underlyingUrlForRecording }
|
||||||
|
|||||||
@@ -58,7 +58,7 @@ enum RoomProxyMockError: Error {
|
|||||||
|
|
||||||
extension RoomProxyMock {
|
extension RoomProxyMock {
|
||||||
@MainActor
|
@MainActor
|
||||||
convenience init(with configuration: RoomProxyMockConfiguration) {
|
convenience init(_ configuration: RoomProxyMockConfiguration) {
|
||||||
self.init()
|
self.init()
|
||||||
|
|
||||||
id = configuration.id
|
id = configuration.id
|
||||||
|
|||||||
+19
-9
@@ -1,5 +1,5 @@
|
|||||||
//
|
//
|
||||||
// Copyright 2022 New Vector Ltd
|
// Copyright 2024 New Vector Ltd
|
||||||
//
|
//
|
||||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
// you may not use this file except in compliance with the License.
|
// you may not use this file except in compliance with the License.
|
||||||
@@ -15,15 +15,25 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
import Combine
|
import Combine
|
||||||
|
import Foundation
|
||||||
|
|
||||||
struct MockUserSession: UserSessionProtocol {
|
struct UserSessionMockConfiguration {
|
||||||
let callbacks = PassthroughSubject<UserSessionCallback, Never>()
|
|
||||||
var sessionVerificationController: SessionVerificationControllerProxyProtocol?
|
var sessionVerificationController: SessionVerificationControllerProxyProtocol?
|
||||||
var userID: String { clientProxy.userID }
|
|
||||||
var deviceID: String? { clientProxy.deviceID }
|
|
||||||
var homeserver: String { clientProxy.homeserver }
|
|
||||||
let clientProxy: ClientProxyProtocol
|
let clientProxy: ClientProxyProtocol
|
||||||
let mediaProvider: MediaProviderProtocol
|
}
|
||||||
let voiceMessageMediaManager: VoiceMessageMediaManagerProtocol
|
|
||||||
var sessionSecurityStatePublisher = CurrentValueSubject<SessionSecurityState, Never>(.init(verificationState: .verified, recoveryState: .enabled)).asCurrentValuePublisher()
|
extension UserSessionMock {
|
||||||
|
convenience init(_ configuration: UserSessionMockConfiguration) {
|
||||||
|
self.init()
|
||||||
|
|
||||||
|
clientProxy = configuration.clientProxy
|
||||||
|
userID = clientProxy.userID
|
||||||
|
deviceID = clientProxy.deviceID
|
||||||
|
homeserver = clientProxy.homeserver
|
||||||
|
|
||||||
|
mediaProvider = MockMediaProvider()
|
||||||
|
voiceMessageMediaManager = VoiceMessageMediaManagerMock()
|
||||||
|
|
||||||
|
sessionSecurityStatePublisher = CurrentValueSubject<SessionSecurityState, Never>(.init(verificationState: .verified, recoveryState: .enabled)).asCurrentValuePublisher()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -76,9 +76,7 @@ extension View {
|
|||||||
}
|
}
|
||||||
|
|
||||||
struct ShimmerOverlay_Previews: PreviewProvider, TestablePreview {
|
struct ShimmerOverlay_Previews: PreviewProvider, TestablePreview {
|
||||||
static let viewModel = HomeScreenViewModel(userSession: MockUserSession(clientProxy: ClientProxyMock(.init(userID: "")),
|
static let viewModel = HomeScreenViewModel(userSession: UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "")))),
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock()),
|
|
||||||
analyticsService: ServiceLocator.shared.analytics,
|
analyticsService: ServiceLocator.shared.analytics,
|
||||||
appSettings: ServiceLocator.shared.settings,
|
appSettings: ServiceLocator.shared.settings,
|
||||||
selectedRoomPublisher: CurrentValueSubject<String?, Never>(nil).asCurrentValuePublisher(),
|
selectedRoomPublisher: CurrentValueSubject<String?, Never>(nil).asCurrentValuePublisher(),
|
||||||
|
|||||||
@@ -74,9 +74,7 @@ struct WaitlistScreen_Previews: PreviewProvider, TestablePreview {
|
|||||||
static let viewModel = WaitlistScreenViewModel(homeserver: .mockMatrixDotOrg)
|
static let viewModel = WaitlistScreenViewModel(homeserver: .mockMatrixDotOrg)
|
||||||
static let successViewModel = {
|
static let successViewModel = {
|
||||||
let viewModel = WaitlistScreenViewModel(homeserver: .mockMatrixDotOrg)
|
let viewModel = WaitlistScreenViewModel(homeserver: .mockMatrixDotOrg)
|
||||||
viewModel.update(userSession: MockUserSession(clientProxy: ClientProxyMock(.init(userID: "@alice:matrix.org")),
|
viewModel.update(userSession: UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "@alice:matrix.org")))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock()))
|
|
||||||
return viewModel
|
return viewModel
|
||||||
}()
|
}()
|
||||||
|
|
||||||
|
|||||||
@@ -175,9 +175,7 @@ struct CreateRoomScreen: View {
|
|||||||
|
|
||||||
struct CreateRoom_Previews: PreviewProvider, TestablePreview {
|
struct CreateRoom_Previews: PreviewProvider, TestablePreview {
|
||||||
static let viewModel = {
|
static let viewModel = {
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "@userid:example.com")),
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "@userid:example.com"))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
let parameters = CreateRoomFlowParameters()
|
let parameters = CreateRoomFlowParameters()
|
||||||
let selectedUsers: [UserProfileProxy] = [.mockAlice, .mockBob, .mockCharlie]
|
let selectedUsers: [UserProfileProxy] = [.mockAlice, .mockBob, .mockCharlie]
|
||||||
|
|
||||||
@@ -189,9 +187,7 @@ struct CreateRoom_Previews: PreviewProvider, TestablePreview {
|
|||||||
}()
|
}()
|
||||||
|
|
||||||
static let emtpyViewModel = {
|
static let emtpyViewModel = {
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "@userid:example.com")),
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "@userid:example.com"))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
let parameters = CreateRoomFlowParameters()
|
let parameters = CreateRoomFlowParameters()
|
||||||
return CreateRoomViewModel(userSession: userSession,
|
return CreateRoomViewModel(userSession: userSession,
|
||||||
createRoomParameters: .init(parameters),
|
createRoomParameters: .init(parameters),
|
||||||
|
|||||||
@@ -245,9 +245,7 @@ struct HomeScreen_Previews: PreviewProvider, TestablePreview {
|
|||||||
let clientProxy = ClientProxyMock(.init(userID: userID,
|
let clientProxy = ClientProxyMock(.init(userID: userID,
|
||||||
roomSummaryProvider: RoomSummaryProviderMock(.init(state: roomSummaryProviderState))))
|
roomSummaryProvider: RoomSummaryProviderMock(.init(state: roomSummaryProviderState))))
|
||||||
|
|
||||||
let userSession = MockUserSession(clientProxy: clientProxy,
|
let userSession = UserSessionMock(.init(clientProxy: clientProxy))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
|
|
||||||
return HomeScreenViewModel(userSession: userSession,
|
return HomeScreenViewModel(userSession: userSession,
|
||||||
analyticsService: ServiceLocator.shared.analytics,
|
analyticsService: ServiceLocator.shared.analytics,
|
||||||
|
|||||||
@@ -149,10 +149,8 @@ struct HomeScreenEmptyStateView_Previews: PreviewProvider, TestablePreview {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static let viewModel = {
|
static let viewModel = {
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "@user:example.com",
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "@user:example.com",
|
||||||
roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded([]))))),
|
roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded([])))))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
|
|
||||||
return HomeScreenViewModel(userSession: userSession,
|
return HomeScreenViewModel(userSession: userSession,
|
||||||
analyticsService: ServiceLocator.shared.analytics,
|
analyticsService: ServiceLocator.shared.analytics,
|
||||||
|
|||||||
@@ -191,9 +191,7 @@ struct HomeScreenInviteCell_Previews: PreviewProvider, TestablePreview {
|
|||||||
static func viewModel() -> HomeScreenViewModel {
|
static func viewModel() -> HomeScreenViewModel {
|
||||||
let clientProxy = ClientProxyMock(.init())
|
let clientProxy = ClientProxyMock(.init())
|
||||||
|
|
||||||
let userSession = MockUserSession(clientProxy: clientProxy,
|
let userSession = UserSessionMock(.init(clientProxy: clientProxy))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
|
|
||||||
return HomeScreenViewModel(userSession: userSession,
|
return HomeScreenViewModel(userSession: userSession,
|
||||||
analyticsService: ServiceLocator.shared.analytics,
|
analyticsService: ServiceLocator.shared.analytics,
|
||||||
|
|||||||
+1
-3
@@ -68,9 +68,7 @@ struct HomeScreenRecoveryKeyConfirmationBanner_Previews: PreviewProvider, Testab
|
|||||||
let clientProxy = ClientProxyMock(.init(userID: "@alice:example.com",
|
let clientProxy = ClientProxyMock(.init(userID: "@alice:example.com",
|
||||||
roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loading))))
|
roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loading))))
|
||||||
|
|
||||||
let userSession = MockUserSession(clientProxy: clientProxy,
|
let userSession = UserSessionMock(.init(clientProxy: clientProxy))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
|
|
||||||
return HomeScreenViewModel(userSession: userSession,
|
return HomeScreenViewModel(userSession: userSession,
|
||||||
analyticsService: ServiceLocator.shared.analytics,
|
analyticsService: ServiceLocator.shared.analytics,
|
||||||
|
|||||||
@@ -176,9 +176,7 @@ private extension View {
|
|||||||
struct HomeScreenRoomCell_Previews: PreviewProvider, TestablePreview {
|
struct HomeScreenRoomCell_Previews: PreviewProvider, TestablePreview {
|
||||||
static let summaryProviderGeneric = RoomSummaryProviderMock(.init(state: .loaded(.mockRooms)))
|
static let summaryProviderGeneric = RoomSummaryProviderMock(.init(state: .loaded(.mockRooms)))
|
||||||
static let viewModelGeneric = {
|
static let viewModelGeneric = {
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "John Doe", roomSummaryProvider: summaryProviderGeneric)),
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "John Doe", roomSummaryProvider: summaryProviderGeneric))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
|
|
||||||
return HomeScreenViewModel(userSession: userSession,
|
return HomeScreenViewModel(userSession: userSession,
|
||||||
analyticsService: ServiceLocator.shared.analytics,
|
analyticsService: ServiceLocator.shared.analytics,
|
||||||
@@ -189,9 +187,7 @@ struct HomeScreenRoomCell_Previews: PreviewProvider, TestablePreview {
|
|||||||
|
|
||||||
static let summaryProviderForNotificationsState = RoomSummaryProviderMock(.init(state: .loaded(.mockRoomsWithNotificationsState)))
|
static let summaryProviderForNotificationsState = RoomSummaryProviderMock(.init(state: .loaded(.mockRoomsWithNotificationsState)))
|
||||||
static let viewModelForNotificationsState = {
|
static let viewModelForNotificationsState = {
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "John Doe", roomSummaryProvider: summaryProviderForNotificationsState)),
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "John Doe", roomSummaryProvider: summaryProviderForNotificationsState))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
|
|
||||||
return HomeScreenViewModel(userSession: userSession,
|
return HomeScreenViewModel(userSession: userSession,
|
||||||
analyticsService: ServiceLocator.shared.analytics,
|
analyticsService: ServiceLocator.shared.analytics,
|
||||||
|
|||||||
@@ -107,7 +107,7 @@ struct MessageForwardingScreen_Previews: PreviewProvider, TestablePreview {
|
|||||||
let viewModel = MessageForwardingScreenViewModel(forwardingItem: .init(id: .init(timelineID: ""),
|
let viewModel = MessageForwardingScreenViewModel(forwardingItem: .init(id: .init(timelineID: ""),
|
||||||
roomID: "",
|
roomID: "",
|
||||||
content: .init(noPointer: .init())),
|
content: .init(noPointer: .init())),
|
||||||
clientProxy: ClientProxyMock(),
|
clientProxy: ClientProxyMock(.init()),
|
||||||
roomSummaryProvider: summaryProvider,
|
roomSummaryProvider: summaryProvider,
|
||||||
userIndicatorController: UserIndicatorControllerMock(),
|
userIndicatorController: UserIndicatorControllerMock(),
|
||||||
mediaProvider: MockMediaProvider())
|
mediaProvider: MockMediaProvider())
|
||||||
|
|||||||
+2
-4
@@ -115,10 +115,8 @@ struct IdentityConfirmationScreen_Previews: PreviewProvider, TestablePreview {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private static var viewModel: IdentityConfirmationScreenViewModel {
|
private static var viewModel: IdentityConfirmationScreenViewModel {
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "@user:example.com",
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "@user:example.com",
|
||||||
roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded([]))))),
|
roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded([])))))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
|
|
||||||
return IdentityConfirmationScreenViewModel(userSession: userSession,
|
return IdentityConfirmationScreenViewModel(userSession: userSession,
|
||||||
appSettings: ServiceLocator.shared.settings,
|
appSettings: ServiceLocator.shared.settings,
|
||||||
|
|||||||
@@ -77,7 +77,7 @@ struct ReportContentScreen: View {
|
|||||||
struct ReportContentScreen_Previews: PreviewProvider, TestablePreview {
|
struct ReportContentScreen_Previews: PreviewProvider, TestablePreview {
|
||||||
static let viewModel = ReportContentScreenViewModel(eventID: "",
|
static let viewModel = ReportContentScreenViewModel(eventID: "",
|
||||||
senderID: "",
|
senderID: "",
|
||||||
roomProxy: RoomProxyMock(with: .init()),
|
roomProxy: RoomProxyMock(.init()),
|
||||||
clientProxy: ClientProxyMock(.init()))
|
clientProxy: ClientProxyMock(.init()))
|
||||||
|
|
||||||
static var previews: some View {
|
static var previews: some View {
|
||||||
|
|||||||
+1
-1
@@ -86,7 +86,7 @@ struct RoomChangePermissionsScreen_Previews: PreviewProvider, TestablePreview {
|
|||||||
static func makeViewModel(group: RoomRolesAndPermissionsScreenPermissionsGroup) -> RoomChangePermissionsScreenViewModel {
|
static func makeViewModel(group: RoomRolesAndPermissionsScreenPermissionsGroup) -> RoomChangePermissionsScreenViewModel {
|
||||||
RoomChangePermissionsScreenViewModel(currentPermissions: .init(powerLevels: .mock),
|
RoomChangePermissionsScreenViewModel(currentPermissions: .init(powerLevels: .mock),
|
||||||
group: group,
|
group: group,
|
||||||
roomProxy: RoomProxyMock(with: .init()),
|
roomProxy: RoomProxyMock(.init()),
|
||||||
userIndicatorController: UserIndicatorControllerMock(),
|
userIndicatorController: UserIndicatorControllerMock(),
|
||||||
analytics: ServiceLocator.shared.analytics)
|
analytics: ServiceLocator.shared.analytics)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -132,7 +132,7 @@ struct RoomChangeRolesScreen_Previews: PreviewProvider, TestablePreview {
|
|||||||
|
|
||||||
static func makeViewModel(mode: RoomMemberDetails.Role) -> RoomChangeRolesScreenViewModel {
|
static func makeViewModel(mode: RoomMemberDetails.Role) -> RoomChangeRolesScreenViewModel {
|
||||||
RoomChangeRolesScreenViewModel(mode: mode,
|
RoomChangeRolesScreenViewModel(mode: mode,
|
||||||
roomProxy: RoomProxyMock(with: .init(members: .allMembersAsAdmin)),
|
roomProxy: RoomProxyMock(.init(members: .allMembersAsAdmin)),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
userIndicatorController: UserIndicatorControllerMock(),
|
userIndicatorController: UserIndicatorControllerMock(),
|
||||||
analytics: ServiceLocator.shared.analytics)
|
analytics: ServiceLocator.shared.analytics)
|
||||||
|
|||||||
@@ -157,7 +157,7 @@ struct RoomDetailsEditScreen: View {
|
|||||||
|
|
||||||
struct RoomDetailsEditScreen_Previews: PreviewProvider, TestablePreview {
|
struct RoomDetailsEditScreen_Previews: PreviewProvider, TestablePreview {
|
||||||
static let editableViewModel = {
|
static let editableViewModel = {
|
||||||
let roomProxy = RoomProxyMock(with: .init(id: "test_id",
|
let roomProxy = RoomProxyMock(.init(id: "test_id",
|
||||||
name: "Room",
|
name: "Room",
|
||||||
members: [.mockMeAdmin]))
|
members: [.mockMeAdmin]))
|
||||||
|
|
||||||
@@ -167,7 +167,7 @@ struct RoomDetailsEditScreen_Previews: PreviewProvider, TestablePreview {
|
|||||||
}()
|
}()
|
||||||
|
|
||||||
static let readOnlyViewModel = {
|
static let readOnlyViewModel = {
|
||||||
let roomProxy = RoomProxyMock(with: .init(id: "test_id",
|
let roomProxy = RoomProxyMock(.init(id: "test_id",
|
||||||
name: "Room",
|
name: "Room",
|
||||||
members: [.mockAlice]))
|
members: [.mockAlice]))
|
||||||
|
|
||||||
|
|||||||
@@ -301,7 +301,7 @@ struct RoomDetailsScreen_Previews: PreviewProvider, TestablePreview {
|
|||||||
.mockBob,
|
.mockBob,
|
||||||
.mockCharlie
|
.mockCharlie
|
||||||
]
|
]
|
||||||
let roomProxy = RoomProxyMock(with: .init(id: "room_a_id",
|
let roomProxy = RoomProxyMock(.init(id: "room_a_id",
|
||||||
name: "Room A",
|
name: "Room A",
|
||||||
topic: """
|
topic: """
|
||||||
Discussions about Element X iOS | https://github.com/vector-im/element-x-ios
|
Discussions about Element X iOS | https://github.com/vector-im/element-x-ios
|
||||||
@@ -336,7 +336,7 @@ struct RoomDetailsScreen_Previews: PreviewProvider, TestablePreview {
|
|||||||
.mockDan
|
.mockDan
|
||||||
]
|
]
|
||||||
|
|
||||||
let roomProxy = RoomProxyMock(with: .init(id: "dm_room_id",
|
let roomProxy = RoomProxyMock(.init(id: "dm_room_id",
|
||||||
name: "DM Room",
|
name: "DM Room",
|
||||||
topic: "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.",
|
topic: "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.",
|
||||||
isDirect: true,
|
isDirect: true,
|
||||||
@@ -362,7 +362,7 @@ struct RoomDetailsScreen_Previews: PreviewProvider, TestablePreview {
|
|||||||
.mockBob,
|
.mockBob,
|
||||||
.mockCharlie
|
.mockCharlie
|
||||||
]
|
]
|
||||||
let roomProxy = RoomProxyMock(with: .init(id: "simple_room_id",
|
let roomProxy = RoomProxyMock(.init(id: "simple_room_id",
|
||||||
name: "Room A",
|
name: "Room A",
|
||||||
isDirect: false,
|
isDirect: false,
|
||||||
isEncrypted: false,
|
isEncrypted: false,
|
||||||
|
|||||||
@@ -143,7 +143,7 @@ struct RoomMemberDetailsScreen_Previews: PreviewProvider, TestablePreview {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static func makeViewModel(member: RoomMemberProxyMock) -> RoomMemberDetailsScreenViewModel {
|
static func makeViewModel(member: RoomMemberProxyMock) -> RoomMemberDetailsScreenViewModel {
|
||||||
let roomProxyMock = RoomProxyMock(with: .init(name: ""))
|
let roomProxyMock = RoomProxyMock(.init(name: ""))
|
||||||
roomProxyMock.getMemberUserIDReturnValue = .success(member)
|
roomProxyMock.getMemberUserIDReturnValue = .success(member)
|
||||||
|
|
||||||
let clientProxyMock = ClientProxyMock(.init())
|
let clientProxyMock = ClientProxyMock(.init())
|
||||||
|
|||||||
+1
-1
@@ -108,7 +108,7 @@ struct RoomMembersListManageMemberSheetLive_Previews: PreviewProvider {
|
|||||||
private extension RoomMembersListScreenViewModel {
|
private extension RoomMembersListScreenViewModel {
|
||||||
static var mock: RoomMembersListScreenViewModel {
|
static var mock: RoomMembersListScreenViewModel {
|
||||||
RoomMembersListScreenViewModel(initialMode: .members,
|
RoomMembersListScreenViewModel(initialMode: .members,
|
||||||
roomProxy: RoomProxyMock(with: .init(members: .allMembersAsAdmin)),
|
roomProxy: RoomProxyMock(.init(members: .allMembersAsAdmin)),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
userIndicatorController: ServiceLocator.shared.userIndicatorController,
|
userIndicatorController: ServiceLocator.shared.userIndicatorController,
|
||||||
analytics: ServiceLocator.shared.analytics)
|
analytics: ServiceLocator.shared.analytics)
|
||||||
|
|||||||
@@ -179,7 +179,7 @@ struct RoomMembersListScreen_Previews: PreviewProvider, TestablePreview {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return RoomMembersListScreenViewModel(initialMode: initialMode,
|
return RoomMembersListScreenViewModel(initialMode: initialMode,
|
||||||
roomProxy: RoomProxyMock(with: .init(name: "Some room",
|
roomProxy: RoomProxyMock(.init(name: "Some room",
|
||||||
members: members,
|
members: members,
|
||||||
ownUserID: ownUserID,
|
ownUserID: ownUserID,
|
||||||
canUserInvite: false)),
|
canUserInvite: false)),
|
||||||
|
|||||||
+1
-1
@@ -106,7 +106,7 @@ struct RoomMembersListMemberCell_Previews: PreviewProvider, TestablePreview {
|
|||||||
.init(with: .init(userID: "@badavatar:matrix.org", avatarURL: .picturesDirectory, membership: .ban))
|
.init(with: .init(userID: "@badavatar:matrix.org", avatarURL: .picturesDirectory, membership: .ban))
|
||||||
]
|
]
|
||||||
|
|
||||||
static let viewModel = RoomMembersListScreenViewModel(roomProxy: RoomProxyMock(with: .init(name: "Some room",
|
static let viewModel = RoomMembersListScreenViewModel(roomProxy: RoomProxyMock(.init(name: "Some room",
|
||||||
members: members)),
|
members: members)),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
userIndicatorController: ServiceLocator.shared.userIndicatorController,
|
userIndicatorController: ServiceLocator.shared.userIndicatorController,
|
||||||
|
|||||||
+2
-2
@@ -42,7 +42,7 @@ struct RoomNotificationSettingsCustomSectionView_Previews: PreviewProvider, Test
|
|||||||
static let viewModel = {
|
static let viewModel = {
|
||||||
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init(defaultRoomMode: .allMessages, roomMode: .mentionsAndKeywordsOnly))
|
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init(defaultRoomMode: .allMessages, roomMode: .mentionsAndKeywordsOnly))
|
||||||
|
|
||||||
let roomProxy = RoomProxyMock(with: .init(name: "Room", isEncrypted: true))
|
let roomProxy = RoomProxyMock(.init(name: "Room", isEncrypted: true))
|
||||||
|
|
||||||
return RoomNotificationSettingsScreenViewModel(notificationSettingsProxy: notificationSettingsProxy,
|
return RoomNotificationSettingsScreenViewModel(notificationSettingsProxy: notificationSettingsProxy,
|
||||||
roomProxy: roomProxy,
|
roomProxy: roomProxy,
|
||||||
@@ -52,7 +52,7 @@ struct RoomNotificationSettingsCustomSectionView_Previews: PreviewProvider, Test
|
|||||||
static let viewModelUnencrypted = {
|
static let viewModelUnencrypted = {
|
||||||
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init(defaultRoomMode: .allMessages, roomMode: .mentionsAndKeywordsOnly))
|
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init(defaultRoomMode: .allMessages, roomMode: .mentionsAndKeywordsOnly))
|
||||||
|
|
||||||
let roomProxy = RoomProxyMock(with: .init(name: "Room", isEncrypted: false))
|
let roomProxy = RoomProxyMock(.init(name: "Room", isEncrypted: false))
|
||||||
|
|
||||||
return RoomNotificationSettingsScreenViewModel(notificationSettingsProxy: notificationSettingsProxy,
|
return RoomNotificationSettingsScreenViewModel(notificationSettingsProxy: notificationSettingsProxy,
|
||||||
roomProxy: roomProxy,
|
roomProxy: roomProxy,
|
||||||
|
|||||||
+2
-2
@@ -83,7 +83,7 @@ struct RoomNotificationSettingsScreen_Previews: PreviewProvider, TestablePreview
|
|||||||
static let viewModel = {
|
static let viewModel = {
|
||||||
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init(defaultRoomMode: .mentionsAndKeywordsOnly, roomMode: .mentionsAndKeywordsOnly))
|
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init(defaultRoomMode: .mentionsAndKeywordsOnly, roomMode: .mentionsAndKeywordsOnly))
|
||||||
|
|
||||||
let roomProxy = RoomProxyMock(with: .init(name: "Room", isEncrypted: true))
|
let roomProxy = RoomProxyMock(.init(name: "Room", isEncrypted: true))
|
||||||
|
|
||||||
return RoomNotificationSettingsScreenViewModel(notificationSettingsProxy: notificationSettingsProxy,
|
return RoomNotificationSettingsScreenViewModel(notificationSettingsProxy: notificationSettingsProxy,
|
||||||
roomProxy: roomProxy,
|
roomProxy: roomProxy,
|
||||||
@@ -93,7 +93,7 @@ struct RoomNotificationSettingsScreen_Previews: PreviewProvider, TestablePreview
|
|||||||
static let viewModelCustom = {
|
static let viewModelCustom = {
|
||||||
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init(defaultRoomMode: .allMessages, roomMode: .mentionsAndKeywordsOnly))
|
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init(defaultRoomMode: .allMessages, roomMode: .mentionsAndKeywordsOnly))
|
||||||
|
|
||||||
let roomProxy = RoomProxyMock(with: .init(name: "Room", isEncrypted: true))
|
let roomProxy = RoomProxyMock(.init(name: "Room", isEncrypted: true))
|
||||||
|
|
||||||
return RoomNotificationSettingsScreenViewModel(notificationSettingsProxy: notificationSettingsProxy,
|
return RoomNotificationSettingsScreenViewModel(notificationSettingsProxy: notificationSettingsProxy,
|
||||||
roomProxy: roomProxy,
|
roomProxy: roomProxy,
|
||||||
|
|||||||
+2
-2
@@ -52,7 +52,7 @@ struct RoomNotificationSettingsUserDefinedScreen_Previews: PreviewProvider, Test
|
|||||||
static let viewModel = {
|
static let viewModel = {
|
||||||
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init(defaultRoomMode: .mentionsAndKeywordsOnly, roomMode: .mentionsAndKeywordsOnly))
|
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init(defaultRoomMode: .mentionsAndKeywordsOnly, roomMode: .mentionsAndKeywordsOnly))
|
||||||
|
|
||||||
let roomProxy = RoomProxyMock(with: .init(name: "Room", isEncrypted: true))
|
let roomProxy = RoomProxyMock(.init(name: "Room", isEncrypted: true))
|
||||||
|
|
||||||
return RoomNotificationSettingsScreenViewModel(notificationSettingsProxy: notificationSettingsProxy,
|
return RoomNotificationSettingsScreenViewModel(notificationSettingsProxy: notificationSettingsProxy,
|
||||||
roomProxy: roomProxy,
|
roomProxy: roomProxy,
|
||||||
@@ -62,7 +62,7 @@ struct RoomNotificationSettingsUserDefinedScreen_Previews: PreviewProvider, Test
|
|||||||
static let viewModelUnencrypted = {
|
static let viewModelUnencrypted = {
|
||||||
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init(defaultRoomMode: .mentionsAndKeywordsOnly, roomMode: .mentionsAndKeywordsOnly))
|
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init(defaultRoomMode: .mentionsAndKeywordsOnly, roomMode: .mentionsAndKeywordsOnly))
|
||||||
|
|
||||||
let roomProxy = RoomProxyMock(with: .init(name: "Room", isEncrypted: false))
|
let roomProxy = RoomProxyMock(.init(name: "Room", isEncrypted: false))
|
||||||
|
|
||||||
return RoomNotificationSettingsScreenViewModel(notificationSettingsProxy: notificationSettingsProxy,
|
return RoomNotificationSettingsScreenViewModel(notificationSettingsProxy: notificationSettingsProxy,
|
||||||
roomProxy: roomProxy,
|
roomProxy: roomProxy,
|
||||||
|
|||||||
+1
-1
@@ -127,7 +127,7 @@ struct RoomRolesAndPermissionsScreen: View {
|
|||||||
|
|
||||||
struct RoomRolesAndPermissionsScreen_Previews: PreviewProvider, TestablePreview {
|
struct RoomRolesAndPermissionsScreen_Previews: PreviewProvider, TestablePreview {
|
||||||
static let viewModel = RoomRolesAndPermissionsScreenViewModel(initialPermissions: RoomPermissions(powerLevels: .mock),
|
static let viewModel = RoomRolesAndPermissionsScreenViewModel(initialPermissions: RoomPermissions(powerLevels: .mock),
|
||||||
roomProxy: RoomProxyMock(with: .init(members: .allMembersAsAdmin)),
|
roomProxy: RoomProxyMock(.init(members: .allMembersAsAdmin)),
|
||||||
userIndicatorController: UserIndicatorControllerMock(),
|
userIndicatorController: UserIndicatorControllerMock(),
|
||||||
analytics: ServiceLocator.shared.analytics)
|
analytics: ServiceLocator.shared.analytics)
|
||||||
static var previews: some View {
|
static var previews: some View {
|
||||||
|
|||||||
@@ -800,7 +800,7 @@ private extension RoomProxyProtocol {
|
|||||||
// MARK: - Mocks
|
// MARK: - Mocks
|
||||||
|
|
||||||
extension RoomScreenViewModel {
|
extension RoomScreenViewModel {
|
||||||
static let mock = RoomScreenViewModel(roomProxy: RoomProxyMock(with: .init(name: "Preview room")),
|
static let mock = RoomScreenViewModel(roomProxy: RoomProxyMock(.init(name: "Preview room")),
|
||||||
focussedEventID: nil,
|
focussedEventID: nil,
|
||||||
timelineController: MockRoomTimelineController(),
|
timelineController: MockRoomTimelineController(),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ struct ReadReceiptsSummaryView_Previews: PreviewProvider, TestablePreview {
|
|||||||
.mockCharlie,
|
.mockCharlie,
|
||||||
.mockDan
|
.mockDan
|
||||||
]
|
]
|
||||||
let roomProxyMock = RoomProxyMock(with: .init(name: "Room", members: members))
|
let roomProxyMock = RoomProxyMock(.init(name: "Room", members: members))
|
||||||
let mock = RoomScreenViewModel(roomProxy: roomProxyMock,
|
let mock = RoomScreenViewModel(roomProxy: roomProxyMock,
|
||||||
timelineController: MockRoomTimelineController(),
|
timelineController: MockRoomTimelineController(),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
|
|||||||
@@ -184,7 +184,7 @@ struct RoomScreen: View {
|
|||||||
// MARK: - Previews
|
// MARK: - Previews
|
||||||
|
|
||||||
struct RoomScreen_Previews: PreviewProvider, TestablePreview {
|
struct RoomScreen_Previews: PreviewProvider, TestablePreview {
|
||||||
static let viewModel = RoomScreenViewModel(roomProxy: RoomProxyMock(with: .init(name: "Preview room", hasOngoingCall: true)),
|
static let viewModel = RoomScreenViewModel(roomProxy: RoomProxyMock(.init(name: "Preview room", hasOngoingCall: true)),
|
||||||
timelineController: MockRoomTimelineController(),
|
timelineController: MockRoomTimelineController(),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
|
|||||||
+1
-1
@@ -90,7 +90,7 @@ struct TimelineReadReceiptsView_Previews: PreviewProvider, TestablePreview {
|
|||||||
.mockMe
|
.mockMe
|
||||||
]
|
]
|
||||||
|
|
||||||
static let viewModel = RoomScreenViewModel(roomProxy: RoomProxyMock(with: .init(name: "Test", members: members)),
|
static let viewModel = RoomScreenViewModel(roomProxy: RoomProxyMock(.init(name: "Test", members: members)),
|
||||||
timelineController: MockRoomTimelineController(),
|
timelineController: MockRoomTimelineController(),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
|
|||||||
+1
-1
@@ -94,7 +94,7 @@ struct HighlightedTimelineItemModifier_Previews: PreviewProvider, TestablePrevie
|
|||||||
/// A preview that allows quick testing of the highlight appearance across various timeline scenarios.
|
/// A preview that allows quick testing of the highlight appearance across various timeline scenarios.
|
||||||
struct HighlightedTimelineItemTimeline_Previews: PreviewProvider {
|
struct HighlightedTimelineItemTimeline_Previews: PreviewProvider {
|
||||||
static let focussedEventID = "RoomTimelineItemFixtures.default.5"
|
static let focussedEventID = "RoomTimelineItemFixtures.default.5"
|
||||||
static let viewModel = RoomScreenViewModel(roomProxy: RoomProxyMock(with: .init(name: "Preview room")),
|
static let viewModel = RoomScreenViewModel(roomProxy: RoomProxyMock(.init(name: "Preview room")),
|
||||||
focussedEventID: focussedEventID,
|
focussedEventID: focussedEventID,
|
||||||
timelineController: MockRoomTimelineController(),
|
timelineController: MockRoomTimelineController(),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
|
|||||||
@@ -84,7 +84,7 @@ struct TimelineView: UIViewControllerRepresentable {
|
|||||||
// MARK: - Previews
|
// MARK: - Previews
|
||||||
|
|
||||||
struct TimelineView_Previews: PreviewProvider, TestablePreview {
|
struct TimelineView_Previews: PreviewProvider, TestablePreview {
|
||||||
static let viewModel = RoomScreenViewModel(roomProxy: RoomProxyMock(with: .init(name: "Preview room")),
|
static let viewModel = RoomScreenViewModel(roomProxy: RoomProxyMock(.init(name: "Preview room")),
|
||||||
timelineController: MockRoomTimelineController(),
|
timelineController: MockRoomTimelineController(),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
|
|||||||
+7
-15
@@ -73,10 +73,8 @@ struct NotificationSettingsEditScreen_Previews: PreviewProvider, TestablePreview
|
|||||||
notificationSettingsProxy.getDefaultRoomNotificationModeIsEncryptedIsOneToOneReturnValue = .allMessages
|
notificationSettingsProxy.getDefaultRoomNotificationModeIsEncryptedIsOneToOneReturnValue = .allMessages
|
||||||
|
|
||||||
notificationSettingsProxy.getRoomsWithUserDefinedRulesReturnValue = [RoomSummary].mockRooms.compactMap(\.id)
|
notificationSettingsProxy.getRoomsWithUserDefinedRulesReturnValue = [RoomSummary].mockRooms.compactMap(\.id)
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "@alice:example.com",
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "@alice:example.com",
|
||||||
roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded(.mockRooms))))),
|
roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded(.mockRooms)))))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
var viewModel = NotificationSettingsEditScreenViewModel(chatType: .groupChat,
|
var viewModel = NotificationSettingsEditScreenViewModel(chatType: .groupChat,
|
||||||
userSession: userSession,
|
userSession: userSession,
|
||||||
notificationSettingsProxy: notificationSettingsProxy)
|
notificationSettingsProxy: notificationSettingsProxy)
|
||||||
@@ -88,10 +86,8 @@ struct NotificationSettingsEditScreen_Previews: PreviewProvider, TestablePreview
|
|||||||
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init())
|
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init())
|
||||||
notificationSettingsProxy.getDefaultRoomNotificationModeIsEncryptedIsOneToOneReturnValue = .mentionsAndKeywordsOnly
|
notificationSettingsProxy.getDefaultRoomNotificationModeIsEncryptedIsOneToOneReturnValue = .mentionsAndKeywordsOnly
|
||||||
notificationSettingsProxy.getRoomsWithUserDefinedRulesReturnValue = []
|
notificationSettingsProxy.getRoomsWithUserDefinedRulesReturnValue = []
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "@alice:example.com",
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "@alice:example.com",
|
||||||
roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded(.mockRooms))))),
|
roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded(.mockRooms)))))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
var viewModel = NotificationSettingsEditScreenViewModel(chatType: .oneToOneChat,
|
var viewModel = NotificationSettingsEditScreenViewModel(chatType: .oneToOneChat,
|
||||||
userSession: userSession,
|
userSession: userSession,
|
||||||
notificationSettingsProxy: notificationSettingsProxy)
|
notificationSettingsProxy: notificationSettingsProxy)
|
||||||
@@ -103,9 +99,7 @@ struct NotificationSettingsEditScreen_Previews: PreviewProvider, TestablePreview
|
|||||||
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init())
|
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init())
|
||||||
notificationSettingsProxy.getDefaultRoomNotificationModeIsEncryptedIsOneToOneReturnValue = .mentionsAndKeywordsOnly
|
notificationSettingsProxy.getDefaultRoomNotificationModeIsEncryptedIsOneToOneReturnValue = .mentionsAndKeywordsOnly
|
||||||
notificationSettingsProxy.getRoomsWithUserDefinedRulesReturnValue = []
|
notificationSettingsProxy.getRoomsWithUserDefinedRulesReturnValue = []
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "John Doe")),
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "John Doe"))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
|
|
||||||
var viewModel = NotificationSettingsEditScreenViewModel(chatType: .oneToOneChat,
|
var viewModel = NotificationSettingsEditScreenViewModel(chatType: .oneToOneChat,
|
||||||
userSession: userSession,
|
userSession: userSession,
|
||||||
@@ -120,10 +114,8 @@ struct NotificationSettingsEditScreen_Previews: PreviewProvider, TestablePreview
|
|||||||
notificationSettingsProxy.getDefaultRoomNotificationModeIsEncryptedIsOneToOneReturnValue = .allMessages
|
notificationSettingsProxy.getDefaultRoomNotificationModeIsEncryptedIsOneToOneReturnValue = .allMessages
|
||||||
|
|
||||||
notificationSettingsProxy.getRoomsWithUserDefinedRulesReturnValue = [RoomSummary].mockRooms.compactMap(\.id)
|
notificationSettingsProxy.getRoomsWithUserDefinedRulesReturnValue = [RoomSummary].mockRooms.compactMap(\.id)
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "@alice:example.com",
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "@alice:example.com",
|
||||||
roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded(.mockRooms))))),
|
roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded(.mockRooms)))))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
var viewModel = NotificationSettingsEditScreenViewModel(chatType: .groupChat,
|
var viewModel = NotificationSettingsEditScreenViewModel(chatType: .groupChat,
|
||||||
userSession: userSession,
|
userSession: userSession,
|
||||||
notificationSettingsProxy: notificationSettingsProxy)
|
notificationSettingsProxy: notificationSettingsProxy)
|
||||||
|
|||||||
+1
-3
@@ -61,9 +61,7 @@ struct NotificationSettingsEditScreenRoomCell_Previews: PreviewProvider, Testabl
|
|||||||
static var previews: some View {
|
static var previews: some View {
|
||||||
let summaryProvider = RoomSummaryProviderMock(.init(state: .loaded(.mockRooms)))
|
let summaryProvider = RoomSummaryProviderMock(.init(state: .loaded(.mockRooms)))
|
||||||
|
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "John Doe", roomSummaryProvider: summaryProvider)),
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "John Doe", roomSummaryProvider: summaryProvider))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
|
|
||||||
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init())
|
let notificationSettingsProxy = NotificationSettingsProxyMock(with: .init())
|
||||||
notificationSettingsProxy.getRoomsWithUserDefinedRulesReturnValue = []
|
notificationSettingsProxy.getRoomsWithUserDefinedRulesReturnValue = []
|
||||||
|
|||||||
+2
-6
@@ -222,9 +222,7 @@ struct NotificationSettingsScreen_Previews: PreviewProvider, TestablePreview {
|
|||||||
notificationSettingsProxy.isRoomMentionEnabledReturnValue = true
|
notificationSettingsProxy.isRoomMentionEnabledReturnValue = true
|
||||||
notificationSettingsProxy.isCallEnabledReturnValue = false
|
notificationSettingsProxy.isCallEnabledReturnValue = false
|
||||||
|
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "John Doe")),
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "John Doe"))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
|
|
||||||
var viewModel = NotificationSettingsScreenViewModel(appSettings: appSettings,
|
var viewModel = NotificationSettingsScreenViewModel(appSettings: appSettings,
|
||||||
userNotificationCenter: notificationCenter,
|
userNotificationCenter: notificationCenter,
|
||||||
@@ -252,9 +250,7 @@ struct NotificationSettingsScreen_Previews: PreviewProvider, TestablePreview {
|
|||||||
notificationSettingsProxy.isRoomMentionEnabledReturnValue = true
|
notificationSettingsProxy.isRoomMentionEnabledReturnValue = true
|
||||||
notificationSettingsProxy.isCallEnabledReturnValue = false
|
notificationSettingsProxy.isCallEnabledReturnValue = false
|
||||||
|
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "John Doe")),
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "John Doe"))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
|
|
||||||
var viewModel = NotificationSettingsScreenViewModel(appSettings: appSettings,
|
var viewModel = NotificationSettingsScreenViewModel(appSettings: appSettings,
|
||||||
userNotificationCenter: notificationCenter,
|
userNotificationCenter: notificationCenter,
|
||||||
|
|||||||
@@ -235,11 +235,9 @@ struct SettingsScreen_Previews: PreviewProvider, TestablePreview {
|
|||||||
static let viewModel = {
|
static let viewModel = {
|
||||||
let verificationController = SessionVerificationControllerProxyMock()
|
let verificationController = SessionVerificationControllerProxyMock()
|
||||||
verificationController.isVerifiedReturnValue = .success(false)
|
verificationController.isVerifiedReturnValue = .success(false)
|
||||||
let userSession = MockUserSession(sessionVerificationController: verificationController,
|
let userSession = UserSessionMock(.init(sessionVerificationController: verificationController,
|
||||||
clientProxy: ClientProxyMock(.init(userID: "@userid:example.com",
|
clientProxy: ClientProxyMock(.init(userID: "@userid:example.com",
|
||||||
deviceID: "AAAAAAAAAAA")),
|
deviceID: "AAAAAAAAAAA"))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
return SettingsScreenViewModel(userSession: userSession,
|
return SettingsScreenViewModel(userSession: userSession,
|
||||||
appSettings: ServiceLocator.shared.settings)
|
appSettings: ServiceLocator.shared.settings)
|
||||||
}()
|
}()
|
||||||
|
|||||||
@@ -129,9 +129,7 @@ struct StartChatScreen: View {
|
|||||||
|
|
||||||
struct StartChatScreen_Previews: PreviewProvider, TestablePreview {
|
struct StartChatScreen_Previews: PreviewProvider, TestablePreview {
|
||||||
static let viewModel = {
|
static let viewModel = {
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "@userid:example.com")),
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "@userid:example.com"))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
let userDiscoveryService = UserDiscoveryServiceMock()
|
let userDiscoveryService = UserDiscoveryServiceMock()
|
||||||
userDiscoveryService.searchProfilesWithReturnValue = .success([.mockAlice])
|
userDiscoveryService.searchProfilesWithReturnValue = .success([.mockAlice])
|
||||||
let viewModel = StartChatScreenViewModel(userSession: userSession,
|
let viewModel = StartChatScreenViewModel(userSession: userSession,
|
||||||
|
|||||||
@@ -62,9 +62,7 @@ class MockAuthenticationServiceProxy: AuthenticationServiceProxyProtocol {
|
|||||||
return .failure(.invalidCredentials)
|
return .failure(.invalidCredentials)
|
||||||
}
|
}
|
||||||
|
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: username)),
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: username))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
return .success(userSession)
|
return .success(userSession)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ struct SessionSecurityState: Equatable {
|
|||||||
let recoveryState: SecureBackupRecoveryState
|
let recoveryState: SecureBackupRecoveryState
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// sourcery: AutoMockable
|
||||||
protocol UserSessionProtocol {
|
protocol UserSessionProtocol {
|
||||||
var homeserver: String { get }
|
var homeserver: String { get }
|
||||||
var userID: String { get }
|
var userID: String { get }
|
||||||
|
|||||||
@@ -233,9 +233,7 @@ class MockScreen: Identifiable {
|
|||||||
case .bugReport:
|
case .bugReport:
|
||||||
let navigationStackCoordinator = NavigationStackCoordinator()
|
let navigationStackCoordinator = NavigationStackCoordinator()
|
||||||
let clientProxy = ClientProxyMock(.init(userID: "@mock:client.com", roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded(.mockRooms)))))
|
let clientProxy = ClientProxyMock(.init(userID: "@mock:client.com", roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded(.mockRooms)))))
|
||||||
let userSession = MockUserSession(clientProxy: clientProxy,
|
let userSession = UserSessionMock(.init(clientProxy: clientProxy))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
let coordinator = BugReportScreenCoordinator(parameters: .init(bugReportService: BugReportServiceMock(),
|
let coordinator = BugReportScreenCoordinator(parameters: .init(bugReportService: BugReportServiceMock(),
|
||||||
userSession: userSession,
|
userSession: userSession,
|
||||||
userIndicatorController: nil,
|
userIndicatorController: nil,
|
||||||
@@ -245,7 +243,7 @@ class MockScreen: Identifiable {
|
|||||||
return navigationStackCoordinator
|
return navigationStackCoordinator
|
||||||
case .roomPlainNoAvatar:
|
case .roomPlainNoAvatar:
|
||||||
let navigationStackCoordinator = NavigationStackCoordinator()
|
let navigationStackCoordinator = NavigationStackCoordinator()
|
||||||
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(with: .init(name: "Some room name", avatarURL: nil)),
|
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(.init(name: "Some room name", avatarURL: nil)),
|
||||||
timelineController: MockRoomTimelineController(),
|
timelineController: MockRoomTimelineController(),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
@@ -261,7 +259,7 @@ class MockScreen: Identifiable {
|
|||||||
let navigationStackCoordinator = NavigationStackCoordinator()
|
let navigationStackCoordinator = NavigationStackCoordinator()
|
||||||
let timelineController = MockRoomTimelineController()
|
let timelineController = MockRoomTimelineController()
|
||||||
timelineController.timelineItems = RoomTimelineItemFixtures.smallChunk
|
timelineController.timelineItems = RoomTimelineItemFixtures.smallChunk
|
||||||
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(with: .init(name: "New room", avatarURL: URL.picturesDirectory)),
|
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(.init(name: "New room", avatarURL: URL.picturesDirectory)),
|
||||||
timelineController: timelineController,
|
timelineController: timelineController,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
@@ -277,7 +275,7 @@ class MockScreen: Identifiable {
|
|||||||
let navigationStackCoordinator = NavigationStackCoordinator()
|
let navigationStackCoordinator = NavigationStackCoordinator()
|
||||||
let timelineController = MockRoomTimelineController()
|
let timelineController = MockRoomTimelineController()
|
||||||
timelineController.timelineItems = RoomTimelineItemFixtures.default
|
timelineController.timelineItems = RoomTimelineItemFixtures.default
|
||||||
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(with: .init(name: "New room", avatarURL: URL.picturesDirectory)),
|
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(.init(name: "New room", avatarURL: URL.picturesDirectory)),
|
||||||
timelineController: timelineController,
|
timelineController: timelineController,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
@@ -293,7 +291,7 @@ class MockScreen: Identifiable {
|
|||||||
let navigationStackCoordinator = NavigationStackCoordinator()
|
let navigationStackCoordinator = NavigationStackCoordinator()
|
||||||
let timelineController = MockRoomTimelineController()
|
let timelineController = MockRoomTimelineController()
|
||||||
timelineController.timelineItems = RoomTimelineItemFixtures.smallChunkWithReadReceipts
|
timelineController.timelineItems = RoomTimelineItemFixtures.smallChunkWithReadReceipts
|
||||||
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(with: .init(name: "New room", avatarURL: URL.picturesDirectory)),
|
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(.init(name: "New room", avatarURL: URL.picturesDirectory)),
|
||||||
timelineController: timelineController,
|
timelineController: timelineController,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
@@ -312,7 +310,7 @@ class MockScreen: Identifiable {
|
|||||||
timelineController.timelineItems = RoomTimelineItemFixtures.smallChunk
|
timelineController.timelineItems = RoomTimelineItemFixtures.smallChunk
|
||||||
timelineController.backPaginationResponses = [RoomTimelineItemFixtures.singleMessageChunk]
|
timelineController.backPaginationResponses = [RoomTimelineItemFixtures.singleMessageChunk]
|
||||||
timelineController.incomingItems = [RoomTimelineItemFixtures.incomingMessage]
|
timelineController.incomingItems = [RoomTimelineItemFixtures.incomingMessage]
|
||||||
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(with: .init(name: "Small timeline", avatarURL: URL.picturesDirectory)),
|
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(.init(name: "Small timeline", avatarURL: URL.picturesDirectory)),
|
||||||
timelineController: timelineController,
|
timelineController: timelineController,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
@@ -331,7 +329,7 @@ class MockScreen: Identifiable {
|
|||||||
let timelineController = MockRoomTimelineController(listenForSignals: true)
|
let timelineController = MockRoomTimelineController(listenForSignals: true)
|
||||||
timelineController.timelineItems = RoomTimelineItemFixtures.smallChunk
|
timelineController.timelineItems = RoomTimelineItemFixtures.smallChunk
|
||||||
timelineController.backPaginationResponses = [RoomTimelineItemFixtures.largeChunk]
|
timelineController.backPaginationResponses = [RoomTimelineItemFixtures.largeChunk]
|
||||||
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(with: .init(name: "Small timeline, paginating", avatarURL: URL.picturesDirectory)),
|
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(.init(name: "Small timeline, paginating", avatarURL: URL.picturesDirectory)),
|
||||||
timelineController: timelineController,
|
timelineController: timelineController,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
@@ -350,7 +348,7 @@ class MockScreen: Identifiable {
|
|||||||
let timelineController = MockRoomTimelineController(listenForSignals: true)
|
let timelineController = MockRoomTimelineController(listenForSignals: true)
|
||||||
timelineController.timelineItems = RoomTimelineItemFixtures.largeChunk
|
timelineController.timelineItems = RoomTimelineItemFixtures.largeChunk
|
||||||
timelineController.backPaginationResponses = [RoomTimelineItemFixtures.largeChunk]
|
timelineController.backPaginationResponses = [RoomTimelineItemFixtures.largeChunk]
|
||||||
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(with: .init(name: "Large timeline", avatarURL: URL.picturesDirectory)),
|
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(.init(name: "Large timeline", avatarURL: URL.picturesDirectory)),
|
||||||
timelineController: timelineController,
|
timelineController: timelineController,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
@@ -370,7 +368,7 @@ class MockScreen: Identifiable {
|
|||||||
timelineController.timelineItems = RoomTimelineItemFixtures.largeChunk
|
timelineController.timelineItems = RoomTimelineItemFixtures.largeChunk
|
||||||
timelineController.backPaginationResponses = [RoomTimelineItemFixtures.largeChunk]
|
timelineController.backPaginationResponses = [RoomTimelineItemFixtures.largeChunk]
|
||||||
timelineController.incomingItems = [RoomTimelineItemFixtures.incomingMessage]
|
timelineController.incomingItems = [RoomTimelineItemFixtures.incomingMessage]
|
||||||
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(with: .init(name: "Large timeline", avatarURL: URL.picturesDirectory)),
|
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(.init(name: "Large timeline", avatarURL: URL.picturesDirectory)),
|
||||||
timelineController: timelineController,
|
timelineController: timelineController,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
@@ -389,7 +387,7 @@ class MockScreen: Identifiable {
|
|||||||
let timelineController = MockRoomTimelineController(listenForSignals: true)
|
let timelineController = MockRoomTimelineController(listenForSignals: true)
|
||||||
timelineController.timelineItems = RoomTimelineItemFixtures.largeChunk
|
timelineController.timelineItems = RoomTimelineItemFixtures.largeChunk
|
||||||
timelineController.incomingItems = [RoomTimelineItemFixtures.incomingMessage]
|
timelineController.incomingItems = [RoomTimelineItemFixtures.incomingMessage]
|
||||||
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(with: .init(name: "Large timeline", avatarURL: URL.picturesDirectory)),
|
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(.init(name: "Large timeline", avatarURL: URL.picturesDirectory)),
|
||||||
timelineController: timelineController,
|
timelineController: timelineController,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
@@ -407,7 +405,7 @@ class MockScreen: Identifiable {
|
|||||||
|
|
||||||
let timelineController = MockRoomTimelineController()
|
let timelineController = MockRoomTimelineController()
|
||||||
timelineController.timelineItems = RoomTimelineItemFixtures.permalinkChunk
|
timelineController.timelineItems = RoomTimelineItemFixtures.permalinkChunk
|
||||||
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(with: .init(name: "Timeline highlight", avatarURL: URL.picturesDirectory)),
|
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(.init(name: "Timeline highlight", avatarURL: URL.picturesDirectory)),
|
||||||
timelineController: timelineController,
|
timelineController: timelineController,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
@@ -439,7 +437,7 @@ class MockScreen: Identifiable {
|
|||||||
let timelineController = MockRoomTimelineController()
|
let timelineController = MockRoomTimelineController()
|
||||||
timelineController.timelineItems = RoomTimelineItemFixtures.disclosedPolls
|
timelineController.timelineItems = RoomTimelineItemFixtures.disclosedPolls
|
||||||
timelineController.incomingItems = []
|
timelineController.incomingItems = []
|
||||||
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(with: .init(name: "Polls timeline", avatarURL: URL.picturesDirectory)),
|
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(.init(name: "Polls timeline", avatarURL: URL.picturesDirectory)),
|
||||||
timelineController: timelineController,
|
timelineController: timelineController,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
@@ -458,7 +456,7 @@ class MockScreen: Identifiable {
|
|||||||
let timelineController = MockRoomTimelineController()
|
let timelineController = MockRoomTimelineController()
|
||||||
timelineController.timelineItems = RoomTimelineItemFixtures.undisclosedPolls
|
timelineController.timelineItems = RoomTimelineItemFixtures.undisclosedPolls
|
||||||
timelineController.incomingItems = []
|
timelineController.incomingItems = []
|
||||||
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(with: .init(name: "Polls timeline", avatarURL: URL.picturesDirectory)),
|
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(.init(name: "Polls timeline", avatarURL: URL.picturesDirectory)),
|
||||||
timelineController: timelineController,
|
timelineController: timelineController,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
@@ -477,7 +475,7 @@ class MockScreen: Identifiable {
|
|||||||
let timelineController = MockRoomTimelineController()
|
let timelineController = MockRoomTimelineController()
|
||||||
timelineController.timelineItems = RoomTimelineItemFixtures.outgoingPolls
|
timelineController.timelineItems = RoomTimelineItemFixtures.outgoingPolls
|
||||||
timelineController.incomingItems = []
|
timelineController.incomingItems = []
|
||||||
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(with: .init(name: "Polls timeline", avatarURL: URL.picturesDirectory)),
|
let parameters = RoomScreenCoordinatorParameters(roomProxy: RoomProxyMock(.init(name: "Polls timeline", avatarURL: URL.picturesDirectory)),
|
||||||
timelineController: timelineController,
|
timelineController: timelineController,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
@@ -504,7 +502,7 @@ class MockScreen: Identifiable {
|
|||||||
let clientProxy = ClientProxyMock(.init(userID: "@mock:client.com", roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded(.mockRooms)))))
|
let clientProxy = ClientProxyMock(.init(userID: "@mock:client.com", roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded(.mockRooms)))))
|
||||||
ServiceLocator.shared.settings.migratedAccounts[clientProxy.userID] = true
|
ServiceLocator.shared.settings.migratedAccounts[clientProxy.userID] = true
|
||||||
|
|
||||||
let flowCoordinator = UserSessionFlowCoordinator(userSession: MockUserSession(clientProxy: clientProxy, mediaProvider: MockMediaProvider(), voiceMessageMediaManager: VoiceMessageMediaManagerMock()),
|
let flowCoordinator = UserSessionFlowCoordinator(userSession: UserSessionMock(.init(clientProxy: clientProxy)),
|
||||||
navigationRootCoordinator: navigationRootCoordinator,
|
navigationRootCoordinator: navigationRootCoordinator,
|
||||||
appLockService: AppLockService(keychainController: KeychainControllerMock(),
|
appLockService: AppLockService(keychainController: KeychainControllerMock(),
|
||||||
appSettings: ServiceLocator.shared.settings),
|
appSettings: ServiceLocator.shared.settings),
|
||||||
@@ -526,7 +524,7 @@ class MockScreen: Identifiable {
|
|||||||
let navigationStackCoordinator = NavigationStackCoordinator()
|
let navigationStackCoordinator = NavigationStackCoordinator()
|
||||||
let members: [RoomMemberProxyMock] = [.mockInvitedAlice, .mockBob, .mockCharlie]
|
let members: [RoomMemberProxyMock] = [.mockInvitedAlice, .mockBob, .mockCharlie]
|
||||||
let coordinator = RoomMembersListScreenCoordinator(parameters: .init(mediaProvider: MockMediaProvider(),
|
let coordinator = RoomMembersListScreenCoordinator(parameters: .init(mediaProvider: MockMediaProvider(),
|
||||||
roomProxy: RoomProxyMock(with: .init(name: "test", members: members)),
|
roomProxy: RoomProxyMock(.init(name: "test", members: members)),
|
||||||
userIndicatorController: ServiceLocator.shared.userIndicatorController,
|
userIndicatorController: ServiceLocator.shared.userIndicatorController,
|
||||||
analytics: ServiceLocator.shared.analytics))
|
analytics: ServiceLocator.shared.analytics))
|
||||||
navigationStackCoordinator.setRootCoordinator(coordinator)
|
navigationStackCoordinator.setRootCoordinator(coordinator)
|
||||||
@@ -534,7 +532,7 @@ class MockScreen: Identifiable {
|
|||||||
case .roomRolesAndPermissionsFlow:
|
case .roomRolesAndPermissionsFlow:
|
||||||
let navigationStackCoordinator = NavigationStackCoordinator()
|
let navigationStackCoordinator = NavigationStackCoordinator()
|
||||||
navigationStackCoordinator.setRootCoordinator(BlankFormCoordinator())
|
navigationStackCoordinator.setRootCoordinator(BlankFormCoordinator())
|
||||||
let coordinator = RoomRolesAndPermissionsFlowCoordinator(parameters: .init(roomProxy: RoomProxyMock(with: .init(members: .allMembersAsAdmin)),
|
let coordinator = RoomRolesAndPermissionsFlowCoordinator(parameters: .init(roomProxy: RoomProxyMock(.init(members: .allMembersAsAdmin)),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
navigationStackCoordinator: navigationStackCoordinator,
|
navigationStackCoordinator: navigationStackCoordinator,
|
||||||
userIndicatorController: ServiceLocator.shared.userIndicatorController,
|
userIndicatorController: ServiceLocator.shared.userIndicatorController,
|
||||||
@@ -546,9 +544,7 @@ class MockScreen: Identifiable {
|
|||||||
let navigationStackCoordinator = NavigationStackCoordinator()
|
let navigationStackCoordinator = NavigationStackCoordinator()
|
||||||
let userDiscoveryMock = UserDiscoveryServiceMock()
|
let userDiscoveryMock = UserDiscoveryServiceMock()
|
||||||
userDiscoveryMock.searchProfilesWithReturnValue = .success([])
|
userDiscoveryMock.searchProfilesWithReturnValue = .success([])
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "@mock:client.com")),
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "@mock:client.com"))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
let parameters: StartChatScreenCoordinatorParameters = .init(orientationManager: OrientationManagerMock(),
|
let parameters: StartChatScreenCoordinatorParameters = .init(orientationManager: OrientationManagerMock(),
|
||||||
userSession: userSession,
|
userSession: userSession,
|
||||||
userIndicatorController: UserIndicatorControllerMock(),
|
userIndicatorController: UserIndicatorControllerMock(),
|
||||||
@@ -562,7 +558,7 @@ class MockScreen: Identifiable {
|
|||||||
let clientProxy = ClientProxyMock(.init(userID: "@mock:client.com"))
|
let clientProxy = ClientProxyMock(.init(userID: "@mock:client.com"))
|
||||||
let userDiscoveryMock = UserDiscoveryServiceMock()
|
let userDiscoveryMock = UserDiscoveryServiceMock()
|
||||||
userDiscoveryMock.searchProfilesWithReturnValue = .success([.mockBob, .mockBobby])
|
userDiscoveryMock.searchProfilesWithReturnValue = .success([.mockBob, .mockBobby])
|
||||||
let userSession = MockUserSession(clientProxy: clientProxy, mediaProvider: MockMediaProvider(), voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
let userSession = UserSessionMock(.init(clientProxy: clientProxy))
|
||||||
let coordinator = StartChatScreenCoordinator(parameters: .init(orientationManager: OrientationManagerMock(),
|
let coordinator = StartChatScreenCoordinator(parameters: .init(orientationManager: OrientationManagerMock(),
|
||||||
userSession: userSession,
|
userSession: userSession,
|
||||||
userIndicatorController: UserIndicatorControllerMock(),
|
userIndicatorController: UserIndicatorControllerMock(),
|
||||||
@@ -573,7 +569,7 @@ class MockScreen: Identifiable {
|
|||||||
case .createRoom:
|
case .createRoom:
|
||||||
let navigationStackCoordinator = NavigationStackCoordinator()
|
let navigationStackCoordinator = NavigationStackCoordinator()
|
||||||
let clientProxy = ClientProxyMock(.init(userID: "@mock:client.com"))
|
let clientProxy = ClientProxyMock(.init(userID: "@mock:client.com"))
|
||||||
let mockUserSession = MockUserSession(clientProxy: clientProxy, mediaProvider: MockMediaProvider(), voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
let mockUserSession = UserSessionMock(.init(clientProxy: clientProxy))
|
||||||
let createRoomParameters = CreateRoomFlowParameters()
|
let createRoomParameters = CreateRoomFlowParameters()
|
||||||
let selectedUsers: [UserProfileProxy] = [.mockAlice, .mockBob, .mockCharlie]
|
let selectedUsers: [UserProfileProxy] = [.mockAlice, .mockBob, .mockCharlie]
|
||||||
let parameters = CreateRoomCoordinatorParameters(userSession: mockUserSession,
|
let parameters = CreateRoomCoordinatorParameters(userSession: mockUserSession,
|
||||||
@@ -586,9 +582,7 @@ class MockScreen: Identifiable {
|
|||||||
case .createRoomNoUsers:
|
case .createRoomNoUsers:
|
||||||
let navigationStackCoordinator = NavigationStackCoordinator()
|
let navigationStackCoordinator = NavigationStackCoordinator()
|
||||||
let clientProxy = ClientProxyMock(.init(userID: "@mock:client.com"))
|
let clientProxy = ClientProxyMock(.init(userID: "@mock:client.com"))
|
||||||
let mockUserSession = MockUserSession(clientProxy: clientProxy,
|
let mockUserSession = UserSessionMock(.init(clientProxy: clientProxy))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
let createRoomParameters = CreateRoomFlowParameters()
|
let createRoomParameters = CreateRoomFlowParameters()
|
||||||
let parameters = CreateRoomCoordinatorParameters(userSession: mockUserSession,
|
let parameters = CreateRoomCoordinatorParameters(userSession: mockUserSession,
|
||||||
userIndicatorController: UserIndicatorControllerMock(),
|
userIndicatorController: UserIndicatorControllerMock(),
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ final class CompletionSuggestionServiceTests: XCTestCase {
|
|||||||
func testUserSuggestions() async throws {
|
func testUserSuggestions() async throws {
|
||||||
let alice: RoomMemberProxyMock = .mockAlice
|
let alice: RoomMemberProxyMock = .mockAlice
|
||||||
let members: [RoomMemberProxyMock] = [alice, .mockBob, .mockCharlie, .mockMe]
|
let members: [RoomMemberProxyMock] = [alice, .mockBob, .mockCharlie, .mockMe]
|
||||||
let roomProxyMock = RoomProxyMock(with: .init(name: "test", members: members))
|
let roomProxyMock = RoomProxyMock(.init(name: "test", members: members))
|
||||||
let service = CompletionSuggestionService(roomProxy: roomProxyMock)
|
let service = CompletionSuggestionService(roomProxy: roomProxyMock)
|
||||||
|
|
||||||
var deferred = deferFulfillment(service.suggestionsPublisher) { suggestions in
|
var deferred = deferFulfillment(service.suggestionsPublisher) { suggestions in
|
||||||
@@ -67,7 +67,7 @@ final class CompletionSuggestionServiceTests: XCTestCase {
|
|||||||
func testUserSuggestionsIncludingAllUsers() async throws {
|
func testUserSuggestionsIncludingAllUsers() async throws {
|
||||||
let alice: RoomMemberProxyMock = .mockAlice
|
let alice: RoomMemberProxyMock = .mockAlice
|
||||||
let members: [RoomMemberProxyMock] = [alice, .mockBob, .mockCharlie, .mockMe]
|
let members: [RoomMemberProxyMock] = [alice, .mockBob, .mockCharlie, .mockMe]
|
||||||
let roomProxyMock = RoomProxyMock(with: .init(name: "test", members: members, canUserTriggerRoomNotification: true))
|
let roomProxyMock = RoomProxyMock(.init(name: "test", members: members, canUserTriggerRoomNotification: true))
|
||||||
let service = CompletionSuggestionService(roomProxy: roomProxyMock)
|
let service = CompletionSuggestionService(roomProxy: roomProxyMock)
|
||||||
|
|
||||||
var deferred = deferFulfillment(service.suggestionsPublisher) { suggestions in
|
var deferred = deferFulfillment(service.suggestionsPublisher) { suggestions in
|
||||||
@@ -93,7 +93,7 @@ final class CompletionSuggestionServiceTests: XCTestCase {
|
|||||||
let alice: RoomMemberProxyMock = .mockAlice
|
let alice: RoomMemberProxyMock = .mockAlice
|
||||||
let bob: RoomMemberProxyMock = .mockBob
|
let bob: RoomMemberProxyMock = .mockBob
|
||||||
let members: [RoomMemberProxyMock] = [alice, bob, .mockMe]
|
let members: [RoomMemberProxyMock] = [alice, bob, .mockMe]
|
||||||
let roomProxyMock = RoomProxyMock(with: .init(name: "test", members: members, canUserTriggerRoomNotification: true))
|
let roomProxyMock = RoomProxyMock(.init(name: "test", members: members, canUserTriggerRoomNotification: true))
|
||||||
let service = CompletionSuggestionService(roomProxy: roomProxyMock)
|
let service = CompletionSuggestionService(roomProxy: roomProxyMock)
|
||||||
|
|
||||||
var deferred = deferFulfillment(service.suggestionsPublisher) { suggestions in
|
var deferred = deferFulfillment(service.suggestionsPublisher) { suggestions in
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ import XCTest
|
|||||||
class CreateRoomScreenViewModelTests: XCTestCase {
|
class CreateRoomScreenViewModelTests: XCTestCase {
|
||||||
var viewModel: CreateRoomViewModelProtocol!
|
var viewModel: CreateRoomViewModelProtocol!
|
||||||
var clientProxy: ClientProxyMock!
|
var clientProxy: ClientProxyMock!
|
||||||
var userSession: MockUserSession!
|
var userSession: UserSessionMock!
|
||||||
|
|
||||||
private let usersSubject = CurrentValueSubject<[UserProfileProxy], Never>([])
|
private let usersSubject = CurrentValueSubject<[UserProfileProxy], Never>([])
|
||||||
private var cancellables = Set<AnyCancellable>()
|
private var cancellables = Set<AnyCancellable>()
|
||||||
@@ -35,9 +35,7 @@ class CreateRoomScreenViewModelTests: XCTestCase {
|
|||||||
override func setUpWithError() throws {
|
override func setUpWithError() throws {
|
||||||
cancellables.removeAll()
|
cancellables.removeAll()
|
||||||
clientProxy = ClientProxyMock(.init(userID: "@a:b.com"))
|
clientProxy = ClientProxyMock(.init(userID: "@a:b.com"))
|
||||||
userSession = MockUserSession(clientProxy: clientProxy,
|
userSession = UserSessionMock(.init(clientProxy: clientProxy))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
let parameters = CreateRoomFlowParameters()
|
let parameters = CreateRoomFlowParameters()
|
||||||
usersSubject.send([.mockAlice, .mockBob, .mockCharlie])
|
usersSubject.send([.mockAlice, .mockBob, .mockCharlie])
|
||||||
let viewModel = CreateRoomViewModel(userSession: userSession,
|
let viewModel = CreateRoomViewModel(userSession: userSession,
|
||||||
|
|||||||
@@ -31,9 +31,7 @@ class HomeScreenViewModelTests: XCTestCase {
|
|||||||
cancellables.removeAll()
|
cancellables.removeAll()
|
||||||
roomSummaryProvider = RoomSummaryProviderMock(.init(state: .loaded(.mockRooms)))
|
roomSummaryProvider = RoomSummaryProviderMock(.init(state: .loaded(.mockRooms)))
|
||||||
clientProxy = ClientProxyMock(.init(userID: "@mock:client.com", roomSummaryProvider: roomSummaryProvider))
|
clientProxy = ClientProxyMock(.init(userID: "@mock:client.com", roomSummaryProvider: roomSummaryProvider))
|
||||||
viewModel = HomeScreenViewModel(userSession: MockUserSession(clientProxy: clientProxy,
|
viewModel = HomeScreenViewModel(userSession: UserSessionMock(.init(clientProxy: clientProxy)),
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock()),
|
|
||||||
analyticsService: ServiceLocator.shared.analytics,
|
analyticsService: ServiceLocator.shared.analytics,
|
||||||
appSettings: ServiceLocator.shared.settings,
|
appSettings: ServiceLocator.shared.settings,
|
||||||
selectedRoomPublisher: CurrentValueSubject<String?, Never>(nil).asCurrentValuePublisher(),
|
selectedRoomPublisher: CurrentValueSubject<String?, Never>(nil).asCurrentValuePublisher(),
|
||||||
@@ -89,7 +87,7 @@ class HomeScreenViewModelTests: XCTestCase {
|
|||||||
func testLeaveRoomAlert() async throws {
|
func testLeaveRoomAlert() async throws {
|
||||||
let mockRoomId = "1"
|
let mockRoomId = "1"
|
||||||
|
|
||||||
clientProxy.roomForIdentifierClosure = { _ in RoomProxyMock(with: .init(id: mockRoomId, name: "Some room")) }
|
clientProxy.roomForIdentifierClosure = { _ in RoomProxyMock(.init(id: mockRoomId, name: "Some room")) }
|
||||||
|
|
||||||
let deferred = deferFulfillment(context.$viewState) { value in
|
let deferred = deferFulfillment(context.$viewState) { value in
|
||||||
value.bindings.leaveRoomAlertItem != nil
|
value.bindings.leaveRoomAlertItem != nil
|
||||||
@@ -104,7 +102,7 @@ class HomeScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
func testLeaveRoomError() async throws {
|
func testLeaveRoomError() async throws {
|
||||||
let mockRoomId = "1"
|
let mockRoomId = "1"
|
||||||
let room: RoomProxyMock = .init(with: .init(id: mockRoomId, name: "Some room"))
|
let room = RoomProxyMock(.init(id: mockRoomId, name: "Some room"))
|
||||||
room.leaveRoomClosure = { .failure(.sdkError(ClientProxyMockError.generic)) }
|
room.leaveRoomClosure = { .failure(.sdkError(ClientProxyMockError.generic)) }
|
||||||
|
|
||||||
clientProxy.roomForIdentifierClosure = { _ in room }
|
clientProxy.roomForIdentifierClosure = { _ in room }
|
||||||
@@ -135,7 +133,7 @@ class HomeScreenViewModelTests: XCTestCase {
|
|||||||
expectation.fulfill()
|
expectation.fulfill()
|
||||||
}
|
}
|
||||||
.store(in: &cancellables)
|
.store(in: &cancellables)
|
||||||
let room: RoomProxyMock = .init(with: .init(id: mockRoomId, name: "Some room"))
|
let room = RoomProxyMock(.init(id: mockRoomId, name: "Some room"))
|
||||||
room.leaveRoomClosure = { .success(()) }
|
room.leaveRoomClosure = { .success(()) }
|
||||||
|
|
||||||
clientProxy.roomForIdentifierClosure = { _ in room }
|
clientProxy.roomForIdentifierClosure = { _ in room }
|
||||||
|
|||||||
@@ -64,7 +64,7 @@ class InviteUsersScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
func testInviteButton() async throws {
|
func testInviteButton() async throws {
|
||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockAlice, .mockBob]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockAlice, .mockBob]
|
||||||
setupWithRoomType(roomType: .room(roomProxy: RoomProxyMock(with: .init(name: "test", members: mockedMembers))))
|
setupWithRoomType(roomType: .room(roomProxy: RoomProxyMock(.init(name: "test", members: mockedMembers))))
|
||||||
|
|
||||||
let deferredState = deferFulfillment(viewModel.context.$viewState) { state in
|
let deferredState = deferFulfillment(viewModel.context.$viewState) { state in
|
||||||
state.isUserSelected(.mockAlice)
|
state.isUserSelected(.mockAlice)
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ class MessageForwardingScreenViewModelTests: XCTestCase {
|
|||||||
cancellables.removeAll()
|
cancellables.removeAll()
|
||||||
|
|
||||||
let clientProxy = ClientProxyMock(.init())
|
let clientProxy = ClientProxyMock(.init())
|
||||||
clientProxy.roomForIdentifierClosure = { RoomProxyMock(with: .init(id: $0)) }
|
clientProxy.roomForIdentifierClosure = { RoomProxyMock(.init(id: $0)) }
|
||||||
|
|
||||||
viewModel = MessageForwardingScreenViewModel(forwardingItem: forwardingItem,
|
viewModel = MessageForwardingScreenViewModel(forwardingItem: forwardingItem,
|
||||||
clientProxy: clientProxy,
|
clientProxy: clientProxy,
|
||||||
|
|||||||
@@ -24,9 +24,7 @@ import XCTest
|
|||||||
final class NotificationManagerTests: XCTestCase {
|
final class NotificationManagerTests: XCTestCase {
|
||||||
var notificationManager: NotificationManager!
|
var notificationManager: NotificationManager!
|
||||||
private let clientProxy = ClientProxyMock(.init(userID: "@test:user.net"))
|
private let clientProxy = ClientProxyMock(.init(userID: "@test:user.net"))
|
||||||
private lazy var mockUserSession = MockUserSession(clientProxy: clientProxy,
|
private lazy var mockUserSession = UserSessionMock(.init(clientProxy: clientProxy))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
private var notificationCenter: UserNotificationCenterMock!
|
private var notificationCenter: UserNotificationCenterMock!
|
||||||
private var authorizationStatusWasGranted = false
|
private var authorizationStatusWasGranted = false
|
||||||
private var shouldDisplayInAppNotificationReturnValue = false
|
private var shouldDisplayInAppNotificationReturnValue = false
|
||||||
@@ -169,9 +167,7 @@ final class NotificationManagerTests: XCTestCase {
|
|||||||
notificationCenter.authorizationStatusReturnValue = .authorized
|
notificationCenter.authorizationStatusReturnValue = .authorized
|
||||||
notificationManager.delegate = self
|
notificationManager.delegate = self
|
||||||
|
|
||||||
notificationManager.setUserSession(MockUserSession(clientProxy: ClientProxyMock(),
|
notificationManager.setUserSession(UserSessionMock(.init(clientProxy: ClientProxyMock(.init()))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock()))
|
|
||||||
try await Task.sleep(for: .seconds(1))
|
try await Task.sleep(for: .seconds(1))
|
||||||
|
|
||||||
XCTAssertFalse(authorizationStatusWasGranted)
|
XCTAssertFalse(authorizationStatusWasGranted)
|
||||||
@@ -188,9 +184,7 @@ final class NotificationManagerTests: XCTestCase {
|
|||||||
expectation.fulfill()
|
expectation.fulfill()
|
||||||
}
|
}
|
||||||
|
|
||||||
notificationManager.setUserSession(MockUserSession(clientProxy: ClientProxyMock(),
|
notificationManager.setUserSession(UserSessionMock(.init(clientProxy: ClientProxyMock(.init()))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock()))
|
|
||||||
await fulfillment(of: [expectation])
|
await fulfillment(of: [expectation])
|
||||||
|
|
||||||
XCTAssertTrue(authorizationStatusWasGranted)
|
XCTAssertTrue(authorizationStatusWasGranted)
|
||||||
|
|||||||
@@ -31,9 +31,7 @@ class NotificationSettingsEditScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
@MainActor override func setUpWithError() throws {
|
@MainActor override func setUpWithError() throws {
|
||||||
let clientProxy = ClientProxyMock(.init(userID: "@a:b.com"))
|
let clientProxy = ClientProxyMock(.init(userID: "@a:b.com"))
|
||||||
userSession = MockUserSession(clientProxy: clientProxy,
|
userSession = UserSessionMock(.init(clientProxy: clientProxy))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
notificationSettingsProxy = NotificationSettingsProxyMock(with: NotificationSettingsProxyMockConfiguration())
|
notificationSettingsProxy = NotificationSettingsProxyMock(with: NotificationSettingsProxyMockConfiguration())
|
||||||
notificationSettingsProxy.getDefaultRoomNotificationModeIsEncryptedIsOneToOneReturnValue = .allMessages
|
notificationSettingsProxy.getDefaultRoomNotificationModeIsEncryptedIsOneToOneReturnValue = .allMessages
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ import XCTest
|
|||||||
class PillContextTests: XCTestCase {
|
class PillContextTests: XCTestCase {
|
||||||
func testUser() async throws {
|
func testUser() async throws {
|
||||||
let id = "@test:matrix.org"
|
let id = "@test:matrix.org"
|
||||||
let proxyMock = RoomProxyMock(with: .init(name: "Test"))
|
let proxyMock = RoomProxyMock(.init(name: "Test"))
|
||||||
let subject = CurrentValueSubject<[RoomMemberProxyProtocol], Never>([])
|
let subject = CurrentValueSubject<[RoomMemberProxyProtocol], Never>([])
|
||||||
proxyMock.membersPublisher = subject.asCurrentValuePublisher()
|
proxyMock.membersPublisher = subject.asCurrentValuePublisher()
|
||||||
let mock = RoomScreenViewModel(roomProxy: proxyMock,
|
let mock = RoomScreenViewModel(roomProxy: proxyMock,
|
||||||
@@ -52,7 +52,7 @@ class PillContextTests: XCTestCase {
|
|||||||
|
|
||||||
func testOwnUser() async throws {
|
func testOwnUser() async throws {
|
||||||
let id = "@test:matrix.org"
|
let id = "@test:matrix.org"
|
||||||
let proxyMock = RoomProxyMock(with: .init(name: "Test", ownUserID: id))
|
let proxyMock = RoomProxyMock(.init(name: "Test", ownUserID: id))
|
||||||
let subject = CurrentValueSubject<[RoomMemberProxyProtocol], Never>([])
|
let subject = CurrentValueSubject<[RoomMemberProxyProtocol], Never>([])
|
||||||
proxyMock.membersPublisher = subject.asCurrentValuePublisher()
|
proxyMock.membersPublisher = subject.asCurrentValuePublisher()
|
||||||
let mock = RoomScreenViewModel(roomProxy: proxyMock,
|
let mock = RoomScreenViewModel(roomProxy: proxyMock,
|
||||||
@@ -74,7 +74,7 @@ class PillContextTests: XCTestCase {
|
|||||||
let avatarURL = URL(string: "https://matrix.jpg")
|
let avatarURL = URL(string: "https://matrix.jpg")
|
||||||
let id = "test_room"
|
let id = "test_room"
|
||||||
let displayName = "Test"
|
let displayName = "Test"
|
||||||
let proxyMock = RoomProxyMock(with: .init(id: id, name: displayName, avatarURL: avatarURL))
|
let proxyMock = RoomProxyMock(.init(id: id, name: displayName, avatarURL: avatarURL))
|
||||||
let mockController = MockRoomTimelineController()
|
let mockController = MockRoomTimelineController()
|
||||||
mockController.roomProxy = proxyMock
|
mockController.roomProxy = proxyMock
|
||||||
let mock = RoomScreenViewModel(roomProxy: proxyMock,
|
let mock = RoomScreenViewModel(roomProxy: proxyMock,
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ class ReportContentScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
func testReportContent() async throws {
|
func testReportContent() async throws {
|
||||||
// Given the report content view for some content.
|
// Given the report content view for some content.
|
||||||
let roomProxy = RoomProxyMock(with: .init(name: "test"))
|
let roomProxy = RoomProxyMock(.init(name: "test"))
|
||||||
roomProxy.reportContentReasonReturnValue = .success(())
|
roomProxy.reportContentReasonReturnValue = .success(())
|
||||||
let clientProxy = ClientProxyMock(.init())
|
let clientProxy = ClientProxyMock(.init())
|
||||||
let viewModel = ReportContentScreenViewModel(eventID: eventID,
|
let viewModel = ReportContentScreenViewModel(eventID: eventID,
|
||||||
@@ -54,7 +54,7 @@ class ReportContentScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
func testReportIgnoringSender() async throws {
|
func testReportIgnoringSender() async throws {
|
||||||
// Given the report content view for some content.
|
// Given the report content view for some content.
|
||||||
let roomProxy = RoomProxyMock(with: .init(name: "test"))
|
let roomProxy = RoomProxyMock(.init(name: "test"))
|
||||||
roomProxy.reportContentReasonReturnValue = .success(())
|
roomProxy.reportContentReasonReturnValue = .success(())
|
||||||
let clientProxy = ClientProxyMock(.init())
|
let clientProxy = ClientProxyMock(.init())
|
||||||
let viewModel = ReportContentScreenViewModel(eventID: eventID,
|
let viewModel = ReportContentScreenViewModel(eventID: eventID,
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ class RoomChangePermissionsScreenViewModelTests: XCTestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
override func setUp() {
|
override func setUp() {
|
||||||
roomProxy = RoomProxyMock(with: .init())
|
roomProxy = RoomProxyMock(.init())
|
||||||
viewModel = RoomChangePermissionsScreenViewModel(currentPermissions: .init(powerLevels: .mock),
|
viewModel = RoomChangePermissionsScreenViewModel(currentPermissions: .init(powerLevels: .mock),
|
||||||
group: .roomDetails,
|
group: .roomDetails,
|
||||||
roomProxy: roomProxy,
|
roomProxy: roomProxy,
|
||||||
|
|||||||
@@ -202,7 +202,7 @@ class RoomChangeRolesScreenViewModelTests: XCTestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private func setupViewModel(mode: RoomMemberDetails.Role) {
|
private func setupViewModel(mode: RoomMemberDetails.Role) {
|
||||||
roomProxy = RoomProxyMock(with: .init(members: .allMembersAsAdmin))
|
roomProxy = RoomProxyMock(.init(members: .allMembersAsAdmin))
|
||||||
viewModel = RoomChangeRolesScreenViewModel(mode: mode,
|
viewModel = RoomChangeRolesScreenViewModel(mode: mode,
|
||||||
roomProxy: roomProxy,
|
roomProxy: roomProxy,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
|
|||||||
@@ -119,7 +119,7 @@ class RoomDetailsEditScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
private func setupViewModel(roomProxyConfiguration: RoomProxyMockConfiguration) {
|
private func setupViewModel(roomProxyConfiguration: RoomProxyMockConfiguration) {
|
||||||
userIndicatorController = UserIndicatorControllerMock.default
|
userIndicatorController = UserIndicatorControllerMock.default
|
||||||
viewModel = .init(roomProxy: RoomProxyMock(with: roomProxyConfiguration),
|
viewModel = .init(roomProxy: RoomProxyMock(roomProxyConfiguration),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
userIndicatorController: userIndicatorController)
|
userIndicatorController: userIndicatorController)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
override func setUp() {
|
override func setUp() {
|
||||||
cancellables.removeAll()
|
cancellables.removeAll()
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test"))
|
roomProxyMock = RoomProxyMock(.init(name: "Test"))
|
||||||
notificationSettingsProxyMock = NotificationSettingsProxyMock(with: NotificationSettingsProxyMockConfiguration())
|
notificationSettingsProxyMock = NotificationSettingsProxyMock(with: NotificationSettingsProxyMockConfiguration())
|
||||||
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
||||||
clientProxy: ClientProxyMock(.init()),
|
clientProxy: ClientProxyMock(.init()),
|
||||||
@@ -46,7 +46,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
func testLeaveRoomTappedWhenPublic() async throws {
|
func testLeaveRoomTappedWhenPublic() async throws {
|
||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockBob, .mockAlice]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockBob, .mockAlice]
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test", isPublic: true, members: mockedMembers))
|
roomProxyMock = RoomProxyMock(.init(name: "Test", isPublic: true, members: mockedMembers))
|
||||||
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
||||||
clientProxy: ClientProxyMock(.init()),
|
clientProxy: ClientProxyMock(.init()),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
@@ -67,7 +67,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
func testLeaveRoomTappedWhenRoomNotPublic() async throws {
|
func testLeaveRoomTappedWhenRoomNotPublic() async throws {
|
||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockBob, .mockAlice]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockBob, .mockAlice]
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test", isPublic: false, members: mockedMembers))
|
roomProxyMock = RoomProxyMock(.init(name: "Test", isPublic: false, members: mockedMembers))
|
||||||
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
||||||
clientProxy: ClientProxyMock(.init()),
|
clientProxy: ClientProxyMock(.init()),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
@@ -89,7 +89,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
func testLeaveRoomTappedWithLessThanTwoMembers() async {
|
func testLeaveRoomTappedWithLessThanTwoMembers() async {
|
||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockAlice]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockAlice]
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test", isPublic: false, members: mockedMembers))
|
roomProxyMock = RoomProxyMock(.init(name: "Test", isPublic: false, members: mockedMembers))
|
||||||
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
||||||
clientProxy: ClientProxyMock(.init()),
|
clientProxy: ClientProxyMock(.init()),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
@@ -141,7 +141,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
func testInitialDMDetailsState() async throws {
|
func testInitialDMDetailsState() async throws {
|
||||||
let recipient = RoomMemberProxyMock.mockDan
|
let recipient = RoomMemberProxyMock.mockDan
|
||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, recipient]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, recipient]
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test", isDirect: true, isEncrypted: true, members: mockedMembers))
|
roomProxyMock = RoomProxyMock(.init(name: "Test", isDirect: true, isEncrypted: true, members: mockedMembers))
|
||||||
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
||||||
clientProxy: ClientProxyMock(.init()),
|
clientProxy: ClientProxyMock(.init()),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
@@ -163,7 +163,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
let recipient = RoomMemberProxyMock.mockDan
|
let recipient = RoomMemberProxyMock.mockDan
|
||||||
|
|
||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, recipient]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, recipient]
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test", isDirect: true, isEncrypted: true, members: mockedMembers))
|
roomProxyMock = RoomProxyMock(.init(name: "Test", isDirect: true, isEncrypted: true, members: mockedMembers))
|
||||||
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
||||||
clientProxy: ClientProxyMock(.init()),
|
clientProxy: ClientProxyMock(.init()),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
@@ -196,7 +196,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, recipient]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, recipient]
|
||||||
let clientProxy = ClientProxyMock(.init())
|
let clientProxy = ClientProxyMock(.init())
|
||||||
clientProxy.ignoreUserReturnValue = .failure(.sdkError(ClientProxyMockError.generic))
|
clientProxy.ignoreUserReturnValue = .failure(.sdkError(ClientProxyMockError.generic))
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test", isDirect: true, isEncrypted: true, members: mockedMembers))
|
roomProxyMock = RoomProxyMock(.init(name: "Test", isDirect: true, isEncrypted: true, members: mockedMembers))
|
||||||
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
||||||
clientProxy: clientProxy,
|
clientProxy: clientProxy,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
@@ -228,7 +228,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
func testUnignoreSuccess() async throws {
|
func testUnignoreSuccess() async throws {
|
||||||
let recipient = RoomMemberProxyMock.mockIgnored
|
let recipient = RoomMemberProxyMock.mockIgnored
|
||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, recipient]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, recipient]
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test", isDirect: true, isEncrypted: true, members: mockedMembers))
|
roomProxyMock = RoomProxyMock(.init(name: "Test", isDirect: true, isEncrypted: true, members: mockedMembers))
|
||||||
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
||||||
clientProxy: ClientProxyMock(.init()),
|
clientProxy: ClientProxyMock(.init()),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
@@ -261,7 +261,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, recipient]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, recipient]
|
||||||
let clientProxy = ClientProxyMock(.init())
|
let clientProxy = ClientProxyMock(.init())
|
||||||
clientProxy.unignoreUserReturnValue = .failure(.sdkError(ClientProxyMockError.generic))
|
clientProxy.unignoreUserReturnValue = .failure(.sdkError(ClientProxyMockError.generic))
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test", isDirect: true, isEncrypted: true, members: mockedMembers))
|
roomProxyMock = RoomProxyMock(.init(name: "Test", isDirect: true, isEncrypted: true, members: mockedMembers))
|
||||||
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
||||||
clientProxy: clientProxy,
|
clientProxy: clientProxy,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
@@ -292,7 +292,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
func testCannotInvitePeople() async {
|
func testCannotInvitePeople() async {
|
||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, .mockAlice]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, .mockAlice]
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test",
|
roomProxyMock = RoomProxyMock(.init(name: "Test",
|
||||||
isPublic: true,
|
isPublic: true,
|
||||||
members: mockedMembers,
|
members: mockedMembers,
|
||||||
canUserInvite: false))
|
canUserInvite: false))
|
||||||
@@ -311,7 +311,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
func testInvitePeople() async {
|
func testInvitePeople() async {
|
||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, .mockBob, .mockAlice]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, .mockBob, .mockAlice]
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test", isPublic: true, members: mockedMembers))
|
roomProxyMock = RoomProxyMock(.init(name: "Test", isPublic: true, members: mockedMembers))
|
||||||
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
||||||
clientProxy: ClientProxyMock(.init()),
|
clientProxy: ClientProxyMock(.init()),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
@@ -343,7 +343,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
func testCanEditAvatar() async {
|
func testCanEditAvatar() async {
|
||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, .mockBob, .mockAlice]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, .mockBob, .mockAlice]
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test", isDirect: false, isPublic: false, members: mockedMembers))
|
roomProxyMock = RoomProxyMock(.init(name: "Test", isDirect: false, isPublic: false, members: mockedMembers))
|
||||||
roomProxyMock.canUserUserIDSendStateEventClosure = { _, event in
|
roomProxyMock.canUserUserIDSendStateEventClosure = { _, event in
|
||||||
.success(event == .roomAvatar)
|
.success(event == .roomAvatar)
|
||||||
}
|
}
|
||||||
@@ -365,7 +365,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
func testCanEditName() async {
|
func testCanEditName() async {
|
||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, .mockBob, .mockAlice]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, .mockBob, .mockAlice]
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test", isDirect: false, isPublic: false, members: mockedMembers))
|
roomProxyMock = RoomProxyMock(.init(name: "Test", isDirect: false, isPublic: false, members: mockedMembers))
|
||||||
roomProxyMock.canUserUserIDSendStateEventClosure = { _, event in
|
roomProxyMock.canUserUserIDSendStateEventClosure = { _, event in
|
||||||
.success(event == .roomName)
|
.success(event == .roomName)
|
||||||
}
|
}
|
||||||
@@ -387,7 +387,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
func testCanEditTopic() async {
|
func testCanEditTopic() async {
|
||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, .mockBob, .mockAlice]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, .mockBob, .mockAlice]
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test", isDirect: false, isPublic: false, members: mockedMembers))
|
roomProxyMock = RoomProxyMock(.init(name: "Test", isDirect: false, isPublic: false, members: mockedMembers))
|
||||||
roomProxyMock.canUserUserIDSendStateEventClosure = { _, event in
|
roomProxyMock.canUserUserIDSendStateEventClosure = { _, event in
|
||||||
.success(event == .roomTopic)
|
.success(event == .roomTopic)
|
||||||
}
|
}
|
||||||
@@ -409,7 +409,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
func testCannotEditRoom() async {
|
func testCannotEditRoom() async {
|
||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, .mockBob, .mockAlice]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockMe, .mockBob, .mockAlice]
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test", isDirect: false, isPublic: false, members: mockedMembers))
|
roomProxyMock = RoomProxyMock(.init(name: "Test", isDirect: false, isPublic: false, members: mockedMembers))
|
||||||
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
||||||
clientProxy: ClientProxyMock(.init()),
|
clientProxy: ClientProxyMock(.init()),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
@@ -428,7 +428,7 @@ class RoomDetailsScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
func testCannotEditDirectRoom() async {
|
func testCannotEditDirectRoom() async {
|
||||||
let mockedMembers: [RoomMemberProxyMock] = [.mockMeAdmin, .mockBob, .mockAlice]
|
let mockedMembers: [RoomMemberProxyMock] = [.mockMeAdmin, .mockBob, .mockAlice]
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test", isDirect: true, isPublic: false, members: mockedMembers))
|
roomProxyMock = RoomProxyMock(.init(name: "Test", isDirect: true, isPublic: false, members: mockedMembers))
|
||||||
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
viewModel = RoomDetailsScreenViewModel(roomProxy: roomProxyMock,
|
||||||
clientProxy: ClientProxyMock(.init()),
|
clientProxy: ClientProxyMock(.init()),
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
|
|||||||
@@ -171,7 +171,7 @@ class RoomFlowCoordinatorTests: XCTestCase {
|
|||||||
|
|
||||||
// "Join" the room
|
// "Join" the room
|
||||||
clientProxy.roomForIdentifierClosure = { _ in
|
clientProxy.roomForIdentifierClosure = { _ in
|
||||||
RoomProxyMock(with: .init())
|
RoomProxyMock(.init())
|
||||||
}
|
}
|
||||||
|
|
||||||
try await process(route: .room(roomID: "InvitedRoomID", via: []))
|
try await process(route: .room(roomID: "InvitedRoomID", via: []))
|
||||||
@@ -201,7 +201,7 @@ class RoomFlowCoordinatorTests: XCTestCase {
|
|||||||
|
|
||||||
// "Join" the room
|
// "Join" the room
|
||||||
clientProxy.roomForIdentifierClosure = { _ in
|
clientProxy.roomForIdentifierClosure = { _ in
|
||||||
RoomProxyMock(with: .init())
|
RoomProxyMock(.init())
|
||||||
}
|
}
|
||||||
|
|
||||||
try await process(route: .room(roomID: "InvitedRoomID", via: []))
|
try await process(route: .room(roomID: "InvitedRoomID", via: []))
|
||||||
@@ -291,12 +291,6 @@ class RoomFlowCoordinatorTests: XCTestCase {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
let mediaProvider = MockMediaProvider()
|
|
||||||
let voiceMessageMediaManager = VoiceMessageMediaManagerMock()
|
|
||||||
let userSession = MockUserSession(clientProxy: clientProxy,
|
|
||||||
mediaProvider: mediaProvider,
|
|
||||||
voiceMessageMediaManager: voiceMessageMediaManager)
|
|
||||||
|
|
||||||
let navigationSplitCoordinator = NavigationSplitCoordinator(placeholderCoordinator: PlaceholderScreenCoordinator())
|
let navigationSplitCoordinator = NavigationSplitCoordinator(placeholderCoordinator: PlaceholderScreenCoordinator())
|
||||||
navigationStackCoordinator = NavigationStackCoordinator()
|
navigationStackCoordinator = NavigationStackCoordinator()
|
||||||
navigationSplitCoordinator.setDetailCoordinator(navigationStackCoordinator)
|
navigationSplitCoordinator.setDetailCoordinator(navigationStackCoordinator)
|
||||||
@@ -309,7 +303,7 @@ class RoomFlowCoordinatorTests: XCTestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
roomFlowCoordinator = await RoomFlowCoordinator(roomID: roomID,
|
roomFlowCoordinator = await RoomFlowCoordinator(roomID: roomID,
|
||||||
userSession: userSession,
|
userSession: UserSessionMock(.init(clientProxy: clientProxy)),
|
||||||
isChildFlow: asChildFlow,
|
isChildFlow: asChildFlow,
|
||||||
roomTimelineControllerFactory: timelineControllerFactory,
|
roomTimelineControllerFactory: timelineControllerFactory,
|
||||||
navigationStackCoordinator: navigationStackCoordinator,
|
navigationStackCoordinator: navigationStackCoordinator,
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ class RoomMemberDetailsViewModelTests: XCTestCase {
|
|||||||
var context: RoomMemberDetailsScreenViewModelType.Context { viewModel.context }
|
var context: RoomMemberDetailsScreenViewModelType.Context { viewModel.context }
|
||||||
|
|
||||||
override func setUp() async throws {
|
override func setUp() async throws {
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: ""))
|
roomProxyMock = RoomProxyMock(.init(name: ""))
|
||||||
|
|
||||||
roomProxyMock.getMemberUserIDClosure = { _ in
|
roomProxyMock.getMemberUserIDClosure = { _ in
|
||||||
.success(self.roomMemberProxyMock)
|
.success(self.roomMemberProxyMock)
|
||||||
|
|||||||
@@ -286,7 +286,7 @@ class RoomMembersListScreenViewModelTests: XCTestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private func setup(with members: [RoomMemberProxyMock]) {
|
private func setup(with members: [RoomMemberProxyMock]) {
|
||||||
roomProxy = RoomProxyMock(with: .init(name: "test", members: members))
|
roomProxy = RoomProxyMock(.init(name: "test", members: members))
|
||||||
viewModel = .init(roomProxy: roomProxy,
|
viewModel = .init(roomProxy: roomProxy,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
userIndicatorController: ServiceLocator.shared.userIndicatorController,
|
userIndicatorController: ServiceLocator.shared.userIndicatorController,
|
||||||
|
|||||||
@@ -28,12 +28,12 @@ class RoomNotificationSettingsScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
override func setUpWithError() throws {
|
override func setUpWithError() throws {
|
||||||
cancellables.removeAll()
|
cancellables.removeAll()
|
||||||
roomProxyMock = RoomProxyMock(with: .init(name: "Test"))
|
roomProxyMock = RoomProxyMock(.init(name: "Test"))
|
||||||
notificationSettingsProxyMock = NotificationSettingsProxyMock(with: NotificationSettingsProxyMockConfiguration())
|
notificationSettingsProxyMock = NotificationSettingsProxyMock(with: NotificationSettingsProxyMockConfiguration())
|
||||||
}
|
}
|
||||||
|
|
||||||
func testInitialStateDefaultModeEncryptedRoom() async throws {
|
func testInitialStateDefaultModeEncryptedRoom() async throws {
|
||||||
let roomProxyMock = RoomProxyMock(with: .init(name: "Test", isEncrypted: true))
|
let roomProxyMock = RoomProxyMock(.init(name: "Test", isEncrypted: true))
|
||||||
let notificationSettingsProxyMock = NotificationSettingsProxyMock(with: NotificationSettingsProxyMockConfiguration())
|
let notificationSettingsProxyMock = NotificationSettingsProxyMock(with: NotificationSettingsProxyMockConfiguration())
|
||||||
|
|
||||||
notificationSettingsProxyMock.getNotificationSettingsRoomIdIsEncryptedIsOneToOneReturnValue = RoomNotificationSettingsProxyMock(with: .init(mode: .mentionsAndKeywordsOnly, isDefault: true))
|
notificationSettingsProxyMock.getNotificationSettingsRoomIdIsEncryptedIsOneToOneReturnValue = RoomNotificationSettingsProxyMock(with: .init(mode: .mentionsAndKeywordsOnly, isDefault: true))
|
||||||
@@ -55,7 +55,7 @@ class RoomNotificationSettingsScreenViewModelTests: XCTestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func testInitialStateDefaultModeEncryptedRoomWithCanPushEncrypted() async throws {
|
func testInitialStateDefaultModeEncryptedRoomWithCanPushEncrypted() async throws {
|
||||||
let roomProxyMock = RoomProxyMock(with: .init(name: "Test", isEncrypted: true))
|
let roomProxyMock = RoomProxyMock(.init(name: "Test", isEncrypted: true))
|
||||||
let notificationSettingsProxyMock = NotificationSettingsProxyMock(with: .init(canPushEncryptedEvents: true))
|
let notificationSettingsProxyMock = NotificationSettingsProxyMock(with: .init(canPushEncryptedEvents: true))
|
||||||
|
|
||||||
notificationSettingsProxyMock.getNotificationSettingsRoomIdIsEncryptedIsOneToOneReturnValue = RoomNotificationSettingsProxyMock(with: .init(mode: .mentionsAndKeywordsOnly, isDefault: true))
|
notificationSettingsProxyMock.getNotificationSettingsRoomIdIsEncryptedIsOneToOneReturnValue = RoomNotificationSettingsProxyMock(with: .init(mode: .mentionsAndKeywordsOnly, isDefault: true))
|
||||||
@@ -77,7 +77,7 @@ class RoomNotificationSettingsScreenViewModelTests: XCTestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func testInitialStateDefaultModeUnencryptedRoom() async throws {
|
func testInitialStateDefaultModeUnencryptedRoom() async throws {
|
||||||
let roomProxyMock = RoomProxyMock(with: .init(name: "Test", isEncrypted: false))
|
let roomProxyMock = RoomProxyMock(.init(name: "Test", isEncrypted: false))
|
||||||
let notificationSettingsProxyMock = NotificationSettingsProxyMock(with: NotificationSettingsProxyMockConfiguration())
|
let notificationSettingsProxyMock = NotificationSettingsProxyMock(with: NotificationSettingsProxyMockConfiguration())
|
||||||
|
|
||||||
notificationSettingsProxyMock.getNotificationSettingsRoomIdIsEncryptedIsOneToOneReturnValue = RoomNotificationSettingsProxyMock(with: .init(mode: .mentionsAndKeywordsOnly, isDefault: true))
|
notificationSettingsProxyMock.getNotificationSettingsRoomIdIsEncryptedIsOneToOneReturnValue = RoomNotificationSettingsProxyMock(with: .init(mode: .mentionsAndKeywordsOnly, isDefault: true))
|
||||||
|
|||||||
@@ -83,7 +83,7 @@ class RoomRolesAndPermissionsScreenViewModelTests: XCTestCase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private func setupViewModel(members: [RoomMemberProxyMock]) {
|
private func setupViewModel(members: [RoomMemberProxyMock]) {
|
||||||
roomProxy = RoomProxyMock(with: .init(members: members))
|
roomProxy = RoomProxyMock(.init(members: members))
|
||||||
viewModel = RoomRolesAndPermissionsScreenViewModel(roomProxy: roomProxy,
|
viewModel = RoomRolesAndPermissionsScreenViewModel(roomProxy: roomProxy,
|
||||||
userIndicatorController: UserIndicatorControllerMock(),
|
userIndicatorController: UserIndicatorControllerMock(),
|
||||||
analytics: ServiceLocator.shared.analytics)
|
analytics: ServiceLocator.shared.analytics)
|
||||||
|
|||||||
@@ -333,7 +333,7 @@ class RoomScreenViewModelTests: XCTestCase {
|
|||||||
MockRoomTimelineController,
|
MockRoomTimelineController,
|
||||||
NotificationCenterMock) {
|
NotificationCenterMock) {
|
||||||
let notificationCenter = NotificationCenterMock()
|
let notificationCenter = NotificationCenterMock()
|
||||||
let roomProxy = RoomProxyMock(with: .init(name: ""))
|
let roomProxy = RoomProxyMock(.init(name: ""))
|
||||||
|
|
||||||
let timelineProxy = TimelineProxyMock()
|
let timelineProxy = TimelineProxyMock()
|
||||||
timelineProxy.underlyingActions = Empty(completeImmediately: false).eraseToAnyPublisher()
|
timelineProxy.underlyingActions = Empty(completeImmediately: false).eraseToAnyPublisher()
|
||||||
@@ -371,8 +371,7 @@ class RoomScreenViewModelTests: XCTestCase {
|
|||||||
// When showing them in a timeline.
|
// When showing them in a timeline.
|
||||||
let timelineController = MockRoomTimelineController()
|
let timelineController = MockRoomTimelineController()
|
||||||
timelineController.timelineItems = [message]
|
timelineController.timelineItems = [message]
|
||||||
let viewModel = RoomScreenViewModel(roomProxy: RoomProxyMock(with: .init(name: "",
|
let viewModel = RoomScreenViewModel(roomProxy: RoomProxyMock(.init(name: "", members: [RoomMemberProxyMock.mockAlice, RoomMemberProxyMock.mockCharlie])),
|
||||||
members: [RoomMemberProxyMock.mockAlice, RoomMemberProxyMock.mockCharlie])),
|
|
||||||
timelineController: timelineController,
|
timelineController: timelineController,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
mediaPlayerProvider: MediaPlayerProviderMock(),
|
mediaPlayerProvider: MediaPlayerProviderMock(),
|
||||||
@@ -396,7 +395,7 @@ class RoomScreenViewModelTests: XCTestCase {
|
|||||||
private func makeViewModel(roomProxy: RoomProxyProtocol? = nil,
|
private func makeViewModel(roomProxy: RoomProxyProtocol? = nil,
|
||||||
focussedEventID: String? = nil,
|
focussedEventID: String? = nil,
|
||||||
timelineController: RoomTimelineControllerProtocol) -> RoomScreenViewModel {
|
timelineController: RoomTimelineControllerProtocol) -> RoomScreenViewModel {
|
||||||
RoomScreenViewModel(roomProxy: roomProxy ?? RoomProxyMock(with: .init(name: "")),
|
RoomScreenViewModel(roomProxy: roomProxy ?? RoomProxyMock(.init(name: "")),
|
||||||
focussedEventID: focussedEventID,
|
focussedEventID: focussedEventID,
|
||||||
timelineController: timelineController,
|
timelineController: timelineController,
|
||||||
mediaProvider: MockMediaProvider(),
|
mediaProvider: MockMediaProvider(),
|
||||||
|
|||||||
@@ -27,9 +27,7 @@ class SettingsScreenViewModelTests: XCTestCase {
|
|||||||
|
|
||||||
@MainActor override func setUpWithError() throws {
|
@MainActor override func setUpWithError() throws {
|
||||||
cancellables.removeAll()
|
cancellables.removeAll()
|
||||||
let userSession = MockUserSession(clientProxy: ClientProxyMock(.init(userID: "")),
|
let userSession = UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: ""))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
viewModel = SettingsScreenViewModel(userSession: userSession, appSettings: ServiceLocator.shared.settings)
|
viewModel = SettingsScreenViewModel(userSession: userSession, appSettings: ServiceLocator.shared.settings)
|
||||||
context = viewModel.context
|
context = viewModel.context
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -32,9 +32,7 @@ class StartChatScreenViewModelTests: XCTestCase {
|
|||||||
clientProxy = .init(.init(userID: ""))
|
clientProxy = .init(.init(userID: ""))
|
||||||
userDiscoveryService = UserDiscoveryServiceMock()
|
userDiscoveryService = UserDiscoveryServiceMock()
|
||||||
userDiscoveryService.searchProfilesWithReturnValue = .success([])
|
userDiscoveryService.searchProfilesWithReturnValue = .success([])
|
||||||
let userSession = MockUserSession(clientProxy: clientProxy,
|
let userSession = UserSessionMock(.init(clientProxy: clientProxy))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock())
|
|
||||||
viewModel = StartChatScreenViewModel(userSession: userSession,
|
viewModel = StartChatScreenViewModel(userSession: userSession,
|
||||||
analytics: ServiceLocator.shared.analytics,
|
analytics: ServiceLocator.shared.analytics,
|
||||||
userIndicatorController: UserIndicatorControllerMock(),
|
userIndicatorController: UserIndicatorControllerMock(),
|
||||||
|
|||||||
@@ -37,17 +37,12 @@ class UserSessionFlowCoordinatorTests: XCTestCase {
|
|||||||
cancellables.removeAll()
|
cancellables.removeAll()
|
||||||
clientProxy = ClientProxyMock(.init(userID: "hi@bob", roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded(.mockRooms)))))
|
clientProxy = ClientProxyMock(.init(userID: "hi@bob", roomSummaryProvider: RoomSummaryProviderMock(.init(state: .loaded(.mockRooms)))))
|
||||||
timelineControllerFactory = RoomTimelineControllerFactoryMock(configuration: .init())
|
timelineControllerFactory = RoomTimelineControllerFactoryMock(configuration: .init())
|
||||||
let mediaProvider = MockMediaProvider()
|
|
||||||
let voiceMessageMediaManager = VoiceMessageMediaManagerMock()
|
|
||||||
let userSession = MockUserSession(clientProxy: clientProxy,
|
|
||||||
mediaProvider: mediaProvider,
|
|
||||||
voiceMessageMediaManager: voiceMessageMediaManager)
|
|
||||||
|
|
||||||
navigationRootCoordinator = NavigationRootCoordinator()
|
navigationRootCoordinator = NavigationRootCoordinator()
|
||||||
|
|
||||||
notificationManager = NotificationManagerMock()
|
notificationManager = NotificationManagerMock()
|
||||||
|
|
||||||
userSessionFlowCoordinator = UserSessionFlowCoordinator(userSession: userSession,
|
userSessionFlowCoordinator = UserSessionFlowCoordinator(userSession: UserSessionMock(.init(clientProxy: clientProxy)),
|
||||||
navigationRootCoordinator: navigationRootCoordinator,
|
navigationRootCoordinator: navigationRootCoordinator,
|
||||||
appLockService: AppLockServiceMock(),
|
appLockService: AppLockServiceMock(),
|
||||||
bugReportService: BugReportServiceMock(),
|
bugReportService: BugReportServiceMock(),
|
||||||
|
|||||||
@@ -31,9 +31,7 @@ class WaitlistScreenViewModelTests: XCTestCase {
|
|||||||
XCTAssertNil(context.viewState.userSession, "No user session should be set on a new view model.")
|
XCTAssertNil(context.viewState.userSession, "No user session should be set on a new view model.")
|
||||||
XCTAssertTrue(context.viewState.isWaiting, "The view should start off in the waiting state.")
|
XCTAssertTrue(context.viewState.isWaiting, "The view should start off in the waiting state.")
|
||||||
|
|
||||||
viewModel.update(userSession: MockUserSession(clientProxy: ClientProxyMock(.init(userID: "@alice:matrix.org")),
|
viewModel.update(userSession: UserSessionMock(.init(clientProxy: ClientProxyMock(.init(userID: "@alice:matrix.org")))))
|
||||||
mediaProvider: MockMediaProvider(),
|
|
||||||
voiceMessageMediaManager: VoiceMessageMediaManagerMock()))
|
|
||||||
|
|
||||||
XCTAssertNotNil(context.viewState.userSession, "The user session should have been updated.")
|
XCTAssertNotNil(context.viewState.userSession, "The user session should have been updated.")
|
||||||
XCTAssertFalse(context.viewState.isWaiting, "The view should not be in the waiting state after setting a user session.")
|
XCTAssertFalse(context.viewState.isWaiting, "The view should not be in the waiting state after setting a user session.")
|
||||||
|
|||||||
Reference in New Issue
Block a user