Skip to content

Commit 9b7f561

Browse files
committed
refactor
1 parent 3061938 commit 9b7f561

4 files changed

+30
-23
lines changed

funcs_conversion.go

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package handy
2+
3+
func ToList[T any](e Iterable[T]) *List[T] {
4+
l := NewList[T]()
5+
for each := range e.Iter() {
6+
l.Add(each)
7+
}
8+
return l
9+
}

funcs_conversion_test.go

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
package handy
2+
3+
import (
4+
"slices"
5+
"testing"
6+
)
7+
8+
func TestToList(t *testing.T) {
9+
list := NewList(1, 2, 3, 4, 5)
10+
newList := ToList[int](list.Filter(func(each int) bool {
11+
return each%2 == 0
12+
}))
13+
actual := []int{}
14+
for v := range newList.Iter() {
15+
actual = append(actual, v)
16+
}
17+
expect := []int{2, 4}
18+
if !slices.Equal(expect, actual) {
19+
t.Fatalf("test ToList, expect: %v, actual: %v", expect, actual)
20+
}
21+
}

funcs_transformation.go

-8
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,3 @@ func TransformExpand[In any, Out any](e Iterable[In], transformer func(In) Itera
2727
}
2828
return NewEnumerator(seq)
2929
}
30-
31-
func ToList[T any](e Iterable[T]) *List[T] {
32-
l := NewList[T]()
33-
for each := range e.Iter() {
34-
l.Add(each)
35-
}
36-
return l
37-
}

funcs_transformation_test.go

-15
Original file line numberDiff line numberDiff line change
@@ -40,18 +40,3 @@ func TestTransformExpand(t *testing.T) {
4040
break
4141
}
4242
}
43-
44-
func TestToList(t *testing.T) {
45-
list := NewList(1, 2, 3, 4, 5)
46-
newList := ToList[int](list.Filter(func(each int) bool {
47-
return each%2 == 0
48-
}))
49-
actual := []int{}
50-
for v := range newList.Iter() {
51-
actual = append(actual, v)
52-
}
53-
expect := []int{2, 4}
54-
if !slices.Equal(expect, actual) {
55-
t.Fatalf("test ToList, expect: %v, actual: %v", expect, actual)
56-
}
57-
}

0 commit comments

Comments
 (0)