Files
agent-desk-ng/internal/pkg/config/language_test.go

32 lines
895 B
Go

package config
import "testing"
func TestLanguageOrDefault(t *testing.T) {
tests := []struct {
name string
in string
want string
}{
{name: "blank falls back", in: "", want: "en-US"},
{name: "unsupported falls back", in: "fr-FR", want: "en-US"},
{name: "chinese", in: "zh-CN", want: "zh-CN"},
{name: "english", in: "en", want: "en-US"},
{name: "english underscore", in: "EN_us", want: "en-US"},
{name: "russian", in: "ru-RU", want: "ru-RU"},
{name: "russian short", in: "ru", want: "ru-RU"},
{name: "russian underscore", in: "ru_ru", want: "ru-RU"},
{name: "russian padded", in: " ru-RU ", want: "ru-RU"},
}
for _, tt := range tests {
tt := tt
t.Run(tt.name, func(t *testing.T) {
cfg := Config{Language: tt.in}
if got := cfg.LanguageOrDefault(); got != tt.want {
t.Fatalf("LanguageOrDefault(%q) = %q, want %q", tt.in, got, tt.want)
}
})
}
}