21 lines
606 B
Go
21 lines
606 B
Go
package i18n
|
|
|
|
import "testing"
|
|
|
|
func TestNegotiateAcceptLanguage(t *testing.T) {
|
|
cases := map[string]Locale{
|
|
"": Default,
|
|
"fr-FR,fr;q=0.9,en;q=0.8": "fr",
|
|
"de;q=0.5,fr;q=0.9": "fr",
|
|
"xx-XX,yy-YY": Default,
|
|
"pt-BR": "pt",
|
|
"en-US,en;q=0.9": "en",
|
|
" , ;q=bogus , es-MX;q=0.4": "es",
|
|
}
|
|
for header, want := range cases {
|
|
if got := NegotiateAcceptLanguage(header); got != want {
|
|
t.Errorf("NegotiateAcceptLanguage(%q) = %q, want %q", header, got, want)
|
|
}
|
|
}
|
|
}
|