import XXClient import XCTestDynamicOverlay public struct MessengerConnect { public enum Error: Swift.Error, Equatable { case notLoaded } public var run: () throws -> Void public func callAsFunction() throws { try run() } } extension MessengerConnect { public static func live(_ env: MessengerEnvironment) -> MessengerConnect { MessengerConnect { guard let cMix = env.cMix() else { throw Error.notLoaded } env.e2e.set(try env.login( cMixId: cMix.getId(), authCallbacks: env.authCallbacks.registered(), identity: try cMix.makeLegacyReceptionIdentity(), e2eParamsJSON: env.getE2EParams() )) } } } extension MessengerConnect { public static let unimplemented = MessengerConnect( run: XCTUnimplemented("\(Self.self)") ) }