gtq/stats_test.go

23 lines
495 B
Go
Raw Normal View History

2019-04-11 14:21:27 +00:00
package gtq
import (
"math/rand"
"testing"
"time"
)
var testStat = NewStat(0)
func TestStat(t *testing.T) {
total := int64(10000)
perOp := int64(time.Second) / total
for i := int64(0); i < total; i++ {
testStat.Add(1)
// random sleep to introduce some flow rate variation to capture.
time.Sleep(time.Duration(rand.Float64() * float64(perOp)))
}
t.Log("completed", testStat.Total(), "ops in", testStat.Duration(),
"for a total rate of", int64(testStat.Rate()), "ops/sec",
)
}