mirror of
https://github.com/gohugoio/hugo.git
synced 2024-12-01 15:09:11 -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)
|
conv, err := cast.ToStringE(content)
|
||||||
|
|
||||||
if err != nil {
|
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
|
counter := 0
|
||||||
|
@ -1466,7 +1466,7 @@ func countRunes(content interface{}) (int, error) {
|
||||||
conv, err := cast.ToStringE(content)
|
conv, err := cast.ToStringE(content)
|
||||||
|
|
||||||
if err != nil {
|
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
|
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) {
|
func TestReplace(t *testing.T) {
|
||||||
v, _ := replace("aab", "a", "b")
|
v, _ := replace("aab", "a", "b")
|
||||||
assert.Equal(t, "bbb", v)
|
assert.Equal(t, "bbb", v)
|
||||||
|
|
Loading…
Reference in a new issue