ensuring metadata gets pulled when creating new content

pull/8/head
Stephen Searles 7 years ago
parent 2595c37b72
commit e6735a3ecc
  1. 15
      content.go
  2. 5
      doc_test.go

@ -59,21 +59,16 @@ func GetContent(siteRoot string, sites *hugolib.HugoSites) ([]Content, error) {
return nil, err return nil, err
} }
pages := sites.Pages()
for _, page := range pages {
if page.Kind == hugolib.KindPage {
for i, file := range files { for i, file := range files {
path := path.Join("content", page.Source.Path()) fn := path.Join(siteRoot, file.Filename)
if file.Filename == path { page := sites.GetContentPage(fn)
if page != nil {
files[i].Metadata = &Metadata{ files[i].Metadata = &Metadata{
Title: page.Title, Title: page.Title,
Path: path, Path: file.Filename,
Date: page.Date, Date: page.Date,
Lastmod: page.Lastmod, Lastmod: page.Lastmod,
} }
break
}
}
} }
} }
@ -110,5 +105,7 @@ func (ch CaddyHugo) NewContent(name, ctype string) (string, error) {
} }
} }
ch.Build()
return filename, nil return filename, nil
} }

@ -115,7 +115,7 @@ func TestPagesInPagesOut(t *testing.T) {
t.Fatalf("couldn't get content from the test environment: %v", err) t.Fatalf("couldn't get content from the test environment: %v", err)
} }
if len(c)-1 != i { if len(c)-1 != i {
t.Fatalf("expected %d page, but saw %d pages", i-1, len(c)) t.Fatalf("expected %d page, but saw %d pages", i+1, len(c))
} }
} }
@ -127,6 +127,9 @@ func TestPagesInPagesOut(t *testing.T) {
} }
for _, content := range c { for _, content := range c {
if content.Metadata == nil {
t.Errorf("didn't see metadata for %q", content.Filename)
}
found[content.Filename] = true found[content.Filename] = true
} }

Loading…
Cancel
Save