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

Add CmixStopNetworkFollower functor

parent 5c526ab8
No related branches found
No related tags found
2 merge requests!102Release 1.0.0,!18Update Bindings
......@@ -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
)
}
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)")
)
}
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
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