Skip to content
Snippets Groups Projects
Commit 202f1075 authored by Dariusz Rybicki's avatar Dariusz Rybicki
Browse files

Update SingleUseSendReport model

parent 68887b74
No related branches found
No related tags found
2 merge requests!102Release 1.0.0,!30Update Bindings
......@@ -3,35 +3,24 @@ import Foundation
public struct SingleUseSendReport: Equatable {
public init(
rounds: [Int],
ephId: EphId
ephId: Int64,
receptionId: Data
) {
self.rounds = rounds
self.ephId = ephId
self.receptionId = receptionId
}
public var rounds: [Int]
public var ephId: EphId
}
extension SingleUseSendReport {
public struct EphId: Equatable {
public init(
ephId: [Int],
source: Data
) {
self.ephId = ephId
self.source = source
}
public var ephId: [Int]
public var source: Data
}
public var ephId: Int64
public var receptionId: Data
}
extension SingleUseSendReport: Codable {
enum CodingKeys: String, CodingKey {
case rounds = "Rounds"
case ephId = "EphID"
case receptionId = "ReceptionID"
}
public static func decode(_ data: Data) throws -> Self {
......@@ -42,10 +31,3 @@ extension SingleUseSendReport: Codable {
try JSONEncoder().encode(self)
}
}
extension SingleUseSendReport.EphId: Codable {
enum CodingKeys: String, CodingKey {
case ephId = "EphId"
case source = "Source"
}
}
......@@ -5,15 +5,13 @@ import XCTest
final class SingleUseSendReportTests: XCTestCase {
func testCoding() throws {
let rounds: [Int] = [1, 5, 9]
let ephId: [Int] = [0, 0, 0, 0, 0, 0, 3, 89]
let ephIdSourceB64 = "emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD"
let ephId: Int64 = 1_655_533
let receptionIdB64 = "emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD"
let jsonString = """
{
"Rounds": [\(rounds.map { "\($0)" }.joined(separator: ", "))],
"EphID": {
"EphId": [\(ephId.map { "\($0)" }.joined(separator: ", "))],
"Source": "\(ephIdSourceB64)"
}
"EphID": \(ephId),
"ReceptionID": "\(receptionIdB64)"
}
"""
let jsonData = jsonString.data(using: .utf8)!
......@@ -21,10 +19,8 @@ final class SingleUseSendReportTests: XCTestCase {
XCTAssertNoDifference(model, SingleUseSendReport(
rounds: rounds,
ephId: .init(
ephId: ephId,
source: Data(base64Encoded: ephIdSourceB64)!
)
ephId: ephId,
receptionId: Data(base64Encoded: receptionIdB64)!
))
let encodedModel = try model.encode()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment