From c7188e3a1c939f06024f2acd89757f8d885b81ab Mon Sep 17 00:00:00 2001 From: Dariusz Rybicki <dariusz@elixxir.io> Date: Wed, 10 Aug 2022 22:04:06 +0100 Subject: [PATCH] Update SingleUseResponseReport model --- .../Models/SingleUseResponseReport.swift | 30 ++++------------- .../Models/SingleUseResponseReportTests.swift | 32 +++++++------------ 2 files changed, 18 insertions(+), 44 deletions(-) diff --git a/Sources/ElixxirDAppsSDK/Models/SingleUseResponseReport.swift b/Sources/ElixxirDAppsSDK/Models/SingleUseResponseReport.swift index 0aea471e..788ca27c 100644 --- a/Sources/ElixxirDAppsSDK/Models/SingleUseResponseReport.swift +++ b/Sources/ElixxirDAppsSDK/Models/SingleUseResponseReport.swift @@ -4,40 +4,29 @@ public struct SingleUseResponseReport: Equatable { public init( rounds: [Int], payload: Data, - receptionId: ReceptionId, + ephId: Int64, + receptionId: Data, error: String? ) { self.rounds = rounds self.payload = payload + self.ephId = ephId self.receptionId = receptionId self.error = error } public var rounds: [Int] public var payload: Data - public var receptionId: ReceptionId + public var ephId: Int64 + public var receptionId: Data public var error: String? } -extension SingleUseResponseReport { - public struct ReceptionId: Equatable { - public init( - ephId: [Int], - source: Data - ) { - self.ephId = ephId - self.source = source - } - - public var ephId: [Int] - public var source: Data - } -} - extension SingleUseResponseReport: Codable { enum CodingKeys: String, CodingKey { case rounds = "Rounds" case payload = "Payload" + case ephId = "EphID" case receptionId = "ReceptionID" case error = "Err" } @@ -50,10 +39,3 @@ extension SingleUseResponseReport: Codable { try JSONEncoder().encode(self) } } - -extension SingleUseResponseReport.ReceptionId: Codable { - enum CodingKeys: String, CodingKey { - case ephId = "EphId" - case source = "Source" - } -} diff --git a/Tests/ElixxirDAppsSDKTests/Models/SingleUseResponseReportTests.swift b/Tests/ElixxirDAppsSDKTests/Models/SingleUseResponseReportTests.swift index f4bd95f9..34750c20 100644 --- a/Tests/ElixxirDAppsSDKTests/Models/SingleUseResponseReportTests.swift +++ b/Tests/ElixxirDAppsSDKTests/Models/SingleUseResponseReportTests.swift @@ -6,16 +6,14 @@ final class SingleUseResponseReportTests: XCTestCase { func testCoding() throws { let rounds: [Int] = [1, 5, 9] let payloadB64 = "rSuPD35ELWwm5KTR9ViKIz/r1YGRgXIl5792SF8o8piZzN6sT4Liq4rUU/nfOPvQEjbfWNh/NYxdJ72VctDnWw==" - let receptionIdEphId: [Int] = [0, 0, 0, 0, 0, 0, 3, 89] - let receptionIdSourceB64 = "emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD" + let ephId: Int64 = 1_655_533 + let receptionIdB64 = "emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD" let jsonString = """ { "Rounds": [\(rounds.map { "\($0)" }.joined(separator: ", "))], "Payload": "\(payloadB64)", - "ReceptionID": { - "EphId": [\(receptionIdEphId.map { "\($0)" }.joined(separator: ", "))], - "Source": "\(receptionIdSourceB64)" - }, + "EphID": \(ephId), + "ReceptionID": "\(receptionIdB64)", "Err": null } """ @@ -25,10 +23,8 @@ final class SingleUseResponseReportTests: XCTestCase { XCTAssertNoDifference(model, SingleUseResponseReport( rounds: rounds, payload: Data(base64Encoded: payloadB64)!, - receptionId: .init( - ephId: receptionIdEphId, - source: Data(base64Encoded: receptionIdSourceB64)! - ), + ephId: ephId, + receptionId: Data(base64Encoded: receptionIdB64)!, error: nil )) @@ -41,17 +37,15 @@ final class SingleUseResponseReportTests: XCTestCase { func testDecodingReportWithError() throws { let rounds: [Int] = [1, 5, 9] let payloadB64 = "rSuPD35ELWwm5KTR9ViKIz/r1YGRgXIl5792SF8o8piZzN6sT4Liq4rUU/nfOPvQEjbfWNh/NYxdJ72VctDnWw==" - let receptionIdEphId: [Int] = [0, 0, 0, 0, 0, 0, 3, 89] - let receptionIdSourceB64 = "emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD" + let ephId: Int64 = 1_655_533 + let receptionIdB64 = "emV6aW1hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD" let error = "something went wrong" let jsonString = """ { "Rounds": [\(rounds.map { "\($0)" }.joined(separator: ", "))], "Payload": "\(payloadB64)", - "ReceptionID": { - "EphId": [\(receptionIdEphId.map { "\($0)" }.joined(separator: ", "))], - "Source": "\(receptionIdSourceB64)" - }, + "EphID": \(ephId), + "ReceptionID": "\(receptionIdB64)", "Err": "\(error)" } """ @@ -61,10 +55,8 @@ final class SingleUseResponseReportTests: XCTestCase { XCTAssertNoDifference(model, SingleUseResponseReport( rounds: rounds, payload: Data(base64Encoded: payloadB64)!, - receptionId: .init( - ephId: receptionIdEphId, - source: Data(base64Encoded: receptionIdSourceB64)! - ), + ephId: ephId, + receptionId: Data(base64Encoded: receptionIdB64)!, error: error )) } -- GitLab