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

Add E2EAddPartnerCallback functor

parent cf1ae915
No related branches found
No related tags found
2 merge requests!102Release 1.0.0,!18Update Bindings
......@@ -6,6 +6,7 @@ public struct E2E {
public var getContact: E2EGetContact
public var payloadSize: E2EPayloadSize
public var partitionSize: E2EPartitionSize
public var addPartnerCallback: E2EAddPartnerCallback
// TODO:
}
......@@ -17,7 +18,8 @@ extension E2E {
getReceptionId: .live(bindingsE2E: bindingsE2E),
getContact: .live(bindingsE2E: bindingsE2E),
payloadSize: .live(bindingsE2E: bindingsE2E),
partitionSize: .live(bindingsE2E: bindingsE2E)
partitionSize: .live(bindingsE2E: bindingsE2E),
addPartnerCallback: .live(bindingsE2E)
)
}
}
......@@ -28,6 +30,7 @@ extension E2E {
getReceptionId: .unimplemented,
getContact: .unimplemented,
payloadSize: .unimplemented,
partitionSize: .unimplemented
partitionSize: .unimplemented,
addPartnerCallback: .unimplemented
)
}
import Bindings
import XCTestDynamicOverlay
public struct E2EAddPartnerCallback {
public var run: (Data, AuthCallbacks) throws -> Cancellable
public func callAsFunction(
partnerId: Data,
callbacks: AuthCallbacks
) throws -> Cancellable {
try run(partnerId, callbacks)
}
}
extension E2EAddPartnerCallback {
public static func live(_ bindingsE2E: BindingsE2e) -> E2EAddPartnerCallback {
E2EAddPartnerCallback { partnerId, callbacks in
try bindingsE2E.addPartnerCallback(
partnerId,
cb: callbacks.makeBindingsAuthCallbacks()
)
return Cancellable {
do {
try bindingsE2E.deletePartnerCallback(partnerId)
} catch {
fatalError("BindingsE2e.deletePartnerCallback returned error: \(error)")
}
}
}
}
}
extension E2EAddPartnerCallback {
public static let unimplemented = E2EAddPartnerCallback(
run: XCTUnimplemented("\(Self.self)")
)
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment