From feb55df2f94674374bfbb6f54a6798c492f705d2 Mon Sep 17 00:00:00 2001 From: Antonio Posabella <16580320+Bellaposa@users.noreply.github.com> Date: Sat, 28 Aug 2021 15:17:11 +0200 Subject: [PATCH 1/3] Add CoreImage conformance --- .../CustomDump/Conformances/CoreImage.swift | 132 ++++++++++++++++++ .../Conformances/CoreImageTests.swift | 40 ++++++ 2 files changed, 172 insertions(+) create mode 100644 Sources/CustomDump/Conformances/CoreImage.swift create mode 100644 Tests/CustomDumpTests/Conformances/CoreImageTests.swift diff --git a/Sources/CustomDump/Conformances/CoreImage.swift b/Sources/CustomDump/Conformances/CoreImage.swift new file mode 100644 index 0000000..7c4c64f --- /dev/null +++ b/Sources/CustomDump/Conformances/CoreImage.swift @@ -0,0 +1,132 @@ +#if canImport(CoreImage) +import CoreImage + +@available(watchOS, unavailable) +extension CIQRCodeDescriptor.ErrorCorrectionLevel: CustomDumpStringConvertible { + public var customDumpDescription: String { + switch self { + case .levelL: + return "CIQRCodeDescriptor.ErrorCorrectionLevel.levelL" + case .levelM: + return "CIQRCodeDescriptor.ErrorCorrectionLevel.levelM" + case .levelQ: + return "CIQRCodeDescriptor.ErrorCorrectionLevel.levelQ" + case .levelH: + return "CIQRCodeDescriptor.ErrorCorrectionLevel.levelH" + @unknown default: + return "CIQRCodeDescriptor.ErrorCorrectionLevel.(@unknown default, rawValue: \(self.rawValue))" + } + } +} + + +extension CIDataMatrixCodeDescriptor.ECCVersion: CustomDumpStringConvertible { + public var customDumpDescription: String { + switch self { + + case .v000: + return "CIDataMatrixCodeDescriptor.ECCVersion.v000" + case .v050: + return "CIDataMatrixCodeDescriptor.ECCVersion.v050" + case .v080: + return "CIDataMatrixCodeDescriptor.ECCVersion.v080" + case .v100: + return "CIDataMatrixCodeDescriptor.ECCVersion.v100" + case .v140: + return "CIDataMatrixCodeDescriptor.ECCVersion.v140" + case .v200: + return "CIDataMatrixCodeDescriptor.ECCVersion.v200" + @unknown default: + return "CIDataMatrixCodeDescriptor.ECCVersion.(@unknown default, rawValue: \(self.rawValue))" + } + } +} + +extension CIContextOption: CustomDumpStringConvertible { + public var customDumpDescription: String { + switch self { + default: + return "CIContextOption.(default, rawValue: \(self.rawValue))" + } + } +} + +extension CIImageRepresentationOption: CustomDumpStringConvertible { + public var customDumpDescription: String { + switch self { + default: + return "CIImageRepresentationOption.(default, rawValue: \(self.rawValue))" + } + } +} + +extension CIFormat: CustomDumpStringConvertible { + public var customDumpDescription: String { + switch self { + default: + return "CIFormat.(default, rawValue: \(self.rawValue))" + } + } +} + +extension CIImageOption: CustomDumpStringConvertible { + public var customDumpDescription: String { + switch self { + default: + return "CIImageOption.(default, rawValue: \(self.rawValue))" + } + } +} + +extension CIImageAutoAdjustmentOption: CustomDumpStringConvertible { + public var customDumpDescription: String { + switch self { + default: + return "CIImageAutoAdjustmentOption.(default, rawValue: \(self.rawValue))" + } + } +} + +extension CIKernel: CustomDumpStringConvertible { + public var customDumpDescription: String { + switch self { + default: + return "CIKernel.(default, rawValue: \(self))" + } + } +} + +extension CGRect: CustomDumpStringConvertible { + public var customDumpDescription: String { + switch self { + default: + return "CGRect.(default, rawValue: \(self))" + } + } +} + +extension CIRAWFilterOption: CustomDumpStringConvertible { + public var customDumpDescription: String { + switch self { + default: + return "CIRAWFilterOption.(default, rawValue: \(self.rawValue))" + } + } +} + +extension CIRenderDestinationAlphaMode: CustomDumpStringConvertible { + public var customDumpDescription: String { + switch self { + case .none: + return "CIRenderDestinationAlphaMode.none" + case .premultiplied: + return "CIRenderDestinationAlphaMode.premultiplied" + case .unpremultiplied: + return "CIRenderDestinationAlphaMode.unpremultiplied" + @unknown default: + return "CIRenderDestinationAlphaMode.(@unknown default, rawValue: \(self.rawValue)" + } + } +} + +#endif diff --git a/Tests/CustomDumpTests/Conformances/CoreImageTests.swift b/Tests/CustomDumpTests/Conformances/CoreImageTests.swift new file mode 100644 index 0000000..585d0c7 --- /dev/null +++ b/Tests/CustomDumpTests/Conformances/CoreImageTests.swift @@ -0,0 +1,40 @@ +#if canImport(CoreImage) +import CoreImage +import CustomDump +import XCTest + + +final class CoreImageTests: XCTestCase { + func testCIQRCodeDescriptor() { + var dump = "" + customDump( + [.levelH, .levelL, .levelM, .levelQ] as [CIQRCodeDescriptor.ErrorCorrectionLevel], + to: &dump + ) + + XCTAssertEqual( + dump, + """ + [ + [0]: CIQRCodeDescriptor.ErrorCorrectionLevel.levelH, + [1]: CIQRCodeDescriptor.ErrorCorrectionLevel.levelL, + [2]: CIQRCodeDescriptor.ErrorCorrectionLevel.levelM, + [3]: CIQRCodeDescriptor.ErrorCorrectionLevel.levelQ + ] + """ + ) + + dump = "" + customDump( + CIQRCodeDescriptor.ErrorCorrectionLevel.levelH, + to: &dump + ) + XCTAssertEqual( + dump, + """ + CIQRCodeDescriptor.ErrorCorrectionLevel.levelH + """ + ) + } +} +#endif From 20bcdb64577496ef96fcbfc8d6835f0a96916e38 Mon Sep 17 00:00:00 2001 From: APosa <16580320+Bellaposa@users.noreply.github.com> Date: Sun, 29 Aug 2021 12:23:16 +0200 Subject: [PATCH 2/3] Update Sources/CustomDump/Conformances/CoreImage.swift Co-authored-by: Stephen Celis --- Sources/CustomDump/Conformances/CoreImage.swift | 9 --------- 1 file changed, 9 deletions(-) diff --git a/Sources/CustomDump/Conformances/CoreImage.swift b/Sources/CustomDump/Conformances/CoreImage.swift index 7c4c64f..3692178 100644 --- a/Sources/CustomDump/Conformances/CoreImage.swift +++ b/Sources/CustomDump/Conformances/CoreImage.swift @@ -105,15 +105,6 @@ extension CGRect: CustomDumpStringConvertible { } } -extension CIRAWFilterOption: CustomDumpStringConvertible { - public var customDumpDescription: String { - switch self { - default: - return "CIRAWFilterOption.(default, rawValue: \(self.rawValue))" - } - } -} - extension CIRenderDestinationAlphaMode: CustomDumpStringConvertible { public var customDumpDescription: String { switch self { From cea1dfb22e91d94a175aa1e89f6ecb073c77bf2e Mon Sep 17 00:00:00 2001 From: APosa <16580320+Bellaposa@users.noreply.github.com> Date: Sun, 29 Aug 2021 12:38:21 +0200 Subject: [PATCH 3/3] Update CoreImage.swift --- .../CustomDump/Conformances/CoreImage.swift | 62 ------------------- 1 file changed, 62 deletions(-) diff --git a/Sources/CustomDump/Conformances/CoreImage.swift b/Sources/CustomDump/Conformances/CoreImage.swift index 3692178..5b3c3af 100644 --- a/Sources/CustomDump/Conformances/CoreImage.swift +++ b/Sources/CustomDump/Conformances/CoreImage.swift @@ -42,68 +42,6 @@ extension CIDataMatrixCodeDescriptor.ECCVersion: CustomDumpStringConvertible { } } -extension CIContextOption: CustomDumpStringConvertible { - public var customDumpDescription: String { - switch self { - default: - return "CIContextOption.(default, rawValue: \(self.rawValue))" - } - } -} - -extension CIImageRepresentationOption: CustomDumpStringConvertible { - public var customDumpDescription: String { - switch self { - default: - return "CIImageRepresentationOption.(default, rawValue: \(self.rawValue))" - } - } -} - -extension CIFormat: CustomDumpStringConvertible { - public var customDumpDescription: String { - switch self { - default: - return "CIFormat.(default, rawValue: \(self.rawValue))" - } - } -} - -extension CIImageOption: CustomDumpStringConvertible { - public var customDumpDescription: String { - switch self { - default: - return "CIImageOption.(default, rawValue: \(self.rawValue))" - } - } -} - -extension CIImageAutoAdjustmentOption: CustomDumpStringConvertible { - public var customDumpDescription: String { - switch self { - default: - return "CIImageAutoAdjustmentOption.(default, rawValue: \(self.rawValue))" - } - } -} - -extension CIKernel: CustomDumpStringConvertible { - public var customDumpDescription: String { - switch self { - default: - return "CIKernel.(default, rawValue: \(self))" - } - } -} - -extension CGRect: CustomDumpStringConvertible { - public var customDumpDescription: String { - switch self { - default: - return "CGRect.(default, rawValue: \(self))" - } - } -} extension CIRenderDestinationAlphaMode: CustomDumpStringConvertible { public var customDumpDescription: String {