raft: add a one node bench

release-2.0
Xiang Li 2014-09-17 19:41:31 -07:00
parent f17391a72b
commit 50d4abc676
1 changed files with 25 additions and 0 deletions

25
raft/node_bench_test.go Normal file
View File

@ -0,0 +1,25 @@
package raft
import (
"testing"
"github.com/coreos/etcd/third_party/code.google.com/p/go.net/context"
)
func BenchmarkOneNode(b *testing.B) {
ctx, cancel := context.WithCancel(context.Background())
defer cancel()
n := Start(1, []int64{1}, 0, 0)
defer n.Stop()
n.Campaign(ctx)
for i := 0; i < b.N; i++ {
<-n.Ready()
n.Propose(ctx, []byte("foo"))
}
rd := <-n.Ready()
if rd.HardState.Commit != int64(b.N+1) {
b.Errorf("commit = %d, want %d", b.N+1)
}
}