mirror of
https://github.com/samber/lo.git
synced 2025-09-26 20:11:13 +08:00
fix (#256)
This commit is contained in:
6
slice.go
6
slice.go
@@ -513,10 +513,16 @@ func Slice[T any](collection []T, start int, end int) []T {
|
||||
if start > size {
|
||||
start = size
|
||||
}
|
||||
if start < 0 {
|
||||
start = 0
|
||||
}
|
||||
|
||||
if end > size {
|
||||
end = size
|
||||
}
|
||||
if end < 0 {
|
||||
end = 0
|
||||
}
|
||||
|
||||
return collection[start:end]
|
||||
}
|
||||
|
@@ -623,6 +623,9 @@ func TestSlice(t *testing.T) {
|
||||
out13 := Slice(in, 5, 0)
|
||||
out14 := Slice(in, 6, 4)
|
||||
out15 := Slice(in, 6, 7)
|
||||
out16 := Slice(in, -10, 1)
|
||||
out17 := Slice(in, -1, 3)
|
||||
out18 := Slice(in, -10, 7)
|
||||
|
||||
is.Equal([]int{}, out1)
|
||||
is.Equal([]int{0}, out2)
|
||||
@@ -639,6 +642,9 @@ func TestSlice(t *testing.T) {
|
||||
is.Equal([]int{}, out13)
|
||||
is.Equal([]int{}, out14)
|
||||
is.Equal([]int{}, out15)
|
||||
is.Equal([]int{0}, out16)
|
||||
is.Equal([]int{0, 1, 2}, out17)
|
||||
is.Equal([]int{0, 1, 2, 3, 4}, out18)
|
||||
}
|
||||
|
||||
func TestReplace(t *testing.T) {
|
||||
|
Reference in New Issue
Block a user