mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-07 20:30:36 -05:00
helpers: Properly handle []interface{} as staticDir
And now with a proper integration test ...
This commit is contained in:
parent
adbd5bc47f
commit
118b83d74b
2 changed files with 12 additions and 3 deletions
|
@ -18,6 +18,7 @@ import (
|
|||
|
||||
"github.com/gohugoio/hugo/config"
|
||||
"github.com/gohugoio/hugo/hugofs"
|
||||
"github.com/spf13/cast"
|
||||
)
|
||||
|
||||
// PathSpec holds methods that decides how paths in URLs and files in Hugo should look like.
|
||||
|
@ -106,7 +107,7 @@ func NewPathSpec(fs *hugofs.Fs, cfg config.Provider) (*PathSpec, error) {
|
|||
|
||||
func getStringOrStringSlice(cfg config.Provider, key string, id int) []string {
|
||||
|
||||
if id > 0 {
|
||||
if id >= 0 {
|
||||
key = fmt.Sprintf("%s%d", key, id)
|
||||
}
|
||||
|
||||
|
@ -116,8 +117,8 @@ func getStringOrStringSlice(cfg config.Provider, key string, id int) []string {
|
|||
|
||||
if sds, ok := sd.(string); ok {
|
||||
out = []string{sds}
|
||||
} else if sdsl, ok := sd.([]string); ok {
|
||||
out = sdsl
|
||||
} else if sd != nil {
|
||||
out = cast.ToStringSlice(sd)
|
||||
}
|
||||
|
||||
return out
|
||||
|
|
|
@ -15,6 +15,7 @@ paginate = 1
|
|||
disablePathToLower = true
|
||||
defaultContentLanguage = "{{ .DefaultContentLanguage }}"
|
||||
defaultContentLanguageInSubdir = {{ .DefaultContentLanguageInSubdir }}
|
||||
staticDir = ["s1", "s2"]
|
||||
|
||||
[permalinks]
|
||||
other = "/somewhere/else/:filename"
|
||||
|
@ -24,18 +25,21 @@ tag = "tags"
|
|||
|
||||
[Languages]
|
||||
[Languages.en]
|
||||
staticDir2 = ["ens1", "ens2"]
|
||||
baseURL = "https://example.com"
|
||||
weight = 10
|
||||
title = "In English"
|
||||
languageName = "English"
|
||||
|
||||
[Languages.fr]
|
||||
staticDir2 = ["frs1", "frs2"]
|
||||
baseURL = "https://example.fr"
|
||||
weight = 20
|
||||
title = "Le Français"
|
||||
languageName = "Français"
|
||||
|
||||
[Languages.nn]
|
||||
staticDir2 = ["nns1", "nns2"]
|
||||
baseURL = "https://example.no"
|
||||
weight = 30
|
||||
title = "På nynorsk"
|
||||
|
@ -57,12 +61,16 @@ languageName = "Nynorsk"
|
|||
|
||||
s1 := sites.Sites[0]
|
||||
|
||||
assert.Equal([]string{"s1", "s2", "ens1", "ens2"}, s1.StaticDirs())
|
||||
|
||||
s1h := s1.getPage(KindHome)
|
||||
assert.True(s1h.IsTranslated())
|
||||
assert.Len(s1h.Translations(), 2)
|
||||
assert.Equal("https://example.com/", s1h.Permalink())
|
||||
|
||||
s2 := sites.Sites[1]
|
||||
assert.Equal([]string{"s1", "s2", "frs1", "frs2"}, s2.StaticDirs())
|
||||
|
||||
s2h := s2.getPage(KindHome)
|
||||
assert.Equal("https://example.fr/", s2h.Permalink())
|
||||
|
||||
|
|
Loading…
Reference in a new issue