ImageTests.swift 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. //
  2. // Image.swift
  3. //
  4. //
  5. // Created by Miguel de Icaza on 4/29/21.
  6. //
  7. import XCTest
  8. import Foundation
  9. @testable import SwiftTerm
  10. final class ImageTests: XCTestCase {
  11. func testSixel ()
  12. {
  13. let h = HeadlessTerminal (queue: SwiftTermTests.queue) { exitCode in }
  14. let t = h.terminal!
  15. let sixel: [UInt8] = [27, 80, 113, 34, 49, 59, 49, 59, 49, 48, 48, 59, 49, 48, 48, 35, 48, 59, 49, 59, 49, 50, 48, 59, 52, 57, 59, 49, 48, 48, 35, 49, 59, 49, 59, 49, 56, 48, 59, 54, 55, 59, 57, 49, 35, 50, 59, 49, 59, 49, 56, 48, 59, 52, 57, 59, 49, 48, 48, 35, 51, 59, 49, 59, 48, 59, 52, 57, 59, 49, 48, 48, 35, 52, 59, 49, 59, 50, 52, 48, 59, 52, 57, 59, 49, 48, 48, 35, 53, 59, 49, 59, 50, 49, 50, 59, 53, 50, 59, 57, 52, 35, 54, 59, 49, 59, 57, 48, 59, 52, 55, 59, 54, 54, 35, 55, 59, 49, 59, 50, 57, 52, 59, 51, 51, 59, 49, 48, 48, 35, 56, 59, 49, 59, 51, 50, 50, 59, 54, 48, 59, 56, 53, 35, 57, 59, 49, 59, 48, 59, 57, 55, 59, 48, 35, 48, 33, 57, 48, 126, 35, 49, 33, 49, 48, 126, 45, 35, 48, 33, 57, 48, 126, 35, 49, 33, 49, 48, 126, 45, 35, 48, 33, 57, 48, 126, 35, 49, 33, 49, 48, 126, 45, 35, 48, 33, 57, 48, 66, 35, 49, 33, 49, 48, 64, 36, 35, 51, 33, 57, 48, 123, 35, 50, 33, 49, 48, 125, 45, 35, 51, 33, 57, 48, 126, 35, 50, 33, 49, 48, 126, 45, 35, 51, 33, 57, 48, 126, 35, 50, 33, 49, 48, 126, 45, 35, 51, 33, 57, 48, 78, 35, 50, 33, 49, 48, 126, 36, 35, 52, 33, 57, 48, 111, 45, 33, 57, 48, 126, 35, 50, 33, 49, 48, 126, 45, 35, 52, 33, 57, 48, 126, 35, 49, 33, 49, 48, 125, 36, 35, 50, 33, 57, 48, 63, 33, 49, 48, 64, 45, 35, 52, 33, 57, 48, 78, 35, 49, 33, 49, 48, 126, 36, 35, 53, 33, 57, 48, 111, 45, 33, 57, 48, 126, 35, 49, 33, 49, 48, 126, 45, 35, 53, 33, 57, 48, 66, 35, 49, 33, 49, 48, 126, 36, 35, 54, 33, 57, 48, 123, 45, 33, 57, 48, 126, 35, 49, 33, 49, 48, 126, 45, 35, 55, 33, 57, 48, 126, 35, 49, 33, 49, 48, 126, 45, 35, 55, 33, 57, 48, 78, 35, 49, 33, 49, 48, 126, 36, 35, 56, 33, 57, 48, 111, 45, 33, 57, 48, 126, 35, 49, 33, 49, 48, 126, 45, 35, 56, 33, 57, 48, 66, 35, 49, 33, 49, 48, 78, 36, 35, 57, 33, 57, 48, 75, 27, 92]
  16. t.feed(byteArray: sixel)
  17. XCTAssertEqual(h.images.count, 1)
  18. let image = h.images [0]
  19. let bytes = image.0
  20. let width = image.1
  21. let height = image.2
  22. XCTAssertEqual(bytes.count, 40000)
  23. XCTAssertEqual(width, 100)
  24. XCTAssertEqual(height, 100)
  25. XCTAssertEqual(bytes [0], 249)
  26. XCTAssertEqual(bytes [1], 0)
  27. XCTAssertEqual(bytes [2], 0)
  28. XCTAssertEqual(bytes [3], 255)
  29. }
  30. static var allTests = [
  31. ("testSixel", testSixel)
  32. ]
  33. }