From d0006cd916be314faae0381719a6fefa050b1144 Mon Sep 17 00:00:00 2001 From: Dariusz Rybicki <dariusz@elixxir.io> Date: Fri, 9 Sep 2022 13:27:01 +0200 Subject: [PATCH] Add MessengerVerifyContact function --- .../Functions/MessengerVerifyContact.swift | 25 +++++++++++++++++++ .../Messenger/Messenger.swift | 7 ++++-- .../MessengerVerifyContactTests.swift | 16 ++++++++++++ 3 files changed, 46 insertions(+), 2 deletions(-) create mode 100644 Sources/XXMessengerClient/Messenger/Functions/MessengerVerifyContact.swift create mode 100644 Tests/XXMessengerClientTests/Messenger/Functions/MessengerVerifyContactTests.swift diff --git a/Sources/XXMessengerClient/Messenger/Functions/MessengerVerifyContact.swift b/Sources/XXMessengerClient/Messenger/Functions/MessengerVerifyContact.swift new file mode 100644 index 00000000..3d3d40e3 --- /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 cc48651c..e2d31f69 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 00000000..255a7220 --- /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) + } +} -- GitLab