Events in separate etcd
This commit is contained in:
@@ -19,7 +19,12 @@ package app
|
||||
import (
|
||||
"reflect"
|
||||
"regexp"
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"k8s.io/kubernetes/pkg/api/meta"
|
||||
"k8s.io/kubernetes/pkg/master"
|
||||
"k8s.io/kubernetes/pkg/storage"
|
||||
)
|
||||
|
||||
func TestLongRunningRequestRegexp(t *testing.T) {
|
||||
@@ -98,3 +103,54 @@ func TestGenerateStorageVersionMap(t *testing.T) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestUpdateEtcdOverrides(t *testing.T) {
|
||||
storageVersions := generateStorageVersionMap("", "v1,experimental/v1alpha1")
|
||||
|
||||
testCases := []struct {
|
||||
apigroup string
|
||||
resource string
|
||||
servers []string
|
||||
}{
|
||||
{
|
||||
apigroup: "",
|
||||
resource: "resource",
|
||||
servers: []string{"http://127.0.0.1:10000"},
|
||||
},
|
||||
{
|
||||
apigroup: "",
|
||||
resource: "resource",
|
||||
servers: []string{"http://127.0.0.1:10000", "http://127.0.0.1:20000"},
|
||||
},
|
||||
{
|
||||
apigroup: "experimental",
|
||||
resource: "resource",
|
||||
servers: []string{"http://127.0.0.1:10000"},
|
||||
},
|
||||
}
|
||||
|
||||
for _, test := range testCases {
|
||||
newEtcd := func(_ string, serverList []string, _ meta.VersionInterfacesFunc, _, _ string) (storage.Interface, error) {
|
||||
if !reflect.DeepEqual(test.servers, serverList) {
|
||||
t.Errorf("unexpected server list, expected: %#v, got: %#v", test.servers, serverList)
|
||||
}
|
||||
return nil, nil
|
||||
}
|
||||
storageDestinations := master.NewStorageDestinations()
|
||||
override := test.apigroup + "/" + test.resource + "#" + strings.Join(test.servers, ";")
|
||||
updateEtcdOverrides([]string{override}, storageVersions, "", &storageDestinations, newEtcd)
|
||||
apigroup, ok := storageDestinations.APIGroups[test.apigroup]
|
||||
if !ok {
|
||||
t.Errorf("apigroup: %s not created", test.apigroup)
|
||||
continue
|
||||
}
|
||||
if apigroup.Overrides == nil {
|
||||
t.Errorf("Overrides not created for: %s", test.apigroup)
|
||||
continue
|
||||
}
|
||||
if _, ok := apigroup.Overrides[test.resource]; !ok {
|
||||
t.Errorf("override not created for: %s", test.resource)
|
||||
continue
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user