diff --git a/Sources/ElixxirDAppsSDK/Cmix.swift b/Sources/ElixxirDAppsSDK/Cmix.swift index c9518d30ee1c426d48706cad13282924b7ac616e..092cff8b0807a89be2be710fcb1020578462deaf 100644 --- a/Sources/ElixxirDAppsSDK/Cmix.swift +++ b/Sources/ElixxirDAppsSDK/Cmix.swift @@ -9,6 +9,7 @@ public struct Cmix { public var networkFollowerStatus: CmixNetworkFollowerStatus public var startNetworkFollower: CmixStartNetworkFollower public var stopNetworkFollower: CmixStopNetworkFollower + public var waitForNetwork: CmixWaitForNetwork } extension Cmix { @@ -21,7 +22,8 @@ extension Cmix { hasRunningProcesses: .live(bindingsCmix), networkFollowerStatus: .live(bindingsCmix), startNetworkFollower: .live(bindingsCmix), - stopNetworkFollower: .live(bindingsCmix) + stopNetworkFollower: .live(bindingsCmix), + waitForNetwork: .live(bindingsCmix) ) } } @@ -35,6 +37,7 @@ extension Cmix { hasRunningProcesses: .unimplemented, networkFollowerStatus: .unimplemented, startNetworkFollower: .unimplemented, - stopNetworkFollower: .unimplemented + stopNetworkFollower: .unimplemented, + waitForNetwork: .unimplemented ) } diff --git a/Sources/ElixxirDAppsSDK/CmixWaitForNetwork.swift b/Sources/ElixxirDAppsSDK/CmixWaitForNetwork.swift new file mode 100644 index 0000000000000000000000000000000000000000..3174c69f0750e8c19ddc5330354e1682909c8a17 --- /dev/null +++ b/Sources/ElixxirDAppsSDK/CmixWaitForNetwork.swift @@ -0,0 +1,22 @@ +import Bindings +import XCTestDynamicOverlay + +public struct CmixWaitForNetwork { + public var run: (Int) -> Bool + + public func callAsFunction(timeoutMS: Int) -> Bool { + run(timeoutMS) + } +} + +extension CmixWaitForNetwork { + public static func live(_ bindingsCmix: BindingsCmix) -> CmixWaitForNetwork { + CmixWaitForNetwork(run: bindingsCmix.wait(forNetwork:)) + } +} + +extension CmixWaitForNetwork { + public static let unimplemented = CmixWaitForNetwork( + run: XCTUnimplemented("\(Self.self)") + ) +} diff --git a/Sources/ElixxirDAppsSDK/Legacy/NetworkWaiter.swift b/Sources/ElixxirDAppsSDK/Legacy/NetworkWaiter.swift deleted file mode 100644 index 4782ab90c62cc6fd06c8d42d9b2842c1f790611d..0000000000000000000000000000000000000000 --- a/Sources/ElixxirDAppsSDK/Legacy/NetworkWaiter.swift +++ /dev/null @@ -1,25 +0,0 @@ -import Bindings - -public struct NetworkWaiter { - public var wait: (_ timeoutMS: Int) -> Bool - - public func callAsFunction(timeoutMS: Int) -> Bool { - wait(timeoutMS) - } -} - -extension NetworkWaiter { - public static func live(bindingsClient: BindingsCmix) -> NetworkWaiter { - NetworkWaiter { timeoutMS in - bindingsClient.wait(forNetwork: timeoutMS) - } - } -} - -#if DEBUG -extension NetworkWaiter { - public static let failing = NetworkWaiter { _ in - fatalError("Not implemented") - } -} -#endif