Skip to content

Commit 03a6e8d

Browse files
Added Urgency test coverage
1 parent ce3a7df commit 03a6e8d

File tree

1 file changed

+40
-0
lines changed

1 file changed

+40
-0
lines changed

Tests/WebPushTests/WebPushManagerTests.swift

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -482,4 +482,44 @@ struct WebPushManagerTests {
482482
#expect(try JSONDecoder().decode(WebPushManager.Expiration.self, from: Data("60".utf8)) == .minutes(1))
483483
}
484484
}
485+
486+
@Suite struct Urgency {
487+
@Test func comparison() {
488+
#expect(WebPushManager.Urgency(rawValue: "invalid") < WebPushManager.Urgency.veryLow)
489+
#expect(WebPushManager.Urgency(rawValue: "invalid") < WebPushManager.Urgency.low)
490+
#expect(WebPushManager.Urgency(rawValue: "invalid") < WebPushManager.Urgency.normal)
491+
#expect(WebPushManager.Urgency(rawValue: "invalid") < WebPushManager.Urgency.high)
492+
493+
#expect(WebPushManager.Urgency.veryLow < WebPushManager.Urgency.low)
494+
#expect(WebPushManager.Urgency.veryLow < WebPushManager.Urgency.normal)
495+
#expect(WebPushManager.Urgency.veryLow < WebPushManager.Urgency.high)
496+
497+
#expect(WebPushManager.Urgency.low < WebPushManager.Urgency.normal)
498+
#expect(WebPushManager.Urgency.low < WebPushManager.Urgency.high)
499+
500+
#expect(WebPushManager.Urgency.normal < WebPushManager.Urgency.high)
501+
}
502+
503+
@Test func stringEncoding() {
504+
#expect("\(WebPushManager.Urgency(rawValue: "future-value"))" == "future-value")
505+
#expect("\(WebPushManager.Urgency.veryLow)" == "very-low")
506+
#expect("\(WebPushManager.Urgency.low)" == "low")
507+
#expect("\(WebPushManager.Urgency.normal)" == "normal")
508+
#expect("\(WebPushManager.Urgency.high)" == "high")
509+
}
510+
511+
@Test func coding() throws {
512+
#expect(String(decoding: try JSONEncoder().encode(WebPushManager.Urgency(rawValue: "future-value")), as: UTF8.self) == "\"future-value\"")
513+
#expect(String(decoding: try JSONEncoder().encode(WebPushManager.Urgency.veryLow), as: UTF8.self) == "\"very-low\"")
514+
#expect(String(decoding: try JSONEncoder().encode(WebPushManager.Urgency.low), as: UTF8.self) == "\"low\"")
515+
#expect(String(decoding: try JSONEncoder().encode(WebPushManager.Urgency.normal), as: UTF8.self) == "\"normal\"")
516+
#expect(String(decoding: try JSONEncoder().encode(WebPushManager.Urgency.high), as: UTF8.self) == "\"high\"")
517+
518+
#expect(try JSONDecoder().decode(WebPushManager.Urgency.self, from: Data("\"future-value\"".utf8)) == .init(rawValue: "future-value"))
519+
#expect(try JSONDecoder().decode(WebPushManager.Urgency.self, from: Data("\"very-low\"".utf8)) == .veryLow)
520+
#expect(try JSONDecoder().decode(WebPushManager.Urgency.self, from: Data("\"low\"".utf8)) == .low)
521+
#expect(try JSONDecoder().decode(WebPushManager.Urgency.self, from: Data("\"normal\"".utf8)) == .normal)
522+
#expect(try JSONDecoder().decode(WebPushManager.Urgency.self, from: Data("\"high\"".utf8)) == .high)
523+
}
524+
}
485525
}

0 commit comments

Comments
 (0)