mirror of
https://github.com/gohugoio/hugo.git
synced 2024-12-24 01:01:41 +00:00
Fix permalink functionality, which was broken in 62dd1d4
.
Viper stores Permalinks as a map[string]interface{}, so the type assertion to PermalinkOverrides (map[string]PathPattern) will always fail. We can, however, get Permalinks as a map[string]string, and convert each value to a PathPattern.
This commit is contained in:
parent
05b76dcb6f
commit
025a37df2f
2 changed files with 15 additions and 3 deletions
|
@ -265,9 +265,9 @@ func (s *Site) initializeSiteInfo() {
|
|||
params = make(map[string]interface{})
|
||||
}
|
||||
|
||||
permalinks, ok := viper.Get("Permalinks").(PermalinkOverrides)
|
||||
if !ok {
|
||||
permalinks = make(PermalinkOverrides)
|
||||
permalinks := make(PermalinkOverrides)
|
||||
for k, v := range viper.GetStringMapString("Permalinks") {
|
||||
permalinks[k] = PathPattern(v)
|
||||
}
|
||||
|
||||
s.Info = SiteInfo{
|
||||
|
|
|
@ -30,3 +30,15 @@ func TestSiteInfoParams(t *testing.T) {
|
|||
t.Errorf("Expected FOOBAR_PARAM: got %s", buf.String())
|
||||
}
|
||||
}
|
||||
|
||||
func TestSiteInfoPermalinks (t *testing.T) {
|
||||
viper.Set("Permalinks", map[string]interface{}{"section": "/:title"})
|
||||
s := &Site{}
|
||||
|
||||
s.initialize()
|
||||
permalink := s.Info.Permalinks["section"]
|
||||
|
||||
if permalink != "/:title" {
|
||||
t.Errorf("Could not set permalink (%#v)", permalink)
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue