Files

36 lines
1.3 KiB
Go

package messages
import (
"strings"
"testing"
"ai-operator/internal/dialogue/state"
)
func TestCatalog(t *testing.T) {
if got := Get("greeting.initial", state.LanguageUnknown); !strings.Contains(got, "Жанна") || !strings.Contains(got, "QazAimaqGas") || strings.Contains(strings.ToLower(got), "выберите язык") {
t.Fatalf("missing natural greeting: %q", got)
}
if got := Get("greeting.initial", state.LanguageKK); !strings.Contains(got, "Жанна") || !strings.Contains(got, "QazAimaqGas") || !strings.Contains(got, "Қалай көмектесе аламын") {
t.Fatalf("missing kk natural greeting: %q", got)
}
if got := Get("region.ask", state.LanguageRU); got == "" || got == "region.ask" {
t.Fatal("missing ru region prompt")
}
if got := Get("region.ask", state.LanguageKK); got == "" || got == "region.ask" {
t.Fatal("missing kk region prompt")
}
if got := Get("unknown.key", state.LanguageRU); got != "unknown.key" {
t.Fatal("unknown fallback failed")
}
}
func TestLanguageSelectionMessages(t *testing.T) {
keys := []string{"language.ask", "language.ask_clarify", "language.selected.ru", "language.selected.kk", "language.changed.ru", "language.changed.kk", "language.unsupported"}
for _, key := range keys {
if got := Get(key, state.LanguageRU); got == "" || got == key {
t.Fatalf("missing %s ru", key)
}
}
}