zk/util/strings/strings_test.go

35 lines
832 B
Go
Raw Normal View History

package strings
import (
"testing"
2021-01-10 15:39:10 +00:00
"github.com/mickael-menu/zk/util/test/assert"
)
func TestPrepend(t *testing.T) {
test := func(text string, prefix string, expected string) {
assert.Equal(t, Prepend(text, prefix), expected)
}
test("", "> ", "")
test("One line", "> ", "> One line")
test("One line\nTwo lines", "> ", "> One line\n> Two lines")
test("One line\nTwo lines\nThree lines", "> ", "> One line\n> Two lines\n> Three lines")
test("Newline\n", "> ", "> Newline\n")
}
func TestPluralize(t *testing.T) {
test := func(word string, count int, expected string) {
assert.Equal(t, Pluralize(word, count), expected)
}
test("", 1, "")
test("", 2, "")
test("word", -2, "words")
test("word", -1, "word")
test("word", 0, "word")
test("word", 1, "word")
test("word", 2, "words")
test("word", 1000, "words")
}