From 4b44419d2e5f9d5d94b4318dbfd87de6f3378633 Mon Sep 17 00:00:00 2001 From: Dariusz Rybicki <dariusz@elixxir.io> Date: Fri, 28 Oct 2022 10:53:11 +0200 Subject: [PATCH] Add CMixIsReady function wrapper --- Sources/XXClient/CMix/CMix.swift | 3 +++ .../XXClient/CMix/Functions/CMixIsReady.swift | 24 +++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 Sources/XXClient/CMix/Functions/CMixIsReady.swift diff --git a/Sources/XXClient/CMix/CMix.swift b/Sources/XXClient/CMix/CMix.swift index 2a04a2d8..4571f0db 100644 --- a/Sources/XXClient/CMix/CMix.swift +++ b/Sources/XXClient/CMix/CMix.swift @@ -5,6 +5,7 @@ public struct CMix { public var getReceptionRegistrationValidationSignature: CMixGetReceptionRegistrationValidationSignature public var makeReceptionIdentity: CMixMakeReceptionIdentity public var isHealthy: CMixIsHealthy + public var isReady: CMixIsReady public var getNodeRegistrationStatus: CMixGetNodeRegistrationStatus public var changeNumberOfNodeRegistrations: CMixChangeNumberOfNodeRegistrations public var pauseNodeRegistrations: CMixPauseNodeRegistrations @@ -27,6 +28,7 @@ extension CMix { getReceptionRegistrationValidationSignature: .live(bindingsCMix), makeReceptionIdentity: .live(bindingsCMix), isHealthy: .live(bindingsCMix), + isReady: .live(bindingsCMix), getNodeRegistrationStatus: .live(bindingsCMix), changeNumberOfNodeRegistrations: .live(bindingsCMix), pauseNodeRegistrations: .live(bindingsCMix), @@ -50,6 +52,7 @@ extension CMix { getReceptionRegistrationValidationSignature: .unimplemented, makeReceptionIdentity: .unimplemented, isHealthy: .unimplemented, + isReady: .unimplemented, getNodeRegistrationStatus: .unimplemented, changeNumberOfNodeRegistrations: .unimplemented, pauseNodeRegistrations: .unimplemented, diff --git a/Sources/XXClient/CMix/Functions/CMixIsReady.swift b/Sources/XXClient/CMix/Functions/CMixIsReady.swift new file mode 100644 index 00000000..14e70e42 --- /dev/null +++ b/Sources/XXClient/CMix/Functions/CMixIsReady.swift @@ -0,0 +1,24 @@ +import Bindings +import XCTestDynamicOverlay + +public struct CMixIsReady { + public var run: (Double) throws -> IsReadyInfo + + public func callAsFunction(percent: Double) throws -> IsReadyInfo { + try run(percent) + } +} + +extension CMixIsReady { + public static func live(_ bindingsCMix: BindingsCmix) -> CMixIsReady { + CMixIsReady { percent in + try IsReadyInfo.decode(try bindingsCMix.isReady(percent)) + } + } +} + +extension CMixIsReady { + public static let unimplemented = CMixIsReady( + run: XCTUnimplemented("\(Self.self)") + ) +} -- GitLab