404 is homeless
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Sun, 28 Jun 2015 08:43:43 +0000 (10:43 +0200)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Sun, 28 Jun 2015 08:43:43 +0000 (10:43 +0200)
Fixes #1235

hugolib/site.go
hugolib/site_test.go

index 0a1e2090e087f15604b5cf947d9447a1cd5a82dc..a4804de95be73763e71ea63cfde5674edf11bae7 100644 (file)
@@ -1314,7 +1314,9 @@ func (s *Site) RenderHomePage() error {
                }
        }
 
+       // TODO(bep) reusing the Home Node smells trouble
        n.URL = helpers.URLize("404.html")
+       n.IsHome = false
        n.Title = "404 Page not found"
        n.Permalink = s.permalink("404.html")
 
index 5acff8c2a2fc85587c173d9b5b050b77fc151b73..6ee9287cfc07430f5c65098e6ba35e34dfdfce12 100644 (file)
@@ -398,9 +398,9 @@ func doTest404ShouldAlwaysHaveUglyUrls(t *testing.T, uglyURLs bool) {
        s.initializeSiteInfo()
        templatePrep(s)
 
-       must(s.addTemplate("index.html", "Home Sweet Home"))
-       must(s.addTemplate("_default/single.html", "{{.Content}}"))
-       must(s.addTemplate("404.html", "Page Not Found"))
+       must(s.addTemplate("index.html", "Home Sweet Home. IsHome={{ .IsHome  }}"))
+       must(s.addTemplate("_default/single.html", "{{.Content}} IsHome={{ .IsHome  }}"))
+       must(s.addTemplate("404.html", "Page Not Found. IsHome={{ .IsHome  }}"))
 
        // make sure the XML files also end up with ugly urls
        must(s.addTemplate("rss.xml", "<root>RSS</root>"))
@@ -421,9 +421,9 @@ func doTest404ShouldAlwaysHaveUglyUrls(t *testing.T, uglyURLs bool) {
                doc      string
                expected string
        }{
-               {filepath.FromSlash("index.html"), "Home Sweet Home"},
-               {filepath.FromSlash(expectedPagePath), "\n\n<h1 id=\"title:5d74edbb89ef198cd37882b687940cda\">title</h1>\n\n<p>some <em>content</em></p>\n"},
-               {filepath.FromSlash("404.html"), "Page Not Found"},
+               {filepath.FromSlash("index.html"), "Home Sweet Home. IsHome=true"},
+               {filepath.FromSlash(expectedPagePath), "\n\n<h1 id=\"title:5d74edbb89ef198cd37882b687940cda\">title</h1>\n\n<p>some <em>content</em></p>\n IsHome=false"},
+               {filepath.FromSlash("404.html"), "Page Not Found. IsHome=false"},
                {filepath.FromSlash("index.xml"), "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\" ?>\n<root>RSS</root>"},
                {filepath.FromSlash("sitemap.xml"), "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\" ?>\n<root>SITEMAP</root>"},
        }