1
0
mirror of https://github.com/duke-git/lancet.git synced 2026-02-09 15:12:26 +08:00

feat: add ToSlice and ToSlicePointer and AppendIfAbsent

This commit is contained in:
dudaodong
2022-07-27 15:12:14 +08:00
parent 683def2242
commit 0cb251f7b8
2 changed files with 66 additions and 21 deletions

View File

@@ -592,3 +592,35 @@ func TestLastIndexOf(t *testing.T) {
assert.Equal(1, LastIndexOf(arr, "a"))
assert.Equal(-1, LastIndexOf(arr, "d"))
}
func TestToSlice(t *testing.T) {
assert := internal.NewAssert(t, "TestToSlice")
str1 := "a"
str2 := "b"
out1 := ToSlice(str1)
out2 := ToSlice(str1, str2)
assert.Equal([]string{"a"}, StringSlice(out1))
assert.Equal([]string{"a", "b"}, StringSlice(out2))
}
func TestToSlicePointer(t *testing.T) {
assert := internal.NewAssert(t, "TestToSlicePointer")
var str1 interface{}
str1 = "a"
var str2 interface{}
str2 = "b"
assert.Equal([]*interface{}{&str1}, ToSlicePointer(str1))
assert.Equal([]*interface{}{&str1, &str2}, ToSlicePointer(str1, str2))
}
func TestToAppendIfAbsent(t *testing.T) {
assert := internal.NewAssert(t, "TestToAppendIfAbsent")
str1 := []string{"a", "b"}
assert.Equal([]string{"a", "b"}, AppendIfAbsent(str1, "a"))
assert.Equal([]string{"a", "b", "c"}, AppendIfAbsent(str1, "c"))
}