From fd39571c0ca2f784b3f4b9340f17a65d06e77b4d Mon Sep 17 00:00:00 2001
From: Dariusz Rybicki <dariusz@elixxir.io>
Date: Tue, 1 Nov 2022 21:49:13 +0100
Subject: [PATCH] Add transferId property to Progress model

---
 Sources/XXClient/Models/Progress.swift         | 4 ++++
 Tests/XXClientTests/Models/ProgressTests.swift | 3 +++
 2 files changed, 7 insertions(+)

diff --git a/Sources/XXClient/Models/Progress.swift b/Sources/XXClient/Models/Progress.swift
index 5d4e1364..430bfeb4 100644
--- a/Sources/XXClient/Models/Progress.swift
+++ b/Sources/XXClient/Models/Progress.swift
@@ -2,15 +2,18 @@ import Foundation
 
 public struct Progress: Equatable {
   public init(
+    transferId: Data,
     completed: Bool,
     transmitted: Int,
     total: Int
   ) {
+    self.transferId = transferId
     self.completed = completed
     self.transmitted = transmitted
     self.total = total
   }
 
+  public var transferId: Data
   public var completed: Bool
   public var transmitted: Int
   public var total: Int
@@ -18,6 +21,7 @@ public struct Progress: Equatable {
 
 extension Progress: Codable {
   enum CodingKeys: String, CodingKey {
+    case transferId = "TransferID"
     case completed = "Completed"
     case transmitted = "Transmitted"
     case total = "Total"
diff --git a/Tests/XXClientTests/Models/ProgressTests.swift b/Tests/XXClientTests/Models/ProgressTests.swift
index 6b834269..80e70458 100644
--- a/Tests/XXClientTests/Models/ProgressTests.swift
+++ b/Tests/XXClientTests/Models/ProgressTests.swift
@@ -4,11 +4,13 @@ import XCTest
 
 final class ProgressTests: XCTestCase {
   func testCoding() throws {
+    let transferIdB64 = "RyJcMqtI3IIM1+YMxRwCcFiOX6AGuIzS+vQaPnqXVT8="
     let completed = false
     let transmitted: Int = 128
     let total: Int = 2048
     let jsonString = """
     {
+      "TransferID": "\(transferIdB64)",
       "Completed": \(completed),
       "Transmitted": \(transmitted),
       "Total": \(total)
@@ -18,6 +20,7 @@ final class ProgressTests: XCTestCase {
     let model = try Progress.decode(jsonData)
 
     XCTAssertNoDifference(model, Progress(
+      transferId: Data(base64Encoded: transferIdB64)!,
       completed: completed,
       transmitted: transmitted,
       total: total
-- 
GitLab