mirror of
https://github.com/laosb/TypedAppStorage.git
synced 2025-06-23 09:41:08 +00:00
chore: Migrate tests to swift-testing and update assertions
This commit is contained in:
parent
3649c706d9
commit
b94a694193
1 changed files with 22 additions and 13 deletions
|
@ -1,5 +1,5 @@
|
|||
import SwiftUI
|
||||
import XCTest
|
||||
import Testing
|
||||
|
||||
@testable import TypedAppStorage
|
||||
|
||||
|
@ -47,40 +47,49 @@ struct TestArticleWithADifferentDefault: View {
|
|||
}
|
||||
}
|
||||
|
||||
final class TypedAppStorageTests: XCTestCase {
|
||||
override func setUp() {
|
||||
@Suite("TypedAppStorage Tests", .serialized)
|
||||
struct TypedAppStorageTests {
|
||||
|
||||
init() {
|
||||
UserDefaults.standard.removeObject(forKey: "preferredFruit")
|
||||
}
|
||||
|
||||
func testReadDefaultValue() throws {
|
||||
@Test("Read default value")
|
||||
func readDefaultValue() throws {
|
||||
UserDefaults.standard.removeObject(forKey: "preferredFruit")
|
||||
let testArticle = TestArticle()
|
||||
|
||||
XCTAssertEqual(
|
||||
testArticle.preferredFruit,
|
||||
PreferredFruit(.veryFresh, .apple)
|
||||
#expect(
|
||||
testArticle.preferredFruit == PreferredFruit(.veryFresh, .apple)
|
||||
)
|
||||
}
|
||||
|
||||
func testCallSiteDefault() throws {
|
||||
@Test("Call-site default")
|
||||
func callSiteDefault() throws {
|
||||
UserDefaults.standard.removeObject(forKey: "preferredFruit")
|
||||
let testArticle = TestArticleWithADifferentDefault()
|
||||
|
||||
XCTAssertEqual(testArticle.preferredFruit, .init(.moderate, .pear))
|
||||
#expect(testArticle.preferredFruit == .init(.moderate, .pear))
|
||||
}
|
||||
|
||||
func testSaveAndReadBack() throws {
|
||||
@Test("Save and read back")
|
||||
func saveAndReadBack() throws {
|
||||
UserDefaults.standard.removeObject(forKey: "preferredFruit")
|
||||
let testArticle = TestArticle()
|
||||
|
||||
testArticle.changePreferred(to: .init(.somewhatStale, .banana))
|
||||
|
||||
XCTAssertEqual(testArticle.preferredFruit, .init(.somewhatStale, .banana))
|
||||
#expect(testArticle.preferredFruit == .init(.somewhatStale, .banana))
|
||||
}
|
||||
|
||||
func testSaveAndReadElsewhere() throws {
|
||||
@Test("Save and read elsewhere")
|
||||
func saveAndReadElsewhere() throws {
|
||||
UserDefaults.standard.removeObject(forKey: "preferredFruit")
|
||||
let articleA = TestArticle()
|
||||
let articleB = TestArticle()
|
||||
|
||||
articleA.changePreferred(to: .init(.moderate, .banana))
|
||||
|
||||
XCTAssertEqual(articleB.preferredFruit, .init(.moderate, .banana))
|
||||
#expect(articleB.preferredFruit == .init(.moderate, .banana))
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue