23 lines
830 B
Swift
23 lines
830 B
Swift
import Foundation
|
|
import Testing
|
|
@testable import Moltbot
|
|
|
|
@Suite struct VoiceWakeGatewaySyncTests {
|
|
@Test func decodeGatewayTriggersFromJSONSanitizes() {
|
|
let payload = #"{"triggers":[" clawd ","", "computer"]}"#
|
|
let triggers = VoiceWakePreferences.decodeGatewayTriggers(from: payload)
|
|
#expect(triggers == ["clawd", "computer"])
|
|
}
|
|
|
|
@Test func decodeGatewayTriggersFromJSONFallsBackWhenEmpty() {
|
|
let payload = #"{"triggers":[" ",""]}"#
|
|
let triggers = VoiceWakePreferences.decodeGatewayTriggers(from: payload)
|
|
#expect(triggers == VoiceWakePreferences.defaultTriggerWords)
|
|
}
|
|
|
|
@Test func decodeGatewayTriggersFromInvalidJSONReturnsNil() {
|
|
let triggers = VoiceWakePreferences.decodeGatewayTriggers(from: "not json")
|
|
#expect(triggers == nil)
|
|
}
|
|
}
|