Add test for Hugo hanging up with empty content
authorTatsushi Demachi <tdemachi@gmail.com>
Mon, 8 Feb 2016 11:55:19 +0000 (20:55 +0900)
committerTatsushi Demachi <tdemachi@gmail.com>
Mon, 8 Feb 2016 11:55:19 +0000 (20:55 +0900)
This adds a test for the issue #1797 and its fix in 68e2e63.

hugolib/site_test.go

index 68fb5e5fc37e59a90e6b3a04c753d327482ac90d..482e2f791cbbd65e4698be0fc1a387e70d14c129 100644 (file)
@@ -21,6 +21,7 @@ import (
        "path/filepath"
        "strings"
        "testing"
+       "time"
 
        "bitbucket.org/pkg/inflect"
 
@@ -64,6 +65,37 @@ more text
 `
 )
 
+// Issue #1797
+func TestReadPagesFromSourceWithEmptySource(t *testing.T) {
+       viper.Reset()
+       defer viper.Reset()
+
+       viper.Set("DefaultExtension", "html")
+       viper.Set("verbose", true)
+       viper.Set("baseurl", "http://auth/bub")
+
+       sources := []source.ByteSource{}
+
+       s := &Site{
+               Source:  &source.InMemorySource{ByteSource: sources},
+               Targets: targetList{Page: &target.PagePub{UglyURLs: true}},
+       }
+
+       var err error
+       d := time.Second * 2
+       ticker := time.NewTicker(d)
+       select {
+       case err = <-s.ReadPagesFromSource():
+               break
+       case <-ticker.C:
+               err = fmt.Errorf("ReadPagesFromSource() never returns in %s", d.String())
+       }
+       ticker.Stop()
+       if err != nil {
+               t.Fatalf("Unable to read source: %s", err)
+       }
+}
+
 func createAndRenderPages(t *testing.T, s *Site) {
        if err := s.CreatePages(); err != nil {
                t.Fatalf("Unable to create pages: %s", err)