LocalData/Tests/LocalDataTests/AnyStorageKeyTests.swift
Matt Bruce c907b040e0 Tests: add tests for AnyCodableTests.swift, AnyStorageKeyTests.swift, AuditTests.swift (+8 more)
Summary:
- Tests: add tests for AnyCodableTests.swift, AnyStorageKeyTests.swift, AuditTests.swift (+8 more)

Stats:
- 11 files changed, 698 insertions(+)
2026-01-18 13:43:10 -06:00

38 lines
1.2 KiB
Swift

import Foundation
import Testing
@testable import LocalData
@Suite struct AnyStorageKeyTests {
private struct StringKey: StorageKey {
typealias Value = String
let name: String
let domain: StorageDomain = .userDefaults(suite: nil)
let security: SecurityPolicy = .none
let serializer: Serializer<String> = .json
let owner: String = "Test"
let description: String = "Test"
let availability: PlatformAvailability = .all
let syncPolicy: SyncPolicy = .never
}
@Test func anyStorageKeyCapturesDescriptor() {
let key = StringKey(name: "test.key")
let anyKey = AnyStorageKey.key(key)
#expect(anyKey.descriptor.name == "test.key")
#expect(anyKey.descriptor.owner == "Test")
#expect(anyKey.descriptor.valueType == "String")
}
@Test func anyStorageKeyTriggersMigration() async throws {
let router = StorageRouter(keychain: MockKeychainHelper())
let key = StringKey(name: "test.key")
let anyKey = AnyStorageKey.key(key)
// This will call router.migrate(for: key)
// Since there are no migration sources, it just returns
try await anyKey.migrate(on: router)
}
}