Summary: - Tests: add tests for AnyCodableTests.swift, AnyStorageKeyTests.swift, AuditTests.swift (+8 more) Stats: - 11 files changed, 698 insertions(+)
42 lines
1.4 KiB
Swift
42 lines
1.4 KiB
Swift
import Foundation
|
|
import Testing
|
|
@testable import LocalData
|
|
|
|
@Suite struct UserDefaultsHelperTests {
|
|
private let helper = UserDefaultsHelper.shared
|
|
|
|
@Test func standardUserDefaultsRoundTrip() async throws {
|
|
let key = "test.standard.key"
|
|
let data = Data("standard-value".utf8)
|
|
|
|
try await helper.set(data, forKey: key, suite: nil)
|
|
let retrieved = try await helper.get(forKey: key, suite: nil)
|
|
#expect(retrieved == data)
|
|
|
|
let exists = try await helper.exists(forKey: key, suite: nil)
|
|
#expect(exists == true)
|
|
|
|
try await helper.remove(forKey: key, suite: nil)
|
|
let afterDelete = try await helper.get(forKey: key, suite: nil)
|
|
#expect(afterDelete == nil)
|
|
}
|
|
|
|
@Test func suiteUserDefaultsRoundTrip() async throws {
|
|
let suiteName = "com.test.suite.\(UUID().uuidString)"
|
|
let key = "test.suite.key"
|
|
let data = Data("suite-value".utf8)
|
|
|
|
try await helper.set(data, forKey: key, suite: suiteName)
|
|
let retrieved = try await helper.get(forKey: key, suite: suiteName)
|
|
#expect(retrieved == data)
|
|
|
|
let keys = try await helper.allKeys(suite: suiteName)
|
|
#expect(keys.contains(key))
|
|
|
|
try await helper.remove(forKey: key, suite: suiteName)
|
|
|
|
// Cleanup
|
|
UserDefaults().removePersistentDomain(forName: suiteName)
|
|
}
|
|
}
|