Files
sst/Tests/SstDataTests/AppSettingsTests.swift
T
2026-10-01 15:32:30 +02:00

39 lines
1.2 KiB
Swift

import Foundation
import Testing
@testable import SstData
struct AppSettingsTests {
func freshDefaults() -> UserDefaults {
let name = "sst-tests-\(UUID().uuidString)"
let defaults = UserDefaults(suiteName: name)!
defaults.removePersistentDomain(forName: name)
return defaults
}
@Test func defaultsMatchTheSpec() {
let settings = AppSettings(defaults: freshDefaults())
#expect(settings.hotkeyID == "fn")
#expect(settings.modelVariant == "large-v3-v20240930_turbo")
#expect(settings.keepHistory)
#expect(settings.usePriming)
#expect(settings.useCorrection)
}
@Test func changesArePersisted() {
let defaults = freshDefaults()
let settings = AppSettings(defaults: defaults)
settings.hotkeyID = "rightOption"
settings.modelVariant = "small"
settings.keepHistory = false
settings.usePriming = false
settings.useCorrection = false
let reloaded = AppSettings(defaults: defaults)
#expect(reloaded.hotkeyID == "rightOption")
#expect(reloaded.modelVariant == "small")
#expect(!reloaded.keepHistory)
#expect(!reloaded.usePriming)
#expect(!reloaded.useCorrection)
}
}