diff --git a/Sources/XXMessengerClient/Messenger/Functions/MessengerVerifyContact.swift b/Sources/XXMessengerClient/Messenger/Functions/MessengerVerifyContact.swift new file mode 100644 index 0000000000000000000000000000000000000000..3d3d40e30c3f9dfc5a347fd759b8b61013480657 --- /dev/null +++ b/Sources/XXMessengerClient/Messenger/Functions/MessengerVerifyContact.swift @@ -0,0 +1,25 @@ +import XCTestDynamicOverlay +import XXClient + +public struct MessengerVerifyContact { + public var run: (Contact) throws -> Bool + + public func callAsFunction(_ contact: Contact) throws -> Bool { + try run(contact) + } +} + +extension MessengerVerifyContact { + public static func live(_ env: MessengerEnvironment) -> MessengerVerifyContact { + MessengerVerifyContact { contact in + // TODO: + return false + } + } +} + +extension MessengerVerifyContact { + public static let unimplemented = MessengerVerifyContact( + run: XCTUnimplemented("\(Self.self)") + ) +} diff --git a/Sources/XXMessengerClient/Messenger/Messenger.swift b/Sources/XXMessengerClient/Messenger/Messenger.swift index cc48651c730cd7cce79aa7fda28265d4fa6ea5a1..e2d31f69350c83022d18d8b5dd3698eddff59255 100644 --- a/Sources/XXMessengerClient/Messenger/Messenger.swift +++ b/Sources/XXMessengerClient/Messenger/Messenger.swift @@ -21,6 +21,7 @@ public struct Messenger { public var destroy: MessengerDestroy public var searchUsers: MessengerSearchUsers public var registerForNotifications: MessengerRegisterForNotifications + public var verifyContact: MessengerVerifyContact } extension Messenger { @@ -45,7 +46,8 @@ extension Messenger { waitForNodes: .live(env), destroy: .live(env), searchUsers: .live(env), - registerForNotifications: .live(env) + registerForNotifications: .live(env), + verifyContact: .live(env) ) } } @@ -71,6 +73,7 @@ extension Messenger { waitForNodes: .unimplemented, destroy: .unimplemented, searchUsers: .unimplemented, - registerForNotifications: .unimplemented + registerForNotifications: .unimplemented, + verifyContact: .unimplemented ) } diff --git a/Tests/XXMessengerClientTests/Messenger/Functions/MessengerVerifyContactTests.swift b/Tests/XXMessengerClientTests/Messenger/Functions/MessengerVerifyContactTests.swift new file mode 100644 index 0000000000000000000000000000000000000000..255a722083460d67da8db3ee037fa9fe7f4b075e --- /dev/null +++ b/Tests/XXMessengerClientTests/Messenger/Functions/MessengerVerifyContactTests.swift @@ -0,0 +1,16 @@ +import CustomDump +import XCTest +import XXClient +@testable import XXMessengerClient + +final class MessengerVerifyContactTests: XCTestCase { + func testVerify() throws { + var env: MessengerEnvironment = .unimplemented + let verify: MessengerVerifyContact = .live(env) + let contact = Contact.unimplemented("data".data(using: .utf8)!) + + let result = try verify(contact) + + XCTAssertNoDifference(result, false) + } +}