add more unit testing cases for package garray

This commit is contained in:
John
2020-02-25 23:19:37 +08:00
parent 9882b361a8
commit 816e075c52
6 changed files with 168 additions and 0 deletions

View File

@ -192,6 +192,34 @@ func TestArray_Chunk(t *testing.T) {
gtest.Assert(chunks[2], []interface{}{5})
gtest.Assert(array1.Chunk(0), nil)
})
gtest.Case(t, func() {
a1 := []interface{}{1, 2, 3, 4, 5}
array1 := garray.NewArrayFrom(a1)
chunks := array1.Chunk(3)
gtest.Assert(len(chunks), 2)
gtest.Assert(chunks[0], []interface{}{1, 2, 3})
gtest.Assert(chunks[1], []interface{}{4, 5})
gtest.Assert(array1.Chunk(0), nil)
})
gtest.Case(t, func() {
a1 := []interface{}{1, 2, 3, 4, 5, 6}
array1 := garray.NewArrayFrom(a1)
chunks := array1.Chunk(2)
gtest.Assert(len(chunks), 3)
gtest.Assert(chunks[0], []interface{}{1, 2})
gtest.Assert(chunks[1], []interface{}{3, 4})
gtest.Assert(chunks[2], []interface{}{5, 6})
gtest.Assert(array1.Chunk(0), nil)
})
gtest.Case(t, func() {
a1 := []interface{}{1, 2, 3, 4, 5, 6}
array1 := garray.NewArrayFrom(a1)
chunks := array1.Chunk(3)
gtest.Assert(len(chunks), 2)
gtest.Assert(chunks[0], []interface{}{1, 2, 3})
gtest.Assert(chunks[1], []interface{}{4, 5, 6})
gtest.Assert(array1.Chunk(0), nil)
})
}
func TestArray_Pad(t *testing.T) {

View File

@ -180,6 +180,34 @@ func TestIntArray_Chunk(t *testing.T) {
gtest.Assert(chunks[2], []int{5})
gtest.Assert(array1.Chunk(0), nil)
})
gtest.Case(t, func() {
a1 := []int{1, 2, 3, 4, 5}
array1 := garray.NewIntArrayFrom(a1)
chunks := array1.Chunk(3)
gtest.Assert(len(chunks), 2)
gtest.Assert(chunks[0], []int{1, 2, 3})
gtest.Assert(chunks[1], []int{4, 5})
gtest.Assert(array1.Chunk(0), nil)
})
gtest.Case(t, func() {
a1 := []int{1, 2, 3, 4, 5, 6}
array1 := garray.NewIntArrayFrom(a1)
chunks := array1.Chunk(2)
gtest.Assert(len(chunks), 3)
gtest.Assert(chunks[0], []int{1, 2})
gtest.Assert(chunks[1], []int{3, 4})
gtest.Assert(chunks[2], []int{5, 6})
gtest.Assert(array1.Chunk(0), nil)
})
gtest.Case(t, func() {
a1 := []int{1, 2, 3, 4, 5, 6}
array1 := garray.NewIntArrayFrom(a1)
chunks := array1.Chunk(3)
gtest.Assert(len(chunks), 2)
gtest.Assert(chunks[0], []int{1, 2, 3})
gtest.Assert(chunks[1], []int{4, 5, 6})
gtest.Assert(array1.Chunk(0), nil)
})
}
func TestIntArray_Pad(t *testing.T) {

View File

@ -179,6 +179,34 @@ func TestStrArray_Chunk(t *testing.T) {
gtest.Assert(chunks[2], []string{"5"})
gtest.Assert(len(array1.Chunk(0)), 0)
})
gtest.Case(t, func() {
a1 := []string{"1", "2", "3", "4", "5"}
array1 := garray.NewStrArrayFrom(a1)
chunks := array1.Chunk(3)
gtest.Assert(len(chunks), 2)
gtest.Assert(chunks[0], []string{"1", "2", "3"})
gtest.Assert(chunks[1], []string{"4", "5"})
gtest.Assert(array1.Chunk(0), nil)
})
gtest.Case(t, func() {
a1 := []string{"1", "2", "3", "4", "5", "6"}
array1 := garray.NewStrArrayFrom(a1)
chunks := array1.Chunk(2)
gtest.Assert(len(chunks), 3)
gtest.Assert(chunks[0], []string{"1", "2"})
gtest.Assert(chunks[1], []string{"3", "4"})
gtest.Assert(chunks[2], []string{"5", "6"})
gtest.Assert(array1.Chunk(0), nil)
})
gtest.Case(t, func() {
a1 := []string{"1", "2", "3", "4", "5", "6"}
array1 := garray.NewStrArrayFrom(a1)
chunks := array1.Chunk(3)
gtest.Assert(len(chunks), 2)
gtest.Assert(chunks[0], []string{"1", "2", "3"})
gtest.Assert(chunks[1], []string{"4", "5", "6"})
gtest.Assert(array1.Chunk(0), nil)
})
}
func TestStrArray_Pad(t *testing.T) {

View File

@ -326,6 +326,34 @@ func TestSortedArray_Chunk(t *testing.T) {
i1 = array1.Chunk(0)
gtest.Assert(len(i1), 0)
})
gtest.Case(t, func() {
a1 := []interface{}{1, 2, 3, 4, 5}
array1 := garray.NewSortedArrayFrom(a1, gutil.ComparatorInt)
chunks := array1.Chunk(3)
gtest.Assert(len(chunks), 2)
gtest.Assert(chunks[0], []interface{}{1, 2, 3})
gtest.Assert(chunks[1], []interface{}{4, 5})
gtest.Assert(array1.Chunk(0), nil)
})
gtest.Case(t, func() {
a1 := []interface{}{1, 2, 3, 4, 5, 6}
array1 := garray.NewSortedArrayFrom(a1, gutil.ComparatorInt)
chunks := array1.Chunk(2)
gtest.Assert(len(chunks), 3)
gtest.Assert(chunks[0], []interface{}{1, 2})
gtest.Assert(chunks[1], []interface{}{3, 4})
gtest.Assert(chunks[2], []interface{}{5, 6})
gtest.Assert(array1.Chunk(0), nil)
})
gtest.Case(t, func() {
a1 := []interface{}{1, 2, 3, 4, 5, 6}
array1 := garray.NewSortedArrayFrom(a1, gutil.ComparatorInt)
chunks := array1.Chunk(3)
gtest.Assert(len(chunks), 2)
gtest.Assert(chunks[0], []interface{}{1, 2, 3})
gtest.Assert(chunks[1], []interface{}{4, 5, 6})
gtest.Assert(array1.Chunk(0), nil)
})
}
func TestSortedArray_SubSlice(t *testing.T) {

View File

@ -268,6 +268,34 @@ func TestSortedIntArray_Chunk(t *testing.T) {
gtest.Assert(ns1[2], []int{5})
gtest.Assert(len(ns2), 0)
})
gtest.Case(t, func() {
a1 := []int{1, 2, 3, 4, 5}
array1 := garray.NewSortedIntArrayFrom(a1)
chunks := array1.Chunk(3)
gtest.Assert(len(chunks), 2)
gtest.Assert(chunks[0], []int{1, 2, 3})
gtest.Assert(chunks[1], []int{4, 5})
gtest.Assert(array1.Chunk(0), nil)
})
gtest.Case(t, func() {
a1 := []int{1, 2, 3, 4, 5, 6}
array1 := garray.NewSortedIntArrayFrom(a1)
chunks := array1.Chunk(2)
gtest.Assert(len(chunks), 3)
gtest.Assert(chunks[0], []int{1, 2})
gtest.Assert(chunks[1], []int{3, 4})
gtest.Assert(chunks[2], []int{5, 6})
gtest.Assert(array1.Chunk(0), nil)
})
gtest.Case(t, func() {
a1 := []int{1, 2, 3, 4, 5, 6}
array1 := garray.NewSortedIntArrayFrom(a1)
chunks := array1.Chunk(3)
gtest.Assert(len(chunks), 2)
gtest.Assert(chunks[0], []int{1, 2, 3})
gtest.Assert(chunks[1], []int{4, 5, 6})
gtest.Assert(array1.Chunk(0), nil)
})
}
func TestSortedIntArray_SubSlice(t *testing.T) {

View File

@ -334,6 +334,34 @@ func TestSortedStrArray_Chunk(t *testing.T) {
gtest.Assert(array2[1], []string{"c", "d"})
gtest.Assert(array1.Chunk(0), nil)
})
gtest.Case(t, func() {
a1 := []string{"1", "2", "3", "4", "5"}
array1 := garray.NewSortedStrArrayFrom(a1)
chunks := array1.Chunk(3)
gtest.Assert(len(chunks), 2)
gtest.Assert(chunks[0], []string{"1", "2", "3"})
gtest.Assert(chunks[1], []string{"4", "5"})
gtest.Assert(array1.Chunk(0), nil)
})
gtest.Case(t, func() {
a1 := []string{"1", "2", "3", "4", "5", "6"}
array1 := garray.NewSortedStrArrayFrom(a1)
chunks := array1.Chunk(2)
gtest.Assert(len(chunks), 3)
gtest.Assert(chunks[0], []string{"1", "2"})
gtest.Assert(chunks[1], []string{"3", "4"})
gtest.Assert(chunks[2], []string{"5", "6"})
gtest.Assert(array1.Chunk(0), nil)
})
gtest.Case(t, func() {
a1 := []string{"1", "2", "3", "4", "5", "6"}
array1 := garray.NewSortedStrArrayFrom(a1)
chunks := array1.Chunk(3)
gtest.Assert(len(chunks), 2)
gtest.Assert(chunks[0], []string{"1", "2", "3"})
gtest.Assert(chunks[1], []string{"4", "5", "6"})
gtest.Assert(array1.Chunk(0), nil)
})
}
func TestSortedStrArray_SetUnique(t *testing.T) {