optimized index calculation

This commit is contained in:
Aliaksandr Valialkin
2016-06-24 14:46:58 +03:00
parent b48200dc4a
commit 5dec51fcf9
2 changed files with 35 additions and 11 deletions
+24
View File
@@ -6,6 +6,30 @@ import (
"time"
)
func TestIndex(t *testing.T) {
testIndex(t, 0, 0)
testIndex(t, 1, 0)
testIndex(t, minSize-1, 0)
testIndex(t, minSize, 0)
testIndex(t, minSize+1, 1)
testIndex(t, 2*minSize-1, 1)
testIndex(t, 2*minSize, 1)
testIndex(t, 2*minSize+1, 2)
testIndex(t, maxSize-1, steps-1)
testIndex(t, maxSize, steps-1)
testIndex(t, maxSize+1, steps-1)
}
func testIndex(t *testing.T, n, expectedIdx int) {
idx := index(n)
if idx != expectedIdx {
t.Fatalf("unexpected idx for n=%d: %d. Expecting %d", n, idx, expectedIdx)
}
}
func TestPoolCalibrate(t *testing.T) {
for i := 0; i < steps*calibrateCallsThreshold; i++ {
n := 1004