tpl: Polish i18n tests

* Make the type/var names more specific. They live in the test namespace, but there are other tests there.
* Camel case variable
* Small change suggested by Golint
This commit is contained in:
Bjørn Erik Pedersen 2016-09-20 13:22:56 +02:00
parent e7e2a1ca02
commit 2071d470e6

View file

@ -21,24 +21,24 @@ import (
"github.com/stretchr/testify/assert" "github.com/stretchr/testify/assert"
) )
type test struct { type i18nTest struct {
data map[string][]byte data map[string][]byte
args interface{} args interface{}
lang, id, expected, expected_flag string lang, id, expected, expectedFlag string
} }
var tests []test = []test{ var i18nTests = []i18nTest{
// All translations present // All translations present
{ {
data: map[string][]byte{ data: map[string][]byte{
"en.yaml": []byte("- id: \"hello\"\n translation: \"Hello, World!\""), "en.yaml": []byte("- id: \"hello\"\n translation: \"Hello, World!\""),
"es.yaml": []byte("- id: \"hello\"\n translation: \"¡Hola, Mundo!\""), "es.yaml": []byte("- id: \"hello\"\n translation: \"¡Hola, Mundo!\""),
}, },
args: nil, args: nil,
lang: "es", lang: "es",
id: "hello", id: "hello",
expected: "¡Hola, Mundo!", expected: "¡Hola, Mundo!",
expected_flag: "¡Hola, Mundo!", expectedFlag: "¡Hola, Mundo!",
}, },
// Translation missing in current language but present in default // Translation missing in current language but present in default
{ {
@ -46,11 +46,11 @@ var tests []test = []test{
"en.yaml": []byte("- id: \"hello\"\n translation: \"Hello, World!\""), "en.yaml": []byte("- id: \"hello\"\n translation: \"Hello, World!\""),
"es.yaml": []byte("- id: \"goodbye\"\n translation: \"¡Adiós, Mundo!\""), "es.yaml": []byte("- id: \"goodbye\"\n translation: \"¡Adiós, Mundo!\""),
}, },
args: nil, args: nil,
lang: "es", lang: "es",
id: "hello", id: "hello",
expected: "Hello, World!", expected: "Hello, World!",
expected_flag: "[i18n] hello", expectedFlag: "[i18n] hello",
}, },
// Translation missing in default language but present in current // Translation missing in default language but present in current
{ {
@ -58,11 +58,11 @@ var tests []test = []test{
"en.yaml": []byte("- id: \"goodybe\"\n translation: \"Goodbye, World!\""), "en.yaml": []byte("- id: \"goodybe\"\n translation: \"Goodbye, World!\""),
"es.yaml": []byte("- id: \"hello\"\n translation: \"¡Hola, Mundo!\""), "es.yaml": []byte("- id: \"hello\"\n translation: \"¡Hola, Mundo!\""),
}, },
args: nil, args: nil,
lang: "es", lang: "es",
id: "hello", id: "hello",
expected: "¡Hola, Mundo!", expected: "¡Hola, Mundo!",
expected_flag: "¡Hola, Mundo!", expectedFlag: "¡Hola, Mundo!",
}, },
// Translation missing in both default and current language // Translation missing in both default and current language
{ {
@ -70,22 +70,22 @@ var tests []test = []test{
"en.yaml": []byte("- id: \"goodbye\"\n translation: \"Goodbye, World!\""), "en.yaml": []byte("- id: \"goodbye\"\n translation: \"Goodbye, World!\""),
"es.yaml": []byte("- id: \"goodbye\"\n translation: \"¡Adiós, Mundo!\""), "es.yaml": []byte("- id: \"goodbye\"\n translation: \"¡Adiós, Mundo!\""),
}, },
args: nil, args: nil,
lang: "es", lang: "es",
id: "hello", id: "hello",
expected: "", expected: "",
expected_flag: "[i18n] hello", expectedFlag: "[i18n] hello",
}, },
// Default translation file missing or empty // Default translation file missing or empty
{ {
data: map[string][]byte{ data: map[string][]byte{
"en.yaml": []byte(""), "en.yaml": []byte(""),
}, },
args: nil, args: nil,
lang: "es", lang: "es",
id: "hello", id: "hello",
expected: "", expected: "",
expected_flag: "[i18n] hello", expectedFlag: "[i18n] hello",
}, },
// Context provided // Context provided
{ {
@ -98,10 +98,10 @@ var tests []test = []test{
}{ }{
50, 50,
}, },
lang: "es", lang: "es",
id: "wordCount", id: "wordCount",
expected: "¡Hola, 50 gente!", expected: "¡Hola, 50 gente!",
expected_flag: "¡Hola, 50 gente!", expectedFlag: "¡Hola, 50 gente!",
}, },
} }
@ -134,9 +134,9 @@ func TestI18nTranslate(t *testing.T) {
for _, enablePlaceholders := range []bool{false, true} { for _, enablePlaceholders := range []bool{false, true} {
viper.Set("EnableMissingTranslationPlaceholders", enablePlaceholders) viper.Set("EnableMissingTranslationPlaceholders", enablePlaceholders)
for _, test := range tests { for _, test := range i18nTests {
if enablePlaceholders { if enablePlaceholders {
expected = test.expected_flag expected = test.expectedFlag
} else { } else {
expected = test.expected expected = test.expected
} }