bugfix/communications (#8)

This PR contains the work done to add a missing public initialiser to the `MockURLRequest` struct of the `Communications` library. In addition, it also implements the `gmt` static property for the `TimeZone+Zone` extension included in the `Core` library.

Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Reviewed-on: #8
This commit is contained in:
Javier Cicchelli 2023-04-19 14:17:15 +00:00
parent d8163ab0de
commit 2ba3e33a0e
2 changed files with 25 additions and 0 deletions

View File

@ -17,6 +17,7 @@ public class MockURLProtocol: URLProtocol {
// MARK: Properties // MARK: Properties
/// The dictionary in which the mock requests with its respective mock responses will be injected.
public static var mockData: [MockURLRequest: MockURLResponse] = [:] public static var mockData: [MockURLRequest: MockURLResponse] = [:]
// MARK: Functions // MARK: Functions
@ -75,8 +76,22 @@ public class MockURLProtocol: URLProtocol {
/// This model includes the data to be injected into an specific URL at the time of mocking its request. /// This model includes the data to be injected into an specific URL at the time of mocking its request.
public struct MockURLRequest: Hashable { public struct MockURLRequest: Hashable {
// MARK: Properties
public let method: HTTPRequestMethod public let method: HTTPRequestMethod
public let url: URL public let url: URL
// MARK: Initialisers
public init(
method: HTTPRequestMethod,
url: URL
) {
self.method = method
self.url = url
}
} }
/// This model includes the data to be injected into an specific URL at the time of mocking its response. /// This model includes the data to be injected into an specific URL at the time of mocking its response.

View File

@ -0,0 +1,10 @@
import Foundation
public extension TimeZone {
// MARK: Zones
/// Greenwich Mean Time or UTC+0
static let gmt = TimeZone(secondsFromGMT: 0)
}