From b3a70abe40ea6acbeb698fb9acaf6055a9e81d63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Erik=20Pedersen?= Date: Sun, 7 Feb 2016 01:45:37 +0100 Subject: [PATCH] tpl: Complete coverage for Humanize --- tpl/template_funcs_test.go | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/tpl/template_funcs_test.go b/tpl/template_funcs_test.go index 1c4daf844..c1e8f3f94 100644 --- a/tpl/template_funcs_test.go +++ b/tpl/template_funcs_test.go @@ -1523,18 +1523,33 @@ func TestChomp(t *testing.T) { } 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"}, {"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) + } + } + } }