refactor testapi and test scripts to prepare for multiple API groups.

This commit is contained in:
Chao Xu
2015-09-04 00:06:01 -07:00
parent 49702f9059
commit 9fc79e9d99
109 changed files with 1010 additions and 714 deletions

View File

@@ -65,22 +65,22 @@ func getTestTokenAuth() authenticator.Request {
}
func path(resource, namespace, name string) string {
return testapi.ResourcePath(resource, namespace, name)
return testapi.Default.ResourcePath(resource, namespace, name)
}
func pathWithPrefix(prefix, resource, namespace, name string) string {
return testapi.ResourcePathWithPrefix(prefix, resource, namespace, name)
return testapi.Default.ResourcePathWithPrefix(prefix, resource, namespace, name)
}
func timeoutPath(resource, namespace, name string) string {
return addTimeoutFlag(testapi.ResourcePath(resource, namespace, name))
return addTimeoutFlag(testapi.Default.ResourcePath(resource, namespace, name))
}
// Bodies for requests used in subsequent tests.
var aPod string = `
{
"kind": "Pod",
"apiVersion": "` + testapi.Version() + `",
"apiVersion": "` + testapi.Default.Version() + `",
"metadata": {
"name": "a",
"creationTimestamp": null%s
@@ -98,7 +98,7 @@ var aPod string = `
var aRC string = `
{
"kind": "ReplicationController",
"apiVersion": "` + testapi.Version() + `",
"apiVersion": "` + testapi.Default.Version() + `",
"metadata": {
"name": "a",
"labels": {
@@ -131,7 +131,7 @@ var aRC string = `
var aService string = `
{
"kind": "Service",
"apiVersion": "` + testapi.Version() + `",
"apiVersion": "` + testapi.Default.Version() + `",
"metadata": {
"name": "a",
"labels": {
@@ -155,7 +155,7 @@ var aService string = `
var aNode string = `
{
"kind": "Node",
"apiVersion": "` + testapi.Version() + `",
"apiVersion": "` + testapi.Default.Version() + `",
"metadata": {
"name": "a"%s
},
@@ -167,7 +167,7 @@ var aNode string = `
var aEvent string = `
{
"kind": "Event",
"apiVersion": "` + testapi.Version() + `",
"apiVersion": "` + testapi.Default.Version() + `",
"metadata": {
"name": "a"%s
},
@@ -183,7 +183,7 @@ var aEvent string = `
var aBinding string = `
{
"kind": "Binding",
"apiVersion": "` + testapi.Version() + `",
"apiVersion": "` + testapi.Default.Version() + `",
"metadata": {
"name": "a"%s
},
@@ -206,7 +206,7 @@ var emptyEndpoints string = `
var aEndpoints string = `
{
"kind": "Endpoints",
"apiVersion": "` + testapi.Version() + `",
"apiVersion": "` + testapi.Default.Version() + `",
"metadata": {
"name": "a"%s
},
@@ -231,7 +231,7 @@ var aEndpoints string = `
var deleteNow string = `
{
"kind": "DeleteOptions",
"apiVersion": "` + testapi.Version() + `",
"apiVersion": "` + testapi.Default.Version() + `",
"gracePeriodSeconds": 0%s
}
`

View File

@@ -43,7 +43,7 @@ func TestClient(t *testing.T) {
ns := api.NamespaceDefault
framework.DeleteAllEtcdKeys()
client := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Version()})
client := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Default.Version()})
info, err := client.ServerVersion()
if err != nil {
@@ -113,7 +113,7 @@ func TestSingleWatch(t *testing.T) {
ns := "blargh"
deleteAllEtcdKeys()
client := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Version()})
client := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Default.Version()})
mkEvent := func(i int) *api.Event {
name := fmt.Sprintf("event-%v", i)
@@ -197,7 +197,7 @@ func TestMultiWatch(t *testing.T) {
defer s.Close()
ns := api.NamespaceDefault
client := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Version()})
client := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Default.Version()})
dummyEvent := func(i int) *api.Event {
name := fmt.Sprintf("unrelated-%v", i)

View File

@@ -34,7 +34,7 @@ import (
func TestSet(t *testing.T) {
client := framework.NewEtcdClient()
etcdStorage := etcd.NewEtcdStorage(client, testapi.Codec(), "")
etcdStorage := etcd.NewEtcdStorage(client, testapi.Default.Codec(), "")
framework.WithEtcdKey(func(key string) {
testObject := api.ServiceAccount{ObjectMeta: api.ObjectMeta{Name: "foo"}}
if err := etcdStorage.Set(key, &testObject, nil, 0); err != nil {
@@ -44,7 +44,7 @@ func TestSet(t *testing.T) {
if err != nil || resp.Node == nil {
t.Fatalf("unexpected error: %v %v", err, resp)
}
decoded, err := testapi.Codec().Decode([]byte(resp.Node.Value))
decoded, err := testapi.Default.Codec().Decode([]byte(resp.Node.Value))
if err != nil {
t.Fatalf("unexpected response: %#v", resp.Node)
}
@@ -57,10 +57,10 @@ func TestSet(t *testing.T) {
func TestGet(t *testing.T) {
client := framework.NewEtcdClient()
etcdStorage := etcd.NewEtcdStorage(client, testapi.Codec(), "")
etcdStorage := etcd.NewEtcdStorage(client, testapi.Default.Codec(), "")
framework.WithEtcdKey(func(key string) {
testObject := api.ServiceAccount{ObjectMeta: api.ObjectMeta{Name: "foo"}}
coded, err := testapi.Codec().Encode(&testObject)
coded, err := testapi.Default.Codec().Encode(&testObject)
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
@@ -82,7 +82,7 @@ func TestGet(t *testing.T) {
func TestWriteTTL(t *testing.T) {
client := framework.NewEtcdClient()
etcdStorage := etcd.NewEtcdStorage(client, testapi.Codec(), "")
etcdStorage := etcd.NewEtcdStorage(client, testapi.Default.Codec(), "")
framework.WithEtcdKey(func(key string) {
testObject := api.ServiceAccount{ObjectMeta: api.ObjectMeta{Name: "foo"}}
if err := etcdStorage.Set(key, &testObject, nil, 0); err != nil {
@@ -135,10 +135,10 @@ func TestWriteTTL(t *testing.T) {
func TestWatch(t *testing.T) {
client := framework.NewEtcdClient()
etcdStorage := etcd.NewEtcdStorage(client, testapi.Codec(), etcdtest.PathPrefix())
etcdStorage := etcd.NewEtcdStorage(client, testapi.Default.Codec(), etcdtest.PathPrefix())
framework.WithEtcdKey(func(key string) {
key = etcdtest.AddPrefix(key)
resp, err := client.Set(key, runtime.EncodeOrDie(testapi.Codec(), &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}}), 0)
resp, err := client.Set(key, runtime.EncodeOrDie(testapi.Default.Codec(), &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}}), 0)
if err != nil {
t.Fatalf("unexpected error: %v", err)
}

View File

@@ -41,7 +41,7 @@ func NewEtcdClient() *etcd.Client {
}
func NewEtcdStorage() (storage.Interface, error) {
return master.NewEtcdStorage(NewEtcdClient(), latest.InterfacesFor, testapi.Version(), etcdtest.PathPrefix())
return master.NewEtcdStorage(NewEtcdClient(), latest.InterfacesFor, testapi.Default.Version(), etcdtest.PathPrefix())
}
func RequireEtcd() {

View File

@@ -99,7 +99,7 @@ func NewMasterComponents(c *Config) *MasterComponents {
if c.DeleteEtcdKeys {
DeleteAllEtcdKeys()
}
restClient := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Version(), QPS: c.QPS, Burst: c.Burst})
restClient := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Default.Version(), QPS: c.QPS, Burst: c.Burst})
rcStopCh := make(chan struct{})
controllerManager := replicationcontroller.NewReplicationManager(restClient, c.Burst)
@@ -269,7 +269,7 @@ func StartPods(numPods int, host string, restClient *client.Client) error {
// TODO: Merge this into startMasterOrDie.
func RunAMaster(t *testing.T) (*master.Master, *httptest.Server) {
etcdClient := NewEtcdClient()
etcdStorage, err := master.NewEtcdStorage(etcdClient, latest.InterfacesFor, testapi.Version(), etcdtest.PathPrefix())
etcdStorage, err := master.NewEtcdStorage(etcdClient, latest.InterfacesFor, testapi.Default.Version(), etcdtest.PathPrefix())
if err != nil {
t.Fatalf("unexpected error: %v", err)
}

View File

@@ -109,7 +109,7 @@ func TestApiserverMetrics(t *testing.T) {
// Make a request to the apiserver to ensure there's at least one data point
// for the metrics we're expecting -- otherwise, they won't be exported.
client := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Version()})
client := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Default.Version()})
if _, err := client.Pods(api.NamespaceDefault).List(labels.Everything(), fields.Everything()); err != nil {
t.Fatalf("unexpected error getting pods: %v", err)
}

View File

@@ -40,7 +40,7 @@ func TestPersistentVolumeClaimBinder(t *testing.T) {
defer s.Close()
deleteAllEtcdKeys()
client := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Version()})
client := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Default.Version()})
binder := volumeclaimbinder.NewPersistentVolumeClaimBinder(client, 1*time.Second)
binder.Run()

View File

@@ -77,7 +77,7 @@ func TestUnschedulableNodes(t *testing.T) {
AdmissionControl: admit.NewAlwaysAdmit(),
})
restClient := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Version()})
restClient := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Default.Version()})
schedulerConfigFactory := factory.NewConfigFactory(restClient, nil)
schedulerConfig, err := schedulerConfigFactory.Create()

View File

@@ -71,8 +71,8 @@ func TestSecrets(t *testing.T) {
})
framework.DeleteAllEtcdKeys()
client := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Version()})
DoTestSecrets(t, client, testapi.Version())
client := client.NewOrDie(&client.Config{Host: s.URL, Version: testapi.Default.Version()})
DoTestSecrets(t, client, testapi.Default.Version())
}
// DoTestSecrets test secrets for one api version.

View File

@@ -341,7 +341,7 @@ func startServiceAccountTestServer(t *testing.T) (*client.Client, client.Config,
deleteAllEtcdKeys()
// Etcd
etcdStorage, err := master.NewEtcdStorage(newEtcdClient(), latest.InterfacesFor, testapi.Version(), etcdtest.PathPrefix())
etcdStorage, err := master.NewEtcdStorage(newEtcdClient(), latest.InterfacesFor, testapi.Default.Version(), etcdtest.PathPrefix())
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
@@ -353,9 +353,9 @@ func startServiceAccountTestServer(t *testing.T) (*client.Client, client.Config,
}))
// Anonymous client config
clientConfig := client.Config{Host: apiServer.URL, Version: testapi.Version()}
clientConfig := client.Config{Host: apiServer.URL, Version: testapi.Default.Version()}
// Root client
rootClient := client.NewOrDie(&client.Config{Host: apiServer.URL, Version: testapi.Version(), BearerToken: rootToken})
rootClient := client.NewOrDie(&client.Config{Host: apiServer.URL, Version: testapi.Default.Version(), BearerToken: rootToken})
// Set up two authenticators:
// 1. A token authenticator that maps the rootToken to the "root" user

View File

@@ -66,7 +66,7 @@ func deleteAllEtcdKeys() {
}
func runAMaster(t *testing.T) (*master.Master, *httptest.Server) {
etcdStorage, err := master.NewEtcdStorage(newEtcdClient(), latest.InterfacesFor, testapi.Version(), etcdtest.PathPrefix())
etcdStorage, err := master.NewEtcdStorage(newEtcdClient(), latest.InterfacesFor, testapi.Default.Version(), etcdtest.PathPrefix())
if err != nil {
t.Fatalf("unexpected error: %v", err)
}