|
|
@@ -411,11 +411,10 @@ func TestApplyRequestOnAdminMemberAttributes(t *testing.T) {
|
|
|
func TestApplyConfChangeError(t *testing.T) {
|
|
|
cl := newCluster("")
|
|
|
cl.SetStore(store.New())
|
|
|
- cl.SetTransport(&nopTransporter{})
|
|
|
for i := 1; i <= 4; i++ {
|
|
|
- cl.AddMember(&Member{ID: types.ID(i)}, uint64(i))
|
|
|
+ cl.AddMember(&Member{ID: types.ID(i)})
|
|
|
}
|
|
|
- cl.RemoveMember(4, 5)
|
|
|
+ cl.RemoveMember(4)
|
|
|
|
|
|
tests := []struct {
|
|
|
cc raftpb.ConfChange
|
|
|
@@ -456,7 +455,7 @@ func TestApplyConfChangeError(t *testing.T) {
|
|
|
r: raftNode{Node: n},
|
|
|
Cluster: cl,
|
|
|
}
|
|
|
- _, err := srv.applyConfChange(tt.cc, nil, 10)
|
|
|
+ _, err := srv.applyConfChange(tt.cc, nil)
|
|
|
if err != tt.werr {
|
|
|
t.Errorf("#%d: applyConfChange error = %v, want %v", i, err, tt.werr)
|
|
|
}
|
|
|
@@ -476,9 +475,8 @@ func TestApplyConfChangeError(t *testing.T) {
|
|
|
func TestApplyConfChangeShouldStop(t *testing.T) {
|
|
|
cl := newCluster("")
|
|
|
cl.SetStore(store.New())
|
|
|
- cl.SetTransport(&nopTransporter{})
|
|
|
for i := 1; i <= 3; i++ {
|
|
|
- cl.AddMember(&Member{ID: types.ID(i)}, uint64(i))
|
|
|
+ cl.AddMember(&Member{ID: types.ID(i)})
|
|
|
}
|
|
|
srv := &EtcdServer{
|
|
|
id: 1,
|
|
|
@@ -493,7 +491,7 @@ func TestApplyConfChangeShouldStop(t *testing.T) {
|
|
|
NodeID: 2,
|
|
|
}
|
|
|
// remove non-local member
|
|
|
- shouldStop, err := srv.applyConfChange(cc, &raftpb.ConfState{}, 10)
|
|
|
+ shouldStop, err := srv.applyConfChange(cc, &raftpb.ConfState{})
|
|
|
if err != nil {
|
|
|
t.Fatalf("unexpected error %v", err)
|
|
|
}
|
|
|
@@ -503,7 +501,7 @@ func TestApplyConfChangeShouldStop(t *testing.T) {
|
|
|
|
|
|
// remove local member
|
|
|
cc.NodeID = 1
|
|
|
- shouldStop, err = srv.applyConfChange(cc, &raftpb.ConfState{}, 10)
|
|
|
+ shouldStop, err = srv.applyConfChange(cc, &raftpb.ConfState{})
|
|
|
if err != nil {
|
|
|
t.Fatalf("unexpected error %v", err)
|
|
|
}
|
|
|
@@ -774,7 +772,6 @@ func TestRecvSnapshot(t *testing.T) {
|
|
|
p := &storageRecorder{}
|
|
|
cl := newCluster("abc")
|
|
|
cl.SetStore(store.New())
|
|
|
- cl.SetTransport(&nopTransporter{})
|
|
|
s := &EtcdServer{
|
|
|
r: raftNode{
|
|
|
Node: n,
|
|
|
@@ -809,7 +806,6 @@ func TestApplySnapshotAndCommittedEntries(t *testing.T) {
|
|
|
st := &storeRecorder{}
|
|
|
cl := newCluster("abc")
|
|
|
cl.SetStore(store.New())
|
|
|
- cl.SetTransport(&nopTransporter{})
|
|
|
storage := raft.NewMemoryStorage()
|
|
|
s := &EtcdServer{
|
|
|
r: raftNode{
|
|
|
@@ -855,7 +851,6 @@ func TestAddMember(t *testing.T) {
|
|
|
cl := newTestCluster(nil)
|
|
|
st := store.New()
|
|
|
cl.SetStore(st)
|
|
|
- cl.SetTransport(&nopTransporter{})
|
|
|
s := &EtcdServer{
|
|
|
r: raftNode{
|
|
|
Node: n,
|
|
|
@@ -894,7 +889,7 @@ func TestRemoveMember(t *testing.T) {
|
|
|
cl := newTestCluster(nil)
|
|
|
st := store.New()
|
|
|
cl.SetStore(store.New())
|
|
|
- cl.SetTransport(&nopTransporter{})
|
|
|
+ cl.AddMember(&Member{ID: 1234})
|
|
|
s := &EtcdServer{
|
|
|
r: raftNode{
|
|
|
Node: n,
|
|
|
@@ -907,7 +902,6 @@ func TestRemoveMember(t *testing.T) {
|
|
|
reqIDGen: idutil.NewGenerator(0, time.Time{}),
|
|
|
}
|
|
|
s.start()
|
|
|
- s.AddMember(context.TODO(), Member{ID: 1234})
|
|
|
err := s.RemoveMember(context.TODO(), 1234)
|
|
|
gaction := n.Action()
|
|
|
s.Stop()
|
|
|
@@ -915,12 +909,7 @@ func TestRemoveMember(t *testing.T) {
|
|
|
if err != nil {
|
|
|
t.Fatalf("RemoveMember error: %v", err)
|
|
|
}
|
|
|
- wactions := []testutil.Action{
|
|
|
- {Name: "ProposeConfChange:ConfChangeAddNode"},
|
|
|
- {Name: "ApplyConfChange:ConfChangeAddNode"},
|
|
|
- {Name: "ProposeConfChange:ConfChangeRemoveNode"},
|
|
|
- {Name: "ApplyConfChange:ConfChangeRemoveNode"},
|
|
|
- }
|
|
|
+ wactions := []testutil.Action{{Name: "ProposeConfChange:ConfChangeRemoveNode"}, {Name: "ApplyConfChange:ConfChangeRemoveNode"}}
|
|
|
if !reflect.DeepEqual(gaction, wactions) {
|
|
|
t.Errorf("action = %v, want %v", gaction, wactions)
|
|
|
}
|
|
|
@@ -938,7 +927,7 @@ func TestUpdateMember(t *testing.T) {
|
|
|
cl := newTestCluster(nil)
|
|
|
st := store.New()
|
|
|
cl.SetStore(st)
|
|
|
- cl.SetTransport(&nopTransporter{})
|
|
|
+ cl.AddMember(&Member{ID: 1234})
|
|
|
s := &EtcdServer{
|
|
|
r: raftNode{
|
|
|
Node: n,
|
|
|
@@ -951,7 +940,6 @@ func TestUpdateMember(t *testing.T) {
|
|
|
reqIDGen: idutil.NewGenerator(0, time.Time{}),
|
|
|
}
|
|
|
s.start()
|
|
|
- s.AddMember(context.TODO(), Member{ID: 1234})
|
|
|
wm := Member{ID: 1234, RaftAttributes: RaftAttributes{PeerURLs: []string{"http://127.0.0.1:1"}}}
|
|
|
err := s.UpdateMember(context.TODO(), wm)
|
|
|
gaction := n.Action()
|
|
|
@@ -960,12 +948,7 @@ func TestUpdateMember(t *testing.T) {
|
|
|
if err != nil {
|
|
|
t.Fatalf("UpdateMember error: %v", err)
|
|
|
}
|
|
|
- wactions := []testutil.Action{
|
|
|
- {Name: "ProposeConfChange:ConfChangeAddNode"},
|
|
|
- {Name: "ApplyConfChange:ConfChangeAddNode"},
|
|
|
- {Name: "ProposeConfChange:ConfChangeUpdateNode"},
|
|
|
- {Name: "ApplyConfChange:ConfChangeUpdateNode"},
|
|
|
- }
|
|
|
+ wactions := []testutil.Action{{Name: "ProposeConfChange:ConfChangeUpdateNode"}, {Name: "ApplyConfChange:ConfChangeUpdateNode"}}
|
|
|
if !reflect.DeepEqual(gaction, wactions) {
|
|
|
t.Errorf("action = %v, want %v", gaction, wactions)
|
|
|
}
|
|
|
@@ -1383,6 +1366,7 @@ type nopTransporter struct{}
|
|
|
|
|
|
func (s *nopTransporter) Handler() http.Handler { return nil }
|
|
|
func (s *nopTransporter) Send(m []raftpb.Message) {}
|
|
|
+func (s *nopTransporter) AddRemote(id types.ID, us []string) {}
|
|
|
func (s *nopTransporter) AddPeer(id types.ID, us []string) {}
|
|
|
func (s *nopTransporter) RemovePeer(id types.ID) {}
|
|
|
func (s *nopTransporter) RemoveAllPeers() {}
|