Skip to content

Commit 855420f

Browse files
committed
Add unknownMessageTypeError
1 parent 90f5d1c commit 855420f

File tree

1 file changed

+17
-4
lines changed

1 file changed

+17
-4
lines changed

Sources/ObservableWebSocketClient/Model/CodableWebSocketMessage/CodableWebSocketMessage+Codable.swift

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,7 @@ public extension CodableWebSocketMessage {
2525
let messageData = try container.decode(Data.self, forKey: .messageData)
2626
message = .data(messageData)
2727
default:
28-
let localizedDescription = "Unknown message type"
29-
let codableError = CodableError(localizedDescription: localizedDescription)
28+
let codableError = CodableWebSocketMessage.unknownMessageTypeError(isEncoding: false)
3029
throw ObservableWebSocketClientError.decodingMessage(codableError)
3130
}
3231
}
@@ -42,9 +41,23 @@ public extension CodableWebSocketMessage {
4241
try container.encode("data", forKey: .messageType)
4342
try container.encode(messageData, forKey: .messageData)
4443
@unknown default:
45-
let localizedDescription = "Unknown message type"
46-
let codableError = CodableError(localizedDescription: localizedDescription)
44+
let codableError = CodableWebSocketMessage.unknownMessageTypeError(isEncoding: true)
4745
throw ObservableWebSocketClientError.encodingMessage(codableError)
4846
}
4947
}
5048
}
49+
50+
// MARK: - Private
51+
52+
private extension CodableWebSocketMessage {
53+
static func unknownMessageTypeError(isEncoding: Bool) -> CodableError {
54+
let message = "Unknown message type"
55+
return .init(
56+
errorType: "Serialization",
57+
description: message,
58+
localizedDescription: message,
59+
domain: isEncoding ? "Encoding" : "Decoding",
60+
code: 0
61+
)
62+
}
63+
}

0 commit comments

Comments
 (0)