Skip to content
Snippets Groups Projects
Commit 21c6725c authored by Dariusz Rybicki's avatar Dariusz Rybicki
Browse files

Add MessengerIsGroupChatRunning

parent 5d8bcd4a
No related branches found
No related tags found
2 merge requests!153Release 1.1.0,!148[Messenger Example] Setup group chat
import XCTestDynamicOverlay
public struct MessengerIsGroupChatRunning {
public var run: () -> Bool
public func callAsFunction() -> Bool {
run()
}
}
extension MessengerIsGroupChatRunning {
public static func live(_ env: MessengerEnvironment) -> MessengerIsGroupChatRunning {
MessengerIsGroupChatRunning { env.groupChat.get() != nil }
}
}
extension MessengerIsGroupChatRunning {
public static let unimplemented = MessengerIsGroupChatRunning(
run: XCTestDynamicOverlay.unimplemented("\(Self.self)", placeholder: false)
)
}
...@@ -51,6 +51,7 @@ public struct Messenger { ...@@ -51,6 +51,7 @@ public struct Messenger {
public var getNotificationReports: MessengerGetNotificationReports public var getNotificationReports: MessengerGetNotificationReports
public var registerGroupRequestHandler: MessengerRegisterGroupRequestHandler public var registerGroupRequestHandler: MessengerRegisterGroupRequestHandler
public var registerGroupChatProcessor: MessengerRegisterGroupChatProcessor public var registerGroupChatProcessor: MessengerRegisterGroupChatProcessor
public var isGroupChatRunning: MessengerIsGroupChatRunning
public var startGroupChat: MessengerStartGroupChat public var startGroupChat: MessengerStartGroupChat
} }
...@@ -107,6 +108,7 @@ extension Messenger { ...@@ -107,6 +108,7 @@ extension Messenger {
getNotificationReports: .live(env), getNotificationReports: .live(env),
registerGroupRequestHandler: .live(env), registerGroupRequestHandler: .live(env),
registerGroupChatProcessor: .live(env), registerGroupChatProcessor: .live(env),
isGroupChatRunning: .live(env),
startGroupChat: .live(env) startGroupChat: .live(env)
) )
} }
...@@ -164,6 +166,7 @@ extension Messenger { ...@@ -164,6 +166,7 @@ extension Messenger {
getNotificationReports: .unimplemented, getNotificationReports: .unimplemented,
registerGroupRequestHandler: .unimplemented, registerGroupRequestHandler: .unimplemented,
registerGroupChatProcessor: .unimplemented, registerGroupChatProcessor: .unimplemented,
isGroupChatRunning: .unimplemented,
startGroupChat: .unimplemented startGroupChat: .unimplemented
) )
} }
import XCTest
@testable import XXMessengerClient
final class MessengerIsGroupChatRunningTests: XCTestCase {
func testIsRunning() {
var env: MessengerEnvironment = .unimplemented
env.groupChat.get = { .unimplemented }
let isRunning: MessengerIsGroupChatRunning = .live(env)
XCTAssertTrue(isRunning())
}
func testIsNotRunning() {
var env: MessengerEnvironment = .unimplemented
env.groupChat.get = { nil }
let isRunning: MessengerIsGroupChatRunning = .live(env)
XCTAssertFalse(isRunning())
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment