diff --git a/raft/raft_test.go b/raft/raft_test.go index fcea4a75d..3f9eb911f 100644 --- a/raft/raft_test.go +++ b/raft/raft_test.go @@ -383,7 +383,7 @@ func TestCommit(t *testing.T) { } } -func TestVote(t *testing.T) { +func TestRecvMsgVote(t *testing.T) { tests := []struct { state stateType i, term int @@ -418,7 +418,6 @@ func TestVote(t *testing.T) { } for i, tt := range tests { - called := false sm := &stateMachine{ state: tt.state, vote: tt.voteFor, @@ -427,14 +426,14 @@ func TestVote(t *testing.T) { sm.Step(Message{Type: msgVote, From: 1, Index: tt.i, LogTerm: tt.term}) - for _, m := range sm.Msgs() { - called = true - if m.Index != tt.w { - t.Errorf("#%d, m.Index = %d, want %d", i, m.Index, tt.w) - } + msgs := sm.Msgs() + if len(msgs) != 1 { + t.Errorf("#%d: len(msgs) = %d, want 1", i, len(msgs)) + continue } - if !called { - t.Fatal("#%d: not called", i) + g := msgs[0].Index + if g != tt.w { + t.Errorf("#%d, m.Index = %d, want %d", i, g, tt.w) } } }