mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
Merge pull request #1485 from jonboulle/raft_clean
raft: move test helper function into tests
This commit is contained in:
commit
f7631be453
@ -333,13 +333,6 @@ func (r *raft) becomeLeader() {
|
||||
r.appendEntry(pb.Entry{Data: nil})
|
||||
}
|
||||
|
||||
func (r *raft) ReadMessages() []pb.Message {
|
||||
msgs := r.msgs
|
||||
r.msgs = make([]pb.Message, 0)
|
||||
|
||||
return msgs
|
||||
}
|
||||
|
||||
func (r *raft) campaign() {
|
||||
r.becomeCandidate()
|
||||
if r.q() == r.poll(r.id, true) {
|
||||
|
@ -63,7 +63,7 @@ func TestLeaderBcastBeat(t *testing.T) {
|
||||
r.tick()
|
||||
}
|
||||
|
||||
msgs := r.ReadMessages()
|
||||
msgs := r.readMessages()
|
||||
sort.Sort(messageSlice(msgs))
|
||||
wmsgs := []pb.Message{
|
||||
{From: 1, To: 2, Term: 1, Type: pb.MsgApp},
|
||||
@ -115,7 +115,7 @@ func testNonleaderStartElection(t *testing.T, state StateType) {
|
||||
if r.votes[r.id] != true {
|
||||
t.Errorf("vote for self = false, want true")
|
||||
}
|
||||
msgs := r.ReadMessages()
|
||||
msgs := r.readMessages()
|
||||
sort.Sort(messageSlice(msgs))
|
||||
wmsgs := []pb.Message{
|
||||
{From: 1, To: 2, Term: 2, Type: pb.MsgVote},
|
||||
@ -197,7 +197,7 @@ func TestFollowerVote(t *testing.T) {
|
||||
|
||||
r.Step(pb.Message{From: tt.nvote, To: 1, Term: 1, Type: pb.MsgVote})
|
||||
|
||||
msgs := r.ReadMessages()
|
||||
msgs := r.readMessages()
|
||||
wmsgs := []pb.Message{
|
||||
{From: 1, To: tt.nvote, Term: 1, Type: pb.MsgVoteResp, Reject: tt.wreject},
|
||||
}
|
||||
@ -258,7 +258,7 @@ func testNonleaderElectionTimeoutRandomized(t *testing.T, state StateType) {
|
||||
}
|
||||
|
||||
time := 0
|
||||
for len(r.ReadMessages()) == 0 {
|
||||
for len(r.readMessages()) == 0 {
|
||||
r.tick()
|
||||
time++
|
||||
}
|
||||
@ -306,7 +306,7 @@ func testNonleadersElectionTimeoutNonconflict(t *testing.T, state StateType) {
|
||||
for timeoutNum == 0 {
|
||||
for _, r := range rs {
|
||||
r.tick()
|
||||
if len(r.ReadMessages()) > 0 {
|
||||
if len(r.readMessages()) > 0 {
|
||||
timeoutNum++
|
||||
}
|
||||
}
|
||||
|
@ -37,7 +37,14 @@ func nextEnts(r *raft) (ents []pb.Entry) {
|
||||
|
||||
type Interface interface {
|
||||
Step(m pb.Message) error
|
||||
ReadMessages() []pb.Message
|
||||
readMessages() []pb.Message
|
||||
}
|
||||
|
||||
func (r *raft) readMessages() []pb.Message {
|
||||
msgs := r.msgs
|
||||
r.msgs = make([]pb.Message, 0)
|
||||
|
||||
return msgs
|
||||
}
|
||||
|
||||
func TestLeaderElection(t *testing.T) {
|
||||
@ -602,7 +609,7 @@ func TestHandleMsgApp(t *testing.T) {
|
||||
if sm.raftLog.committed != tt.wCommit {
|
||||
t.Errorf("#%d: committed = %d, want %d", i, sm.raftLog.committed, tt.wCommit)
|
||||
}
|
||||
m := sm.ReadMessages()
|
||||
m := sm.readMessages()
|
||||
if len(m) != 1 {
|
||||
t.Fatalf("#%d: msg = nil, want 1", i)
|
||||
}
|
||||
@ -662,7 +669,7 @@ func TestRecvMsgVote(t *testing.T) {
|
||||
|
||||
sm.Step(pb.Message{Type: pb.MsgVote, From: 2, Index: tt.i, LogTerm: tt.term})
|
||||
|
||||
msgs := sm.ReadMessages()
|
||||
msgs := sm.readMessages()
|
||||
if g := len(msgs); g != 1 {
|
||||
t.Fatalf("#%d: len(msgs) = %d, want 1", i, g)
|
||||
continue
|
||||
@ -803,7 +810,7 @@ func TestLeaderAppResp(t *testing.T) {
|
||||
sm.raftLog = &raftLog{ents: []pb.Entry{{}, {Term: 0}, {Term: 1}}}
|
||||
sm.becomeCandidate()
|
||||
sm.becomeLeader()
|
||||
sm.ReadMessages()
|
||||
sm.readMessages()
|
||||
sm.Step(pb.Message{From: 2, Type: pb.MsgAppResp, Index: tt.index, Term: sm.Term, Reject: tt.reject})
|
||||
|
||||
p := sm.prs[2]
|
||||
@ -814,7 +821,7 @@ func TestLeaderAppResp(t *testing.T) {
|
||||
t.Errorf("#%d next = %d, want %d", i, p.next, tt.wnext)
|
||||
}
|
||||
|
||||
msgs := sm.ReadMessages()
|
||||
msgs := sm.readMessages()
|
||||
|
||||
if len(msgs) != tt.wmsgNum {
|
||||
t.Errorf("#%d msgNum = %d, want %d", i, len(msgs), tt.wmsgNum)
|
||||
@ -851,7 +858,7 @@ func TestBcastBeat(t *testing.T) {
|
||||
}
|
||||
|
||||
sm.Step(pb.Message{Type: pb.MsgBeat})
|
||||
msgs := sm.ReadMessages()
|
||||
msgs := sm.readMessages()
|
||||
if len(msgs) != 2 {
|
||||
t.Fatalf("len(msgs) = %v, want 1", len(msgs))
|
||||
}
|
||||
@ -904,7 +911,7 @@ func TestRecvMsgBeat(t *testing.T) {
|
||||
}
|
||||
sm.Step(pb.Message{From: 1, To: 1, Type: pb.MsgBeat})
|
||||
|
||||
msgs := sm.ReadMessages()
|
||||
msgs := sm.readMessages()
|
||||
if len(msgs) != tt.wMsg {
|
||||
t.Errorf("%d: len(msgs) = %d, want %d", i, len(msgs), tt.wMsg)
|
||||
}
|
||||
@ -967,7 +974,7 @@ func TestProvideSnap(t *testing.T) {
|
||||
sm.prs[2].next = sm.raftLog.offset
|
||||
|
||||
sm.Step(pb.Message{From: 2, To: 1, Type: pb.MsgAppResp, Index: sm.prs[2].next - 1, Reject: true})
|
||||
msgs := sm.ReadMessages()
|
||||
msgs := sm.readMessages()
|
||||
if len(msgs) != 1 {
|
||||
t.Fatalf("len(msgs) = %d, want 1", len(msgs))
|
||||
}
|
||||
@ -1207,7 +1214,7 @@ func (nw *network) send(msgs ...pb.Message) {
|
||||
m := msgs[0]
|
||||
p := nw.peers[m.To]
|
||||
p.Step(m)
|
||||
msgs = append(msgs[1:], nw.filter(p.ReadMessages())...)
|
||||
msgs = append(msgs[1:], nw.filter(p.readMessages())...)
|
||||
}
|
||||
}
|
||||
|
||||
@ -1267,7 +1274,7 @@ type connem struct {
|
||||
type blackHole struct{}
|
||||
|
||||
func (blackHole) Step(pb.Message) error { return nil }
|
||||
func (blackHole) ReadMessages() []pb.Message { return nil }
|
||||
func (blackHole) readMessages() []pb.Message { return nil }
|
||||
|
||||
var nopStepper = &blackHole{}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user