SensorStatusGlucoseEventTests.swift 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. //
  2. // SensorStatusGlucoseEventTests.swift
  3. // RileyLink
  4. //
  5. // Created by Timothy Mecklem on 10/18/16.
  6. // Copyright © 2016 Pete Schwamb. All rights reserved.
  7. //
  8. import XCTest
  9. @testable import MinimedKit
  10. class SensorStatusGlucoseEventTests: XCTestCase {
  11. func testDecodingStatusTypeOff() {
  12. let rawData = Data(hexadecimalString: "0b0baf0a0e")!
  13. let subject = SensorStatusGlucoseEvent(availableData: rawData, relativeTimestamp: DateComponents())!
  14. let expectedTimestamp = DateComponents(calendar: Calendar(identifier: .gregorian),
  15. year: 2014, month: 2, day: 10, hour: 11, minute: 47)
  16. XCTAssertEqual(subject.timestamp, expectedTimestamp)
  17. XCTAssertEqual(subject.dictionaryRepresentation["statusType"] as! String, "off")
  18. }
  19. func testDecodingStatusTypeOn() {
  20. let rawData = Data(hexadecimalString: "0b0baf2a0e")!
  21. let subject = SensorStatusGlucoseEvent(availableData: rawData, relativeTimestamp: DateComponents())!
  22. let expectedTimestamp = DateComponents(calendar: Calendar(identifier: .gregorian),
  23. year: 2014, month: 2, day: 10, hour: 11, minute: 47)
  24. XCTAssertEqual(subject.timestamp, expectedTimestamp)
  25. XCTAssertEqual(subject.dictionaryRepresentation["statusType"] as! String, "on")
  26. }
  27. func testDecodingStatusTypeLost() {
  28. let rawData = Data(hexadecimalString: "0b0baf4a0e")!
  29. let subject = SensorStatusGlucoseEvent(availableData: rawData, relativeTimestamp: DateComponents())!
  30. let expectedTimestamp = DateComponents(calendar: Calendar(identifier: .gregorian),
  31. year: 2014, month: 2, day: 10, hour: 11, minute: 47)
  32. XCTAssertEqual(subject.timestamp, expectedTimestamp)
  33. XCTAssertEqual(subject.dictionaryRepresentation["statusType"] as! String, "lost")
  34. }
  35. }