Skip to content
Snippets Groups Projects
Select Git revision
  • 77ea7928ab08f69b2da7e15659dbeb26f8f976ee
  • main default protected
  • development
  • integration
  • v1.1.5
  • v1.1.4
  • v1.1.3
  • v1.1.2
  • v1.1.1
  • v1.1.0
  • v1.0.0
11 results

ReceptionIdentityTests.swift

Blame
  • ProgressTests.swift 1.36 KiB
    import CustomDump
    import XCTest
    @testable import ElixxirDAppsSDK
    
    final class ProgressTests: XCTestCase {
      func testCoding() throws {
        let completed = false
        let transmitted: Int = 128
        let total: Int = 2048
        let jsonString = """
        {
          "Completed": \(completed),
          "Transmitted": \(transmitted),
          "Total": \(total),
          "Err": null
        }
        """
        let jsonData = jsonString.data(using: .utf8)!
        let progress = try Progress.decode(jsonData)
    
        XCTAssertNoDifference(progress, Progress(
          completed: completed,
          transmitted: transmitted,
          total: total,
          error: nil
        ))
    
        let encodedProgress = try progress.encode()
        let decodedProgress = try Progress.decode(encodedProgress)
    
        XCTAssertNoDifference(decodedProgress, progress)
      }
    
      func testDecodingProgressWithError() throws {
        let completed = false
        let transmitted: Int = 128
        let total: Int = 2048
        let error = "something went wrong"
        let jsonString = """
        {
          "Completed": \(completed),
          "Transmitted": \(transmitted),
          "Total": \(total),
          "Err": "\(error)"
        }
        """
        let jsonData = jsonString.data(using: .utf8)!
        let progress = try Progress.decode(jsonData)
    
        XCTAssertNoDifference(progress, Progress(
          completed: completed,
          transmitted: transmitted,
          total: total,
          error: error
        ))
      }
    }