@@ -25,9 +25,24 @@ func Test_Array_Basic(t *testing.T) {
25
25
array := garray .NewArrayFrom (expect )
26
26
array2 := garray .NewArrayFrom (expect )
27
27
array3 := garray .NewArrayFrom ([]interface {}{})
28
+ array4 := garray .NewArrayRange (1 , 5 , 1 )
29
+
28
30
t .Assert (array .Slice (), expect )
29
31
t .Assert (array .Interfaces (), expect )
30
- array .Set (0 , 100 )
32
+ err := array .Set (0 , 100 )
33
+ t .AssertNil (err )
34
+
35
+ err = array .Set (100 , 100 )
36
+ t .AssertNE (err , nil )
37
+
38
+ t .Assert (array .IsEmpty (), false )
39
+
40
+ copyArray := array .DeepCopy ()
41
+ ca := copyArray .(* garray.Array )
42
+ ca .Set (0 , 1 )
43
+ cval , _ := ca .Get (0 )
44
+ val , _ := array .Get (0 )
45
+ t .AssertNE (cval , val )
31
46
32
47
v , ok := array .Get (0 )
33
48
t .Assert (v , 100 )
@@ -37,6 +52,10 @@ func Test_Array_Basic(t *testing.T) {
37
52
t .Assert (v , 1 )
38
53
t .Assert (ok , true )
39
54
55
+ v , ok = array .Get (4 )
56
+ t .Assert (v , nil )
57
+ t .Assert (ok , false )
58
+
40
59
t .Assert (array .Search (100 ), 0 )
41
60
t .Assert (array3 .Search (100 ), - 1 )
42
61
t .Assert (array .Contains (100 ), true )
@@ -71,6 +90,12 @@ func Test_Array_Basic(t *testing.T) {
71
90
array .InsertAfter (6 , 400 )
72
91
t .Assert (array .Slice (), []interface {}{100 , 200 , 2 , 2 , 3 , 300 , 4 , 400 })
73
92
t .Assert (array .Clear ().Len (), 0 )
93
+ err = array .InsertBefore (99 , 9900 )
94
+ t .AssertNE (err , nil )
95
+ err = array .InsertAfter (99 , 9900 )
96
+ t .AssertNE (err , nil )
97
+
98
+ t .Assert (array4 .String (), "[1,2,3,4,5]" )
74
99
})
75
100
}
76
101
@@ -99,6 +124,11 @@ func TestArray_Unique(t *testing.T) {
99
124
array := garray .NewArrayFrom (expect )
100
125
t .Assert (array .Unique ().Slice (), []interface {}{1 , 2 , 3 , 4 , 5 })
101
126
})
127
+ gtest .C (t , func (t * gtest.T ) {
128
+ expect := []interface {}{}
129
+ array := garray .NewArrayFrom (expect )
130
+ t .Assert (array .Unique ().Slice (), []interface {}{})
131
+ })
102
132
}
103
133
104
134
func TestArray_PushAndPop (t * testing.T ) {
@@ -382,6 +412,21 @@ func TestArray_Rand(t *testing.T) {
382
412
t .Assert (a1 .Contains (i1 ), true )
383
413
t .Assert (a1 .Len (), 4 )
384
414
})
415
+
416
+ gtest .C (t , func (t * gtest.T ) {
417
+ a1 := []interface {}{}
418
+ array1 := garray .NewArrayFrom (a1 )
419
+ rand , found := array1 .Rand ()
420
+ t .AssertNil (rand )
421
+ t .Assert (found , false )
422
+ })
423
+
424
+ gtest .C (t , func (t * gtest.T ) {
425
+ a1 := []interface {}{}
426
+ array1 := garray .NewArrayFrom (a1 )
427
+ rand := array1 .Rands (1 )
428
+ t .AssertNil (rand )
429
+ })
385
430
}
386
431
387
432
func TestArray_Shuffle (t * testing.T ) {
@@ -412,13 +457,21 @@ func TestArray_Join(t *testing.T) {
412
457
array1 := garray .NewArrayFrom (a1 )
413
458
t .Assert (array1 .Join ("." ), `0.1."a".\a` )
414
459
})
460
+
461
+ gtest .C (t , func (t * gtest.T ) {
462
+ a1 := []interface {}{}
463
+ array1 := garray .NewArrayFrom (a1 )
464
+ t .Assert (len (array1 .Join ("." )), 0 )
465
+ })
415
466
}
416
467
417
468
func TestArray_String (t * testing.T ) {
418
469
gtest .C (t , func (t * gtest.T ) {
419
470
a1 := []interface {}{0 , 1 , 2 , 3 , 4 , 5 , 6 }
420
471
array1 := garray .NewArrayFrom (a1 )
421
472
t .Assert (array1 .String (), `[0,1,2,3,4,5,6]` )
473
+ array1 = nil
474
+ t .Assert (array1 .String (), "" )
422
475
})
423
476
}
424
477
0 commit comments