Skip to content

Commit 6980a5f

Browse files
Merge pull request #132 from Theodus/master
remove atomic counter from iteration test
2 parents fde34e9 + 8f5270c commit 6980a5f

File tree

1 file changed

+10
-14
lines changed

1 file changed

+10
-14
lines changed

trie/dtrie/dtrie_test.go

+10-14
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ package dtrie
2828

2929
import (
3030
"fmt"
31-
"sync/atomic"
3231
"testing"
3332

3433
"github.com/stretchr/testify/assert"
@@ -138,33 +137,30 @@ func updateTest(t *testing.T, hashfunc func(interface{}) uint32, count int) {
138137
func TestIterate(t *testing.T) {
139138
n := insertTest(t, defaultHasher, 10000)
140139
echan := iterate(n, nil)
141-
var c int64
140+
c := 0
142141
for _ = range echan {
143142
c++
144143
}
145-
assert.Equal(t, int64(10000), c)
144+
assert.Equal(t, 10000, c)
146145
// test with stop chan
147146
c = 0
148147
stop := make(chan struct{})
149148
echan = iterate(n, stop)
150-
go func() {
151-
for _ = range echan {
152-
atomic.AddInt64(&c, 1)
149+
for _ = range echan {
150+
c++
151+
if c == 100 {
152+
close(stop)
153153
}
154-
}()
155-
for atomic.LoadInt64(&c) < 100 {
156154
}
157-
close(stop)
158-
cf := atomic.LoadInt64(&c)
159-
assert.True(t, cf > 99 && cf < 1000)
155+
assert.Equal(t, c, 100)
160156
// test with collisions
161157
n = insertTest(t, collisionHash, 1000)
162-
atomic.StoreInt64(&c, 0)
158+
c = 0
163159
echan = iterate(n, nil)
164160
for _ = range echan {
165-
atomic.AddInt64(&c, 1)
161+
c++
166162
}
167-
assert.Equal(t, int64(1000), atomic.LoadInt64(&c))
163+
assert.Equal(t, 1000, c)
168164
}
169165

170166
func TestSize(t *testing.T) {

0 commit comments

Comments
 (0)