shithub: hugo

Download patch

ref: b3a70abe40ea6acbeb698fb9acaf6055a9e81d63
parent: 7c3dceeaedada1f4e7650864d8e23044c6129e46
author: Bjørn Erik Pedersen <[email protected]>
date: Sat Feb 6 20:45:37 EST 2016

tpl: Complete coverage for Humanize

--- a/tpl/template_funcs_test.go
+++ b/tpl/template_funcs_test.go
@@ -1523,8 +1523,8 @@
 }
 
 func TestHumanize(t *testing.T) {
-	for _, e := range []struct {
-		in, exp string
+	for i, this := range []struct {
+		in, expect interface{}
 	}{
 		{"MyCamelPost", "My camel post"},
 		{"myLowerCamelPost", "My lower camel post"},
@@ -1531,10 +1531,25 @@
 		{"my-dash-post", "My dash post"},
 		{"my_underscore_post", "My underscore post"},
 		{"posts/my-first-post", "Posts/my first post"},
+		{tstNoStringer{}, false},
 	} {
-		res, err := Humanize(e.in)
-		assert.Nil(t, err)
-		assert.Equal(t, e.exp, res)
+
+		result, err := Humanize(this.in)
+
+		if b, ok := this.expect.(bool); ok && !b {
+			if err == nil {
+				t.Errorf("[%d] Humanize didn't return an expected error", i)
+			}
+		} else {
+			if err != nil {
+				t.Errorf("[%d] failed: %s", i, err)
+				continue
+			}
+			if result != this.expect {
+				t.Errorf("[%d] Humanize got %v but expected %v", i, result, this.expect)
+			}
+		}
+
 	}
 }