test(mac): cover voice wake helpers
This commit is contained in:
23
apps/macos/Tests/ClawdisIPCTests/VoiceWakeHelpersTests.swift
Normal file
23
apps/macos/Tests/ClawdisIPCTests/VoiceWakeHelpersTests.swift
Normal file
@@ -0,0 +1,23 @@
|
||||
import Testing
|
||||
@testable import Clawdis
|
||||
|
||||
struct VoiceWakeHelpersTests {
|
||||
@Test func sanitizeTriggersTrimsAndDropsEmpty() {
|
||||
let cleaned = sanitizeVoiceWakeTriggers([" hi ", " ", "\n", "there"])
|
||||
#expect(cleaned == ["hi", "there"])
|
||||
}
|
||||
|
||||
@Test func sanitizeTriggersFallsBackToDefaults() {
|
||||
let cleaned = sanitizeVoiceWakeTriggers([" ", ""])
|
||||
#expect(cleaned == defaultVoiceWakeTriggers)
|
||||
}
|
||||
|
||||
@Test func normalizeLocaleStripsCollation() {
|
||||
#expect(normalizeLocaleIdentifier("en_US@collation=phonebook") == "en_US")
|
||||
}
|
||||
|
||||
@Test func normalizeLocaleStripsUnicodeExtensions() {
|
||||
#expect(normalizeLocaleIdentifier("de-DE-u-co-phonebk") == "de-DE")
|
||||
#expect(normalizeLocaleIdentifier("ja-JP-t-ja") == "ja-JP")
|
||||
}
|
||||
}
|
||||
15
apps/macos/Tests/ClawdisIPCTests/VoiceWakeTesterTests.swift
Normal file
15
apps/macos/Tests/ClawdisIPCTests/VoiceWakeTesterTests.swift
Normal file
@@ -0,0 +1,15 @@
|
||||
import Testing
|
||||
@testable import Clawdis
|
||||
|
||||
struct VoiceWakeTesterTests {
|
||||
@Test func matchesIsCaseInsensitiveAndSubstring() {
|
||||
let triggers = ["Claude", "wake word"]
|
||||
#expect(VoiceWakeTester._testMatches(text: "hey claude are you there", triggers: triggers))
|
||||
#expect(VoiceWakeTester._testMatches(text: "this has wake word inside", triggers: triggers))
|
||||
}
|
||||
|
||||
@Test func matchesReturnsFalseWhenNoTrigger() {
|
||||
let triggers = ["claude"]
|
||||
#expect(!VoiceWakeTester._testMatches(text: "random text", triggers: triggers))
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user