diff --git a/Sources/ElixxirDAppsSDK/Cmix.swift b/Sources/ElixxirDAppsSDK/Cmix.swift index 2e8fd4afd37667b6bcd439285c8af620488b149a..d98031d61ece05d21d731be6d0cc7df31918a4a5 100644 --- a/Sources/ElixxirDAppsSDK/Cmix.swift +++ b/Sources/ElixxirDAppsSDK/Cmix.swift @@ -7,6 +7,7 @@ public struct Cmix { public var hasRunningProcesses: CmixHasRunningProcesses public var networkFollowerStatus: CmixNetworkFollowerStatus public var startNetworkFollower: CmixStartNetworkFollower + public var stopNetworkFollower: CmixStopNetworkFollower } extension Cmix { @@ -17,7 +18,8 @@ extension Cmix { isHealthy: .live(bindingsCmix), hasRunningProcesses: .live(bindingsCmix), networkFollowerStatus: .live(bindingsCmix), - startNetworkFollower: .live(bindingsCmix) + startNetworkFollower: .live(bindingsCmix), + stopNetworkFollower: .live(bindingsCmix) ) } } @@ -29,6 +31,7 @@ extension Cmix { isHealthy: .unimplemented, hasRunningProcesses: .unimplemented, networkFollowerStatus: .unimplemented, - startNetworkFollower: .unimplemented + startNetworkFollower: .unimplemented, + stopNetworkFollower: .unimplemented ) } diff --git a/Sources/ElixxirDAppsSDK/CmixStopNetworkFollower.swift b/Sources/ElixxirDAppsSDK/CmixStopNetworkFollower.swift new file mode 100644 index 0000000000000000000000000000000000000000..140a415ee5f2a7894387f8227835eae34d7e2cb0 --- /dev/null +++ b/Sources/ElixxirDAppsSDK/CmixStopNetworkFollower.swift @@ -0,0 +1,22 @@ +import Bindings +import XCTestDynamicOverlay + +public struct CmixStopNetworkFollower { + public var run: () throws -> Void + + public func callAsFunction() throws { + try run() + } +} + +extension CmixStopNetworkFollower { + public static func live(_ bindingsCmix: BindingsCmix) -> CmixStopNetworkFollower { + CmixStopNetworkFollower(run: bindingsCmix.stopNetworkFollower) + } +} + +extension CmixStopNetworkFollower { + public static let unimplemented = CmixStopNetworkFollower( + run: XCTUnimplemented("\(Self.self)") + ) +} diff --git a/Sources/ElixxirDAppsSDK/Legacy/NetworkFollowerStopper.swift b/Sources/ElixxirDAppsSDK/Legacy/NetworkFollowerStopper.swift deleted file mode 100644 index 1b8ed6ab582430d231fdf01900941aba00e0d42d..0000000000000000000000000000000000000000 --- a/Sources/ElixxirDAppsSDK/Legacy/NetworkFollowerStopper.swift +++ /dev/null @@ -1,24 +0,0 @@ -import Bindings - -public struct NetworkFollowerStopper { - public var stop: () throws -> Void - - public func callAsFunction() throws { - try stop() - } -} - -extension NetworkFollowerStopper { - public static func live(bindingsClient: BindingsCmix) -> NetworkFollowerStopper { - NetworkFollowerStopper(stop: bindingsClient.stopNetworkFollower) - } -} - -#if DEBUG -extension NetworkFollowerStopper { - public static let failing = NetworkFollowerStopper { - struct NotImplemented: Error {} - throw NotImplemented() - } -} -#endif