Skip to content

Commit

Permalink
Fix RSS Title regression
Browse files Browse the repository at this point in the history
And add tests to make sure it doesn't happen again.

Fixes #2645
  • Loading branch information
bep committed Oct 28, 2016
1 parent 342b6fe commit 6a3d103
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 26 deletions.
35 changes: 9 additions & 26 deletions hugolib/rss_test.go
Expand Up @@ -20,44 +20,27 @@ import (
"github.com/spf13/viper"
)

const rssTemplate = `<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>{{ .Title }} on {{ .Site.Title }} </title>
<link>{{ .Permalink }}</link>
<language>en-us</language>
<author>Steve Francia</author>
<rights>Francia; all rights reserved.</rights>
<updated>{{ .Date }}</updated>
{{ range .Data.Pages }}
<item>
<title>{{ .Title }}</title>
<link>{{ .Permalink }}</link>
<pubDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 MST" }}</pubDate>
<author>Steve Francia</author>
<guid>{{ .Permalink }}</guid>
<description>{{ .Content | html }}</description>
</item>
{{ end }}
</channel>
</rss>`

func TestRSSOutput(t *testing.T) {
testCommonResetState()

rssURI := "public/customrss.xml"
rssURI := "customrss.xml"
viper.Set("baseURL", "http://auth/bub/")
viper.Set("rssURI", rssURI)
viper.Set("title", "RSSTest")

for _, s := range weightedSources {
writeSource(t, filepath.Join("content", s.Name), string(s.Content))
writeSource(t, filepath.Join("content", "sect", s.Name), string(s.Content))
}

writeSource(t, filepath.Join("layouts", "rss.xml"), rssTemplate)

if err := buildAndRenderSite(newSiteDefaultLang()); err != nil {
t.Fatalf("Failed to build site: %s", err)
}

assertFileContent(t, filepath.Join("public", rssURI), true, "<?xml", "rss version")
// Home RSS
assertFileContent(t, filepath.Join("public", rssURI), true, "<?xml", "rss version", "RSSTest")
// Section RSS
assertFileContent(t, filepath.Join("public", "sect", rssURI), true, "<?xml", "rss version", "Sects on RSSTest")
// Taxonomy RSS
assertFileContent(t, filepath.Join("public", "categories", "hugo", rssURI), true, "<?xml", "rss version", "Hugo on RSSTest")

}
2 changes: 2 additions & 0 deletions hugolib/site.go
Expand Up @@ -1883,6 +1883,7 @@ func taxonomyRenderer(prepare bool, s *Site, taxes <-chan taxRenderInfo, results
if !viper.GetBool("disableRSS") {
// XML Feed
rssNode := s.newNode(fmt.Sprintf("%s-%s-rss", t.plural, t.key))
rssNode.Title = n.Title
rssURI := viper.GetString("rssURI")
s.setURLs(rssNode, base+"/"+rssURI)
rssNode.Data = n.Data
Expand Down Expand Up @@ -2016,6 +2017,7 @@ func (s *Site) renderSectionLists(prepare bool) error {
// XML Feed
rssURI := viper.GetString("rssURI")
rssNode := s.newSectionListNode(true, sectionName+"-rss", section, data, 0)
rssNode.Title = n.Title
s.setURLs(rssNode, section+"/"+rssURI)
rssLayouts := []string{"section/" + section + ".rss.xml", "_default/rss.xml", "rss.xml", "_internal/_default/rss.xml"}
if err := s.renderAndWriteXML("section "+section+" rss", rssNode.addLangPathPrefix(section+"/"+rssURI), rssNode, s.appendThemeTemplates(rssLayouts)...); err != nil {
Expand Down
1 change: 1 addition & 0 deletions hugolib/site_test.go
Expand Up @@ -623,6 +623,7 @@ date = "2012-01-01"
publishdate = "2012-01-01"
my_param = "baz"
my_date = 2010-05-27T07:32:00Z
categories = [ "hugo" ]
+++
Front Matter with Ordered Pages 4. This is longer content`)

Expand Down

0 comments on commit 6a3d103

Please sign in to comment.