etcdserver: move cluster test from etcdhttp to etcdserver

This commit is contained in:
Yicheng Qin 2014-09-28 14:35:48 -07:00
parent 15798a73d9
commit e83f851995
2 changed files with 59 additions and 62 deletions

View File

@ -143,6 +143,65 @@ func TestClusterAddBad(t *testing.T) {
}
}
func TestClusterGetEndpoints(t *testing.T) {
tests := []struct {
mems []Member
endpoints []string
}{
// single peer with a single address
{
mems: []Member{
{ID: 1, PeerURLs: []string{"192.0.2.1"}},
},
endpoints: []string{"http://192.0.2.1"},
},
// single peer with a single address with a port
{
mems: []Member{
{ID: 1, PeerURLs: []string{"192.0.2.1:8001"}},
},
endpoints: []string{"http://192.0.2.1:8001"},
},
// several members explicitly unsorted
{
mems: []Member{
{ID: 2, PeerURLs: []string{"192.0.2.3", "192.0.2.4"}},
{ID: 3, PeerURLs: []string{"192.0.2.5", "192.0.2.6"}},
{ID: 1, PeerURLs: []string{"192.0.2.1", "192.0.2.2"}},
},
endpoints: []string{"http://192.0.2.1", "http://192.0.2.2", "http://192.0.2.3", "http://192.0.2.4", "http://192.0.2.5", "http://192.0.2.6"},
},
// no members
{
mems: []Member{},
endpoints: []string{},
},
// peer with no endpoints
{
mems: []Member{
{ID: 3, PeerURLs: []string{}},
},
endpoints: []string{},
},
}
for i, tt := range tests {
c := Cluster{}
if err := c.AddSlice(tt.mems); err != nil {
t.Errorf("AddSlice error: %v", err)
continue
}
endpoints := c.Endpoints()
if !reflect.DeepEqual(tt.endpoints, endpoints) {
t.Errorf("#%d: members.Endpoints() incorrect: want=%#v got=%#v", i, tt.endpoints, endpoints)
}
}
}
func TestClusterClientURLs(t *testing.T) {
tests := []struct {
mems []Member

View File

@ -634,68 +634,6 @@ func TestServeMachines(t *testing.T) {
}
}
func TestClusterGetEndpoints(t *testing.T) {
tests := []struct {
clusterStore etcdserver.ClusterStore
endpoints []string
}{
// single peer with a single address
{
clusterStore: &fakeCluster{
members: []etcdserver.Member{
{ID: 1, PeerURLs: []string{"192.0.2.1"}},
},
},
endpoints: []string{"http://192.0.2.1"},
},
// single peer with a single address with a port
{
clusterStore: &fakeCluster{
members: []etcdserver.Member{
{ID: 1, PeerURLs: []string{"192.0.2.1:8001"}},
},
},
endpoints: []string{"http://192.0.2.1:8001"},
},
// several members explicitly unsorted
{
clusterStore: &fakeCluster{
members: []etcdserver.Member{
{ID: 2, PeerURLs: []string{"192.0.2.3", "192.0.2.4"}},
{ID: 3, PeerURLs: []string{"192.0.2.5", "192.0.2.6"}},
{ID: 1, PeerURLs: []string{"192.0.2.1", "192.0.2.2"}},
},
},
endpoints: []string{"http://192.0.2.1", "http://192.0.2.2", "http://192.0.2.3", "http://192.0.2.4", "http://192.0.2.5", "http://192.0.2.6"},
},
// no members
{
clusterStore: &fakeCluster{members: []etcdserver.Member{}},
endpoints: []string{},
},
// peer with no endpoints
{
clusterStore: &fakeCluster{
members: []etcdserver.Member{
{ID: 3, PeerURLs: []string{}},
},
},
endpoints: []string{},
},
}
for i, tt := range tests {
endpoints := tt.clusterStore.Get().Endpoints()
if !reflect.DeepEqual(tt.endpoints, endpoints) {
t.Errorf("#%d: members.Endpoints() incorrect: want=%#v got=%#v", i, tt.endpoints, endpoints)
}
}
}
func TestAllowMethod(t *testing.T) {
tests := []struct {
m string