diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2020-10-09 10:00:50 +0200 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2020-10-09 18:02:43 +0200 |
commit | 506820435cacb39ce7bb1835f46a15e913b95828 (patch) | |
tree | e4a7e7a07232fe3c32da831d1f2049ead00d5095 /hugolib | |
parent | 49972d07925604fea45afe1ace7b5dcc6efc30bf (diff) |
lang/i18n: Fix for language code case issue with pt-br etc.
Fixes #7804
Diffstat (limited to 'hugolib')
-rw-r--r-- | hugolib/language_test.go | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/hugolib/language_test.go b/hugolib/language_test.go new file mode 100644 index 000000000..9c3e434c2 --- /dev/null +++ b/hugolib/language_test.go @@ -0,0 +1,57 @@ +// Copyright 2020 The Hugo Authors. All rights reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package hugolib + +import ( + "fmt" + "strings" + "testing" + + "github.com/gohugoio/hugo/htesting" + + qt "github.com/frankban/quicktest" +) + +func TestI18n(t *testing.T) { + + c := qt.New(t) + + //https://github.com/gohugoio/hugo/issues/7804 + c.Run("pt-br should be case insensitive", func(c *qt.C) { + b := newTestSitesBuilder(c) + langCode := func() string { + c := "pt-br" + if htesting.RandBool() { + c = strings.ToUpper(c) + } + return c + } + + b.WithConfigFile(`toml`, fmt.Sprintf(` +baseURL = "https://example.com" +defaultContentLanguage = "%s" + +[languages] +[languages.%s] +weight = 1 +`, langCode(), langCode())) + + b.WithI18n(fmt.Sprintf("i18n/%s.toml", langCode()), `hello.one = "Hello"`) + b.WithTemplates("index.html", `Hello: {{ i18n "hello" 1 }}`) + b.WithContent("p1.md", "") + b.Build(BuildCfg{}) + + b.AssertFileContent("public/index.html", "Hello: Hello") + }) +} |