ref: 24351c58bedea72e4e113e2d2e5753a32ce2a0e3
parent: 32d91d616e99cd05b59644e292b29be415d5054f
author: spf13 <steve.francia@gmail.com>
date: Wed Jun 17 06:39:18 EDT 2015
Add tests for homepage content support
--- a/hugolib/site_test.go
+++ b/hugolib/site_test.go
@@ -1,7 +1,6 @@
package hugolib
import (
- "bitbucket.org/pkg/inflect"
"bytes"
"fmt"
"html/template"
@@ -10,6 +9,8 @@
"strings"
"testing"
+ "bitbucket.org/pkg/inflect"
+
"github.com/spf13/afero"
"github.com/spf13/hugo/helpers"
"github.com/spf13/hugo/hugofs"
@@ -870,5 +871,46 @@
if s.Taxonomies["categories"]["e"][0].Page.Title != "bza" { t.Errorf("Pages in unexpected order, 'bza' expected first, got '%v'", s.Taxonomies["categories"]["e"][0].Page.Title)+ }
+}
+
+func TestHomePageContent(t *testing.T) {+ viper.Reset()
+ defer viper.Reset()
+
+ viper.Set("DefaultExtension", "html")+
+ sources := []source.ByteSource{+ {filepath.FromSlash("index.md"), []byte("---\ntitle: homepage\npublishdate: \"2014-05-29\"\n---\n# doc1\n*some content*")},+ {filepath.FromSlash("sect/doc4.md"), []byte("---\ntitle: doc4\npublishdate: \"2012-05-29\"\n---\n# doc4\n*some content*")},+ }
+
+ s := siteFromByteSources(sources)
+
+ templatePrep(s)
+ must(s.addTemplate("_default/single.html", "{{.Content}}"))+
+ createAndRenderPages(t, s)
+ s.RenderHomePage()
+
+ tests := []struct {+ doc string
+ expected string
+ }{+ {filepath.FromSlash("index.html"), "\n\n<h1 id=\"doc1:d680e8a854a7cbad6d490c445cba2eba\">doc1</h1>\n\n<p><em>some content</em></p>\n"},+ {filepath.FromSlash("sect/doc4/index.html"), "\n\n<h1 id=\"doc4:f8e6806123f341b8975509637645a4d3\">doc4</h1>\n\n<p><em>some content</em></p>\n"},+ }
+
+ for _, test := range tests {+ file, err := hugofs.DestinationFS.Open(test.doc)
+ if err != nil {+ t.Fatalf("Did not find %s in target.", test.doc)+ }
+
+ content := helpers.ReaderToString(file)
+
+ if content != test.expected {+ t.Errorf("%s content expected:\n%q\ngot:\n%q", test.doc, test.expected, content)+ }
}
}
--
⑨