Skip to content

Commit

Permalink
Merge pull request #57 from razor-1/more-fallbacks
Browse files Browse the repository at this point in the history
Support new languages not in the CLDR via fallback
  • Loading branch information
razor-1 authored Jan 1, 2024
2 parents ed6d8de + 1c468ba commit 4fd976b
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 1 deletion.
4 changes: 4 additions & 0 deletions locale.go
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,10 @@ func getFallbackTag(tag language.Tag) (language.Tag, error) {
return language.Make("fr-HT"), nil
case "vec-BR", "ise":
return language.Italian, nil
case "jam":
return language.English, nil
case "ca-valencia":
return language.Catalan, nil
}

return language.Tag{}, fmt.Errorf("no fallback for tag %s", tag.String())
Expand Down
15 changes: 14 additions & 1 deletion locale_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -156,8 +156,21 @@ func TestGetLocaleData(t *testing.T) {
tag, err := language.Parse("ase")
ta.NoError(err)
ta.Equal("ase", tag.String())

l, err := localizer.GetLocaleData(tag)
ta.NoError(err)
ta.Equal(language.AmericanEnglish, language.MustParse(l.Locale))

tag, err = language.Parse("jam")
ta.NoError(err)
ta.Equal("jam", tag.String())
l, err = localizer.GetLocaleData(tag)
ta.NoError(err)
ta.Equal(language.English, language.MustParse(l.Locale))

tag, err = language.Parse("ca-valencia")
ta.NoError(err)
ta.Equal("ca-valencia", tag.String())
l, err = localizer.GetLocaleData(tag)
ta.NoError(err)
ta.Equal(language.Catalan, language.MustParse(l.Locale))
}

0 comments on commit 4fd976b

Please sign in to comment.