diff --git a/Sources/ElixxirDAppsSDK/E2E.swift b/Sources/ElixxirDAppsSDK/E2E.swift index 864ac0979791ab39b195627c35d4719a4f542230..6b83d5684cac203c7fe8029d9cba50e5558f926e 100644 --- a/Sources/ElixxirDAppsSDK/E2E.swift +++ b/Sources/ElixxirDAppsSDK/E2E.swift @@ -18,6 +18,7 @@ public struct E2E { public var callAllReceivedRequests: E2ECallAllReceivedRequests public var getReceivedRequest: E2EGetReceivedRequest public var deleteRequest: E2EDeleteRequest + public var verifyOwnership: E2EVerifyOwnership public var send: E2ESend // TODO: @@ -43,6 +44,7 @@ extension E2E { callAllReceivedRequests: .live(bindingsE2E), getReceivedRequest: .live(bindingsE2E), deleteRequest: .live(bindingsE2E), + verifyOwnership: .live(bindingsE2E), send: .live(bindingsE2E) ) } @@ -67,6 +69,7 @@ extension E2E { callAllReceivedRequests: .unimplemented, getReceivedRequest: .unimplemented, deleteRequest: .unimplemented, + verifyOwnership: .unimplemented, send: .unimplemented ) } diff --git a/Sources/ElixxirDAppsSDK/E2EVerifyOwnership.swift b/Sources/ElixxirDAppsSDK/E2EVerifyOwnership.swift new file mode 100644 index 0000000000000000000000000000000000000000..e6011bcab9cba7cd0f19b048af4f4f6d0ca7629e --- /dev/null +++ b/Sources/ElixxirDAppsSDK/E2EVerifyOwnership.swift @@ -0,0 +1,35 @@ +import Bindings +import XCTestDynamicOverlay + +public struct E2EVerifyOwnership { + public var run: (Data, Data, Int) throws -> Bool + + public func callAsFunction( + receivedContact: Data, + verifiedContact: Data, + e2eId: Int + ) throws -> Bool { + try run(receivedContact, verifiedContact, e2eId) + } +} + +extension E2EVerifyOwnership { + public static func live(_ bindingsE2E: BindingsE2e) -> E2EVerifyOwnership { + E2EVerifyOwnership { receivedContact, verifiedContact, e2eId in + var result: ObjCBool = false + try bindingsE2E.verifyOwnership( + receivedContact, + verifiedContact: verifiedContact, + e2eId: e2eId, + ret0_: &result + ) + return result.boolValue + } + } +} + +extension E2EVerifyOwnership { + public static let unimplemented = E2EVerifyOwnership( + run: XCTUnimplemented("\(Self.self)") + ) +}