From f6a72e84654bfa129bf243585c009502304133a0 Mon Sep 17 00:00:00 2001 From: Javier Cicchelli Date: Sun, 17 Mar 2024 23:00:30 +0100 Subject: [PATCH] Improved the MockURLProtocol class in the Foundation library to support optional object in its Response struct. --- .../Foundation/Kit/Sources/Classes/MockURLProtocol.swift | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Libraries/Foundation/Kit/Sources/Classes/MockURLProtocol.swift b/Libraries/Foundation/Kit/Sources/Classes/MockURLProtocol.swift index 805cc8d..18cdb72 100644 --- a/Libraries/Foundation/Kit/Sources/Classes/MockURLProtocol.swift +++ b/Libraries/Foundation/Kit/Sources/Classes/MockURLProtocol.swift @@ -66,12 +66,12 @@ extension MockURLProtocol { // MARK: Constants public let statusCode: Int - public let object: any Encodable + public let object: (any Encodable)? // MARK: Initialisers public init( statusCode: Int, - object: any Codable + object: (any Codable)? = nil ) { self.statusCode = statusCode self.object = object @@ -80,7 +80,9 @@ extension MockURLProtocol { // MARK: Computed var data: Data? { get throws { - try JSONEncoder().encode(object) + guard let object else { return nil } + + return try JSONEncoder.default.encode(object) } }