add unit test
This commit is contained in:
@@ -0,0 +1,132 @@
|
||||
package utils
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestInt64SliceEquals_Equals(t *testing.T) {
|
||||
s1 := []int64{0, 1, 2, 3}
|
||||
s2 := []int64{0, 1, 2, 3}
|
||||
expectedValue := true
|
||||
actualValue := Int64SliceEquals(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
}
|
||||
|
||||
func TestInt64SliceEquals_NotEquals(t *testing.T) {
|
||||
s1 := []int64{0, 1, 2, 3}
|
||||
s2 := []int64{0, 1, 3, 2}
|
||||
expectedValue := false
|
||||
actualValue := Int64SliceEquals(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
|
||||
s1 = []int64{0, 1, 2, 3}
|
||||
s2 = []int64{0}
|
||||
expectedValue = false
|
||||
actualValue = Int64SliceEquals(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
|
||||
s1 = []int64{0, 1, 2, 3}
|
||||
s2 = []int64{}
|
||||
expectedValue = false
|
||||
actualValue = Int64SliceEquals(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
}
|
||||
|
||||
func TestInt64SliceEquals_NilOrEmpty(t *testing.T) {
|
||||
var s1 []int64 = nil
|
||||
s2 := []int64{0, 1, 2, 3}
|
||||
expectedValue := false
|
||||
actualValue := Int64SliceEquals(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
|
||||
s1 = []int64{0, 1, 2, 3}
|
||||
s2 = nil
|
||||
expectedValue = false
|
||||
actualValue = Int64SliceEquals(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
|
||||
s1 = nil
|
||||
s2 = nil
|
||||
expectedValue = true
|
||||
actualValue = Int64SliceEquals(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
|
||||
s1 = []int64{}
|
||||
s2 = []int64{}
|
||||
expectedValue = true
|
||||
actualValue = Int64SliceEquals(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
}
|
||||
|
||||
func TestInt64SliceMinus(t *testing.T) {
|
||||
s1 := []int64{0, 1, 2, 3}
|
||||
s2 := []int64{0, 1, 2, 3}
|
||||
expectedValue := []int64{}
|
||||
actualValue := Int64SliceMinus(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
|
||||
s1 = []int64{0, 1, 2, 3}
|
||||
s2 = []int64{0, 2}
|
||||
expectedValue = []int64{1, 3}
|
||||
actualValue = Int64SliceMinus(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
|
||||
s1 = []int64{0, 1, 2, 3}
|
||||
s2 = []int64{}
|
||||
expectedValue = []int64{0, 1, 2, 3}
|
||||
actualValue = Int64SliceMinus(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
|
||||
s1 = []int64{}
|
||||
s2 = []int64{0, 1, 2, 3}
|
||||
expectedValue = []int64{}
|
||||
actualValue = Int64SliceMinus(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
|
||||
s1 = []int64{0, 1, 2, 3}
|
||||
s2 = []int64{1, 2, 3, 4}
|
||||
expectedValue = []int64{0}
|
||||
actualValue = Int64SliceMinus(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
}
|
||||
|
||||
func TestInt64SliceMinus_NilOrEmpty(t *testing.T) {
|
||||
var s1 []int64 = nil
|
||||
s2 := []int64{0, 1, 2, 3}
|
||||
var expectedValue []int64 = nil
|
||||
actualValue := Int64SliceMinus(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
|
||||
s1 = []int64{0, 1, 2, 3}
|
||||
s2 = nil
|
||||
expectedValue = []int64{0, 1, 2, 3}
|
||||
actualValue = Int64SliceMinus(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
|
||||
s1 = nil
|
||||
s2 = nil
|
||||
expectedValue = nil
|
||||
actualValue = Int64SliceMinus(s1, s2)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
}
|
||||
|
||||
func TestToUniqueInt64Slice(t *testing.T) {
|
||||
arr := []int64{0, 1, 2, 3, 2, 4, 0}
|
||||
expectedValue := []int64{0, 1, 2, 3, 4}
|
||||
actualValue := ToUniqueInt64Slice(arr)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
}
|
||||
|
||||
func TestToUniqueInt64Slice_NilOrEmpty(t *testing.T) {
|
||||
var arr []int64 = nil
|
||||
expectedValue := []int64{}
|
||||
actualValue := ToUniqueInt64Slice(arr)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
|
||||
arr = []int64{}
|
||||
expectedValue = []int64{}
|
||||
actualValue = ToUniqueInt64Slice(arr)
|
||||
assert.Equal(t, expectedValue, actualValue)
|
||||
}
|
||||
Reference in New Issue
Block a user