1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- package slice
- import (
- "strconv"
- "strings"
- "testing"
- )
- func TestRemoveRepeatElement(t *testing.T) {
- strSlice := []string{"1", "2", "1", "3", "2", "4", "3"}
- intSlice := []int{1, 2, 1, 3, 2, 4, 3}
- strSliceRemovedRepeatElement := RemoveRepeatElement(strSlice)
- if strSliceRemovedRepeatElement[0] != "1" ||
- strSliceRemovedRepeatElement[1] != "2" ||
- strSliceRemovedRepeatElement[2] != "3" ||
- strSliceRemovedRepeatElement[3] != "4" {
- t.Fatal("字符串slice移除元素后不正确")
- }
- intSliceRemovedRepeatElement := RemoveRepeatElement(intSlice)
- if intSliceRemovedRepeatElement[0] != 1 ||
- intSliceRemovedRepeatElement[1] != 2 ||
- intSliceRemovedRepeatElement[2] != 3 ||
- intSliceRemovedRepeatElement[3] != 4 {
- t.Fatal("整型slice移除元素后不正确")
- }
- }
- func TestToMap(t *testing.T) {
- testSlice := []string{"1::one", "2::two"}
- resultMap, err := ToMap(testSlice, func(v string) (int, string, error) {
- parts := strings.Split(v, "::")
- key, err := strconv.Atoi(parts[0])
- if err != nil {
- return 0, "", err
- }
- return key, parts[1], nil
- })
- if err != nil {
- t.Fatal(err)
- }
- if resultMap[1] != "one" || resultMap[2] != "two" {
- t.Fatal("Map生成错误")
- }
- }
|