Create sessions through the user session manager

Sign-in now creates and stores its session through the
UserSessionManagerProtocol rather than the UserSessionStore, so the
AppCoordinator no longer holds the store.

- The manager forwards clientSessionDelegate and
  userSession(for:sessionDirectories:passphrase:) to its store. As with
  restoring, the new session isn't registered until the AppCoordinator
  adds it.
- AuthenticationService takes the manager, for both sign-in and soft
  logout.
- The store mock's configuration moves to the manager mock.
This commit is contained in:
Mauro Romito
2026-10-08 21:09:09 +02:00
committed by Mauro
parent 60db364436
commit 5792a8ba5c
11 changed files with 91 additions and 30 deletions
@@ -363,7 +363,7 @@ struct ServerSelectionScreenViewModelTests {
client = factoryConfiguration.homeserverClients["matrix.org"]
clientFactory = ClientFactoryMock(factoryConfiguration)
service = AuthenticationService(userSessionStore: UserSessionStoreMock(.init()),
service = AuthenticationService(userSessionManager: UserSessionManagerMock(.init()),
encryptionKeyProvider: EncryptionKeyProvider(),
classicAppManager: nil,
clientFactory: clientFactory,