create: Allow empty dates in archetype in new
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Thu, 15 Dec 2016 08:27:30 +0000 (09:27 +0100)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Thu, 15 Dec 2016 08:27:30 +0000 (09:27 +0100)
To make it behave the same as Hugo 0.17.

create/content.go
create/content_test.go

index 08094f26100f68817c375ea63427454524fccf73..d939cb6bf627584ead789719c223e6f2eb2de49e 100644 (file)
@@ -110,6 +110,9 @@ func createMetadata(archetype parser.Page, name string) (map[string]interface{},
        var date time.Time
 
        for k, v := range metadata {
+               if v == "" {
+                       continue
+               }
                lk := strings.ToLower(k)
                switch lk {
                case "date":
index 279587258ef857150c8928e8f0f6b92f2206eae3..cdee13fb8d6cc33988fac996268f79bac793c585 100644 (file)
@@ -42,6 +42,7 @@ func TestNewContent(t *testing.T) {
                expected []string
        }{
                {"post", "post/sample-1.md", []string{`title = "Post Arch title"`, `test = "test1"`, "date = \"2015-01-12T19:20:04-07:00\""}},
+               {"emptydate", "post/sample-ed.md", []string{`title = "Empty Date Arch title"`, `test = "test1"`}},
                {"stump", "stump/sample-2.md", []string{`title = "sample 2"`}},     // no archetype file
                {"", "sample-3.md", []string{`title = "sample 3"`}},                // no archetype
                {"product", "product/sample-4.md", []string{`title = "sample 4"`}}, // empty archetype front matter
@@ -105,6 +106,10 @@ func initFs() error {
                        path:    filepath.Join("archetypes", "product.md"),
                        content: "+++\n+++\n",
                },
+               {
+                       path:    filepath.Join("archetypes", "emptydate.md"),
+                       content: "+++\ndate =\"\"\ntitle = \"Empty Date Arch title\"\ntest = \"test1\"\n+++\n",
+               },
        } {
                f, err := hugofs.Source().Create(v.path)
                if err != nil {