Skip to content

Commit b0d204d

Browse files
committed
重构:去除assert包
1 parent e1a5574 commit b0d204d

File tree

17 files changed

+1783
-552
lines changed

17 files changed

+1783
-552
lines changed

avltree/avltree_test.go

Lines changed: 73 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
11
package avltree
22

33
import (
4-
"fmt"
54
"testing"
65

76
"github.com/antlabs/gstl/cmp"
87
"github.com/antlabs/gstl/vec"
9-
"github.com/stretchr/testify/assert"
108
)
119

1210
// 从小到大, 插入
@@ -19,8 +17,12 @@ func Test_SetAndGet(t *testing.T) {
1917

2018
for i := 0; i < max; i++ {
2119
v, ok := b.GetWithBool(i)
22-
assert.True(t, ok)
23-
assert.Equal(t, v, i)
20+
if !ok {
21+
t.Errorf("expected true, got false for index %d", i)
22+
}
23+
if v != i {
24+
t.Errorf("expected %d, got %d for index %d", i, v, i)
25+
}
2426
}
2527
}
2628

@@ -34,8 +36,12 @@ func Test_SetAndGet2(t *testing.T) {
3436

3537
for i := max; i >= 0; i-- {
3638
v, ok := b.GetWithBool(i)
37-
assert.True(t, ok)
38-
assert.Equal(t, v, i)
39+
if !ok {
40+
t.Errorf("expected true, got false for index %d", i)
41+
}
42+
if v != i {
43+
t.Errorf("expected %d, got %d for index %d", i, v, i)
44+
}
3945
}
4046
}
4147

@@ -58,15 +64,23 @@ func Test_AVLTree_Delete1(t *testing.T) {
5864
// max/2-max应该能找到
5965
for i := max / 2; i < max; i++ {
6066
v, ok := b.GetWithBool(i)
61-
assert.True(t, ok, fmt.Sprintf("index:%d", i))
62-
assert.Equal(t, v, i, fmt.Sprintf("index:%d", i))
67+
if !ok {
68+
t.Errorf("expected true, got false for index %d", i)
69+
}
70+
if v != i {
71+
t.Errorf("expected %d, got %d for index %d", i, v, i)
72+
}
6373
}
6474

6575
// 0-max/2应该找不到
6676
for i := 0; i < max/2; i++ {
6777
v, ok := b.GetWithBool(i)
68-
assert.False(t, ok, fmt.Sprintf("index:%d", i))
69-
assert.Equal(t, v, 0, fmt.Sprintf("index:%d", i))
78+
if ok {
79+
t.Errorf("expected false, got true for index %d", i)
80+
}
81+
if v != 0 {
82+
t.Errorf("expected 0, got %d for index %d", v, i)
83+
}
7084
}
7185
}
7286
}
@@ -97,7 +111,9 @@ func Test_AvlTree_TopMax(t *testing.T) {
97111

98112
b.Draw()
99113

100-
assert.Equal(t, b.Len(), count10)
114+
if b.Len() != count10 {
115+
t.Errorf("expected length %d, got %d", count10, b.Len())
116+
}
101117
return b
102118
}(),
103119
// btree里面元素 等于 TopMax 需要返回的值
@@ -107,7 +123,9 @@ func Test_AvlTree_TopMax(t *testing.T) {
107123
for i := 0; i < count100; i++ {
108124
b.Set(int(i), i)
109125
}
110-
assert.Equal(t, b.Len(), count100)
126+
if b.Len() != count100 {
127+
t.Errorf("expected length %d, got %d", count100, b.Len())
128+
}
111129
return b
112130
}(),
113131
// btree里面元素 大于 TopMax 需要返回的值
@@ -117,7 +135,9 @@ func Test_AvlTree_TopMax(t *testing.T) {
117135
for i := 0; i < count1000; i++ {
118136
b.Set(int(i), i)
119137
}
120-
assert.Equal(t, b.Len(), count1000)
138+
if b.Len() != count1000 {
139+
t.Errorf("expected length %d, got %d", count1000, b.Len())
140+
}
121141
return b
122142
}(),
123143
} {
@@ -128,10 +148,13 @@ func Test_AvlTree_TopMax(t *testing.T) {
128148
return true
129149
})
130150
length := cmp.Min(count[i], len(need[i]))
131-
assert.Equal(t, key, need[i][:length])
132-
assert.Equal(t, val, need[i][:length])
151+
if !equalSlices(key, need[i][:length]) {
152+
t.Errorf("expected keys %v, got %v", need[i][:length], key)
153+
}
154+
if !equalSlices(val, need[i][:length]) {
155+
t.Errorf("expected values %v, got %v", need[i][:length], val)
156+
}
133157
}
134-
135158
}
136159

137160
// 测试TopMin, 它返回最小的几个值
@@ -155,7 +178,9 @@ func Test_AvlTree_TopMin(t *testing.T) {
155178
b.Set(i, i)
156179
}
157180

158-
assert.Equal(t, b.Len(), count10)
181+
if b.Len() != count10 {
182+
t.Errorf("expected length %d, got %d", count10, b.Len())
183+
}
159184
return b
160185
}(),
161186
// btree里面元素 等于 TopMin 需要返回的值
@@ -165,7 +190,9 @@ func Test_AvlTree_TopMin(t *testing.T) {
165190
for i := 0; i < count100; i++ {
166191
b.Set(i, i)
167192
}
168-
assert.Equal(t, b.Len(), count100)
193+
if b.Len() != count100 {
194+
t.Errorf("expected length %d, got %d", count100, b.Len())
195+
}
169196
return b
170197
}(),
171198
// btree里面元素 大于 TopMin 需要返回的值
@@ -175,7 +202,9 @@ func Test_AvlTree_TopMin(t *testing.T) {
175202
for i := 0; i < count1000; i++ {
176203
b.Set(i, i)
177204
}
178-
assert.Equal(t, b.Len(), count1000)
205+
if b.Len() != count1000 {
206+
t.Errorf("expected length %d, got %d", count1000, b.Len())
207+
}
179208
return b
180209
}(),
181210
} {
@@ -185,10 +214,13 @@ func Test_AvlTree_TopMin(t *testing.T) {
185214
val = append(val, v)
186215
return true
187216
})
188-
assert.Equal(t, key, need[:needCount[i]])
189-
assert.Equal(t, val, need[:needCount[i]])
217+
if !equalSlices(key, need[:needCount[i]]) {
218+
t.Errorf("expected keys %v, got %v", need[:needCount[i]], key)
219+
}
220+
if !equalSlices(val, need[:needCount[i]]) {
221+
t.Errorf("expected values %v, got %v", need[:needCount[i]], val)
222+
}
190223
}
191-
192224
}
193225

194226
func Test_RanePrev(t *testing.T) {
@@ -215,6 +247,23 @@ func Test_RanePrev(t *testing.T) {
215247
return true
216248
})
217249

218-
assert.Equal(t, gotKey, dataRev)
219-
assert.Equal(t, gotVal, dataRev)
250+
if !equalSlices(gotKey, dataRev) {
251+
t.Errorf("expected keys %v, got %v", dataRev, gotKey)
252+
}
253+
if !equalSlices(gotVal, dataRev) {
254+
t.Errorf("expected values %v, got %v", dataRev, gotVal)
255+
}
256+
}
257+
258+
// 辅助函数,用于比较两个切片是否相等
259+
func equalSlices(a, b []int) bool {
260+
if len(a) != len(b) {
261+
return false
262+
}
263+
for i := range a {
264+
if a[i] != b[i] {
265+
return false
266+
}
267+
}
268+
return true
220269
}

0 commit comments

Comments
 (0)