Browse Source

raft: fix node test

Xiang Li 11 years ago
parent
commit
e30505d33b
1 changed files with 11 additions and 17 deletions
  1. 11 17
      raft/node_test.go

+ 11 - 17
raft/node_test.go

@@ -12,17 +12,7 @@ func TestNode(t *testing.T) {
 	ctx, cancel := context.WithCancel(context.Background())
 	defer cancel()
 
-	n := Start(1, []int64{1}, 0, 0)
-	ch := make(chan Ready)
-	go func() {
-		for {
-			ch <- <-n.Ready()
-		}
-	}()
-	n.Campaign(ctx)
-	n.Propose(ctx, []byte("foo"))
-
-	want := []Ready{
+	wants := []Ready{
 		{
 			State:            raftpb.State{Term: 1, Vote: -1, Commit: 1, LastIndex: 1},
 			Entries:          []raftpb.Entry{{Term: 1, Index: 1}},
@@ -35,16 +25,20 @@ func TestNode(t *testing.T) {
 		},
 	}
 
-	for i, w := range want {
-		if g := <-ch; !reflect.DeepEqual(g, w) {
-			t.Errorf("#%d: g = %+v,\n             w   %+v", i, g, w)
-		}
+	n := Start(1, []int64{1}, 0, 0)
+	n.Campaign(ctx)
+	if g := <-n.Ready(); !reflect.DeepEqual(g, wants[0]) {
+		t.Errorf("#%d: g = %+v,\n             w   %+v", 1, g, wants[0])
+	}
+
+	n.Propose(ctx, []byte("foo"))
+	if g := <-n.Ready(); !reflect.DeepEqual(g, wants[1]) {
+		t.Errorf("#%d: g = %+v,\n             w   %+v", 2, g, wants[1])
 	}
 
 	select {
-	case rd := <-ch:
+	case rd := <-n.Ready():
 		t.Errorf("unexpected Ready: %+v", rd)
 	default:
 	}
-
 }