Files
utils/slice_test.go
T

51 lines
943 B
Go

// Copyright (C) 2019-2025, Lux Industries, Inc. All rights reserved.
// See the file LICENSE for licensing terms.
package utils
import (
"testing"
"github.com/stretchr/testify/require"
)
func TestDeleteIndex(t *testing.T) {
tests := []struct {
name string
s []int
i int
expected []int
}{
{
name: "delete only element",
s: []int{0},
i: 0,
expected: []int{},
},
{
name: "delete first element",
s: []int{0, 1},
i: 0,
expected: []int{1},
},
{
name: "delete middle element",
s: []int{0, 1, 2, 3},
i: 1,
expected: []int{0, 3, 2},
},
{
name: "delete last element",
s: []int{0, 1, 2, 3},
i: 3,
expected: []int{0, 1, 2},
},
}
for _, test := range tests {
t.Run(test.name, func(t *testing.T) {
s := DeleteIndex(test.s, test.i)
require.Equal(t, test.expected, s)
})
}
}