mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-21 20:46:30 -05:00
tpl: Add tests for word and rune counting
This commit is contained in:
parent
ec49dbb8f5
commit
0888ddd01f
2 changed files with 28 additions and 2 deletions
|
@ -1445,7 +1445,7 @@ func countWords(content interface{}) (int, error) {
|
|||
conv, err := cast.ToStringE(content)
|
||||
|
||||
if err != nil {
|
||||
return 0, errors.New("Failed to convert content to string: " + err.Error())
|
||||
return 0, fmt.Errorf("Failed to convert content to string: %s", err.Error())
|
||||
}
|
||||
|
||||
counter := 0
|
||||
|
@ -1466,7 +1466,7 @@ func countRunes(content interface{}) (int, error) {
|
|||
conv, err := cast.ToStringE(content)
|
||||
|
||||
if err != nil {
|
||||
return 0, errors.New("Failed to convert content to string: " + err.Error())
|
||||
return 0, fmt.Errorf("Failed to convert content to string: %s", err.Error())
|
||||
}
|
||||
|
||||
counter := 0
|
||||
|
|
|
@ -1559,6 +1559,32 @@ func TestInflect(t *testing.T) {
|
|||
}
|
||||
}
|
||||
|
||||
func TestCounterFuncs(t *testing.T) {
|
||||
for i, this := range []struct {
|
||||
countFunc func(i interface{}) (int, error)
|
||||
in string
|
||||
expected int
|
||||
}{
|
||||
{countWords, "Do Be Do Be Do", 5},
|
||||
{countWords, "旁边", 2},
|
||||
{countRunes, "旁边", 2},
|
||||
} {
|
||||
|
||||
result, err := this.countFunc(this.in)
|
||||
|
||||
if err != nil {
|
||||
t.Errorf("[%d] Unexpected counter error: %s", i, err)
|
||||
} else if result != this.expected {
|
||||
t.Errorf("[%d] Count method error, got %v expected %v", i, result, this.expected)
|
||||
}
|
||||
|
||||
_, err = this.countFunc(t)
|
||||
if err == nil {
|
||||
t.Errorf("[%d] Expected Count error", i)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestReplace(t *testing.T) {
|
||||
v, _ := replace("aab", "a", "b")
|
||||
assert.Equal(t, "bbb", v)
|
||||
|
|
Loading…
Reference in a new issue