add stringx.FirstN with ellipsis (#916)

This commit is contained in:
Kevin Wan
2021-08-16 12:08:33 +08:00
committed by GitHub
parent e77747cff8
commit c7f5aad83a
2 changed files with 26 additions and 7 deletions

View File

@@ -94,10 +94,11 @@ func TestFilter(t *testing.T) {
func TestFirstN(t *testing.T) {
tests := []struct {
name string
input string
n int
expect string
name string
input string
n int
ellipsis string
expect string
}{
{
name: "english string",
@@ -105,6 +106,13 @@ func TestFirstN(t *testing.T) {
n: 8,
expect: "anything",
},
{
name: "english string with ellipsis",
input: "anything that we use",
n: 8,
ellipsis: "...",
expect: "anything...",
},
{
name: "english string more",
input: "anything that we use",
@@ -117,6 +125,13 @@ func TestFirstN(t *testing.T) {
n: 2,
expect: "我是",
},
{
name: "chinese string with ellipsis",
input: "我是中国人",
n: 2,
ellipsis: "...",
expect: "我是...",
},
{
name: "chinese string",
input: "我是中国人",
@@ -127,7 +142,7 @@ func TestFirstN(t *testing.T) {
for _, test := range tests {
t.Run(test.name, func(t *testing.T) {
assert.Equal(t, test.expect, FirstN(test.input, test.n))
assert.Equal(t, test.expect, FirstN(test.input, test.n, test.ellipsis))
})
}
}