goyave.dev/goyave/v4@v4.4.11/util/sliceutil/sliceutil_test.go (about)

     1  package sliceutil
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/stretchr/testify/assert"
     7  )
     8  
     9  func TestContains(t *testing.T) {
    10  	assert.True(t, Contains([]string{"val1", "val2", "val3"}, "val2"))
    11  	assert.False(t, Contains([]string{"val1", "val2", "val3"}, "val4"))
    12  	assert.True(t, Contains([]int{1, 2, 3}, 2))
    13  	assert.False(t, Contains([]int{1, 2, 3}, 4))
    14  	assert.True(t, Contains([]float64{1, 2, 3}, float64(2)))
    15  	assert.False(t, Contains([]float64{1, 2, 3}, 2))
    16  	assert.False(t, Contains([]float64{1, 2, 3}, 4))
    17  }
    18  
    19  func TestIndexOf(t *testing.T) {
    20  	assert.Equal(t, 1, IndexOf([]string{"val1", "val2", "val3"}, "val2"))
    21  	assert.Equal(t, -1, IndexOf([]string{"val1", "val2", "val3"}, "val4"))
    22  	assert.Equal(t, 1, IndexOf([]int{1, 2, 3}, 2))
    23  	assert.Equal(t, -1, IndexOf([]int{1, 2, 3}, 4))
    24  	assert.Equal(t, 1, IndexOf([]float64{1, 2, 3}, float64(2)))
    25  	assert.Equal(t, -1, IndexOf([]float64{1, 2, 3}, 2))
    26  	assert.Equal(t, -1, IndexOf([]float64{1, 2, 3}, 4))
    27  }
    28  
    29  func TestContainsStr(t *testing.T) {
    30  	assert.True(t, ContainsStr([]string{"val1", "val2", "val3"}, "val2"))
    31  	assert.False(t, ContainsStr([]string{"val1", "val2", "val3"}, "val4"))
    32  }
    33  
    34  func TestIndexOfStr(t *testing.T) {
    35  	assert.Equal(t, 1, IndexOfStr([]string{"val1", "val2", "val3"}, "val2"))
    36  	assert.Equal(t, -1, IndexOfStr([]string{"val1", "val2", "val3"}, "val4"))
    37  }
    38  
    39  func TestEqual(t *testing.T) {
    40  	assert.True(t, Equal([]string{"one", "two", "three"}, []string{"one", "two", "three"}))
    41  	assert.True(t, Equal([]int{1, 2, 3}, []int{1, 2, 3}))
    42  	assert.True(t, Equal([]float64{1.1, 2.2, 3.3}, []float64{1.1, 2.2, 3.3}))
    43  
    44  	assert.False(t, Equal([]string{"one", "two", "three"}, []string{"one", "three", "two"}))
    45  	assert.False(t, Equal([]string{"one", "two", "three"}, []string{"one"}))
    46  	assert.False(t, Equal([]string{"one", "two", "three"}, []int{1, 2, 3}))
    47  }