blob: ddefe7917005111a8befccc593d92d3dddd82f11 [file] [log] [blame]
package good
import (
"testing"
)
func TestRuneLen(t *testing.T) {
cases := []struct {
s string
byteLength int
runeLength int
}{
{"résumé", 8, 6},
{"résumé – new", 16, 12},
}
for _, c := range cases {
if len(c.s) != c.byteLength {
t.Errorf("len(%q) != %d", c.s, c.byteLength)
}
if RuneLen(c.s) != c.runeLength {
t.Errorf("RuneLen(%q) != %d", c.s, c.runeLength)
}
}
}
func BenchmarkRuneLenResume(b *testing.B) {
for i := 0; i < b.N; i++ {
RuneLen("résumé")
}
}
func BenchmarkRuneLenResumeNew(b *testing.B) {
for i := 0; i < b.N; i++ {
RuneLen("résumé – new")
}
}