shithub: hugo

Download patch

ref: 49fe04c0bd8111bf686d9205d543f8651ea24cfc
parent: 311593bff013d5b99c68f498861ffde810be71b1
author: Jeff Hodges <[email protected]>
date: Sun Aug 30 11:51:25 EDT 2015

Correct check of published boolean

--- a/hugolib/page.go
+++ b/hugolib/page.go
@@ -514,7 +514,7 @@
 			*draft = cast.ToBool(v)
 		case "published": // Intentionally undocumented
 			published = new(bool)
-			*published = !cast.ToBool(v)
+			*published = cast.ToBool(v)
 		case "layout":
 			p.layout = cast.ToString(v)
 		case "markup":
--- a/hugolib/page_test.go
+++ b/hugolib/page_test.go
@@ -869,6 +869,36 @@
 	}
 }
 
+var PAGE_WITH_PUBLISHED_FALSE = `---
+title: okay
+published: false
+---
+some content
+`
+var PAGE_WITH_PUBLISHED_TRUE = `---
+title: okay
+published: true
+---
+some content
+`
+
+func TestPublishedFrontMatter(t *testing.T) {
+	p, err := NewPageFrom(strings.NewReader(PAGE_WITH_PUBLISHED_FALSE), "content/post/broken.md")
+	if err != nil {
+		t.Fatalf("err during parse: %s", err)
+	}
+	if !p.Draft {
+		t.Errorf("expected true, got %t", p.Draft)
+	}
+	p, err = NewPageFrom(strings.NewReader(PAGE_WITH_PUBLISHED_TRUE), "content/post/broken.md")
+	if err != nil {
+		t.Fatalf("err during parse: %s", err)
+	}
+	if p.Draft {
+		t.Errorf("expected false, got %t", p.Draft)
+	}
+}
+
 func listEqual(left, right []string) bool {
 	if len(left) != len(right) {
 		return false