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

Add InitFileTransfer functor

parent de7b003a
No related branches found
No related tags found
Loading
import Bindings
import XCTestDynamicOverlay
public struct InitFileTransfer {
public var run: (Int, Data, Data, ReceiveFileCallback) throws -> FileTransfer
public func callAsFunction(
e2eId: Int,
e2eFileTransferParamsJSON: Data,
fileTransferParamsJSON: Data,
callback: ReceiveFileCallback
) throws -> FileTransfer {
try run(e2eId, e2eFileTransferParamsJSON, fileTransferParamsJSON, callback)
}
}
extension InitFileTransfer {
public static let live = InitFileTransfer {
e2eId, e2eFileTransferParamsJSON, fileTransferParamsJSON, callback in
var error: NSError?
let bindingsFileTransfer = BindingsInitFileTransfer(
e2eId,
callback.makeBindingsReceiveFileCallback(),
e2eFileTransferParamsJSON,
fileTransferParamsJSON,
&error
)
if let error = error {
throw error
}
guard let bindingsFileTransfer = bindingsFileTransfer else {
fatalError("BindingsInitFileTransfer returned `nil` without providing error")
}
return .live(bindingsFileTransfer)
}
}
extension InitFileTransfer {
public static let unimplemented = InitFileTransfer(
run: XCTUnimplemented("\(Self.self)")
)
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment