diff options
author | Christopher Speller <crspeller@gmail.com> | 2016-11-16 19:28:52 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-11-16 19:28:52 -0500 |
commit | 0135904f7d3e1c0e763adaefe267c736616e3d26 (patch) | |
tree | c27be7588f98eaea62e0bd0c0087f2b348da9738 /vendor/github.com/nicksnyder/go-i18n/i18n/bundle | |
parent | 0b296dd8c2aefefe89787be5cc627d44cf431150 (diff) | |
download | chat-0135904f7d3e1c0e763adaefe267c736616e3d26.tar.gz chat-0135904f7d3e1c0e763adaefe267c736616e3d26.tar.bz2 chat-0135904f7d3e1c0e763adaefe267c736616e3d26.zip |
Upgrading server dependancies (#4566)
Diffstat (limited to 'vendor/github.com/nicksnyder/go-i18n/i18n/bundle')
-rw-r--r-- | vendor/github.com/nicksnyder/go-i18n/i18n/bundle/bundle.go | 5 | ||||
-rw-r--r-- | vendor/github.com/nicksnyder/go-i18n/i18n/bundle/bundle_test.go | 20 |
2 files changed, 25 insertions, 0 deletions
diff --git a/vendor/github.com/nicksnyder/go-i18n/i18n/bundle/bundle.go b/vendor/github.com/nicksnyder/go-i18n/i18n/bundle/bundle.go index e93db95d7..8e46fa296 100644 --- a/vendor/github.com/nicksnyder/go-i18n/i18n/bundle/bundle.go +++ b/vendor/github.com/nicksnyder/go-i18n/i18n/bundle/bundle.go @@ -260,6 +260,11 @@ func (b *Bundle) translate(lang *language.Language, translationID string, args . dataMap["Count"] = count data = dataMap } + } else { + dataMap := toMap(data) + if c, ok := dataMap["Count"]; ok { + count = c + } } p, _ := lang.Plural(count) diff --git a/vendor/github.com/nicksnyder/go-i18n/i18n/bundle/bundle_test.go b/vendor/github.com/nicksnyder/go-i18n/i18n/bundle/bundle_test.go index b9c0a0593..b241ad1d4 100644 --- a/vendor/github.com/nicksnyder/go-i18n/i18n/bundle/bundle_test.go +++ b/vendor/github.com/nicksnyder/go-i18n/i18n/bundle/bundle_test.go @@ -270,6 +270,26 @@ func BenchmarkTranslatePluralWithMap(b *testing.B) { } } +func BenchmarkTranslatePluralWithMapAndCountField(b *testing.B) { + data := map[string]interface{}{ + "Person": "Bob", + "Count": 26, + } + + translationTemplate := map[string]interface{}{ + "one": "{{.Person}} is {{.Count}} year old.", + "other": "{{.Person}} is {{.Count}} years old.", + } + expected := "Bob is 26 years old." + + tf := createBenchmarkTranslateFunc(b, translationTemplate, nil, expected) + + b.ResetTimer() + for i := 0; i < b.N; i++ { + tf(data) + } +} + func BenchmarkTranslatePluralWithStruct(b *testing.B) { data := struct{ Person string }{Person: "Bob"} tf := createBenchmarkPluralTranslateFunc(b) |