From 1deb820e10135ccce571f8f83ede5011dc50c298 Mon Sep 17 00:00:00 2001 From: Dariusz Rybicki <dariusz@elixxir.io> Date: Wed, 10 Aug 2022 19:38:29 +0100 Subject: [PATCH] Wrap DummyTraffic object and functors --- .../DummyTraffic/DummyTraffic.swift | 22 +++++++++++++++++++ .../Functors/DummyTrafficGetStatus.swift | 22 +++++++++++++++++++ .../Functors/DummyTrafficSetStatus.swift | 22 +++++++++++++++++++ 3 files changed, 66 insertions(+) create mode 100644 Sources/ElixxirDAppsSDK/DummyTraffic/DummyTraffic.swift create mode 100644 Sources/ElixxirDAppsSDK/DummyTraffic/Functors/DummyTrafficGetStatus.swift create mode 100644 Sources/ElixxirDAppsSDK/DummyTraffic/Functors/DummyTrafficSetStatus.swift diff --git a/Sources/ElixxirDAppsSDK/DummyTraffic/DummyTraffic.swift b/Sources/ElixxirDAppsSDK/DummyTraffic/DummyTraffic.swift new file mode 100644 index 00000000..4c35ed48 --- /dev/null +++ b/Sources/ElixxirDAppsSDK/DummyTraffic/DummyTraffic.swift @@ -0,0 +1,22 @@ +import Bindings + +public struct DummyTraffic { + public var getStatus: DummyTrafficGetStatus + public var setStatus: DummyTrafficSetStatus +} + +extension DummyTraffic { + public static func live(_ bindingsDummyTraffic: BindingsDummyTraffic) -> DummyTraffic { + DummyTraffic( + getStatus: .live(bindingsDummyTraffic), + setStatus: .live(bindingsDummyTraffic) + ) + } +} + +extension DummyTraffic { + public static let unimplemented = DummyTraffic( + getStatus: .unimplemented, + setStatus: .unimplemented + ) +} diff --git a/Sources/ElixxirDAppsSDK/DummyTraffic/Functors/DummyTrafficGetStatus.swift b/Sources/ElixxirDAppsSDK/DummyTraffic/Functors/DummyTrafficGetStatus.swift new file mode 100644 index 00000000..6d93a7bd --- /dev/null +++ b/Sources/ElixxirDAppsSDK/DummyTraffic/Functors/DummyTrafficGetStatus.swift @@ -0,0 +1,22 @@ +import Bindings +import XCTestDynamicOverlay + +public struct DummyTrafficGetStatus { + public var run: () -> Bool + + public func callAsFunction() -> Bool { + run() + } +} + +extension DummyTrafficGetStatus { + public static func live(_ bindingsDummyTraffic: BindingsDummyTraffic) -> DummyTrafficGetStatus { + DummyTrafficGetStatus(run: bindingsDummyTraffic.getStatus) + } +} + +extension DummyTrafficGetStatus { + public static let unimplemented = DummyTrafficGetStatus( + run: XCTUnimplemented("\(Self.self)") + ) +} diff --git a/Sources/ElixxirDAppsSDK/DummyTraffic/Functors/DummyTrafficSetStatus.swift b/Sources/ElixxirDAppsSDK/DummyTraffic/Functors/DummyTrafficSetStatus.swift new file mode 100644 index 00000000..c3c99801 --- /dev/null +++ b/Sources/ElixxirDAppsSDK/DummyTraffic/Functors/DummyTrafficSetStatus.swift @@ -0,0 +1,22 @@ +import Bindings +import XCTestDynamicOverlay + +public struct DummyTrafficSetStatus { + public var run: (Bool) throws -> Void + + public func callAsFunction(_ status: Bool) throws { + try run(status) + } +} + +extension DummyTrafficSetStatus { + public static func live(_ bindingsDummyTraffic: BindingsDummyTraffic) -> DummyTrafficSetStatus { + DummyTrafficSetStatus(run: bindingsDummyTraffic.setStatus) + } +} + +extension DummyTrafficSetStatus { + public static let unimplemented = DummyTrafficSetStatus( + run: XCTUnimplemented("\(Self.self)") + ) +} -- GitLab