Commit d0087dfe authored by Clayton Coleman's avatar Clayton Coleman

Integration tests don't initialize with a client

Result is a 500 error if the client object is used
parent 9030759d
......@@ -72,7 +72,14 @@ func TestWhoAmI(t *testing.T) {
t.Fatalf("unexpected error: %v", err)
}
m := master.New(&master.Config{
var m *master.Master
s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
m.Handler.ServeHTTP(w, req)
}))
defer s.Close()
m = master.New(&master.Config{
Client: client.NewOrDie(&client.Config{Host: s.URL}),
EtcdHelper: helper,
KubeletClient: client.FakeKubeletClient{},
EnableLogsSupport: false,
......@@ -82,9 +89,6 @@ func TestWhoAmI(t *testing.T) {
Authorizer: apiserver.NewAlwaysAllowAuthorizer(),
})
s := httptest.NewServer(m.Handler)
defer s.Close()
// TODO: also test TLS, using e.g NewUnsafeTLSTransport() and NewClientCertTLSTransport() (see pkg/client/helper.go)
transport := http.DefaultTransport
......@@ -363,7 +367,14 @@ func TestAuthModeAlwaysAllow(t *testing.T) {
t.Fatalf("unexpected error: %v", err)
}
m := master.New(&master.Config{
var m *master.Master
s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
m.Handler.ServeHTTP(w, req)
}))
defer s.Close()
m = master.New(&master.Config{
Client: client.NewOrDie(&client.Config{Host: s.URL}),
EtcdHelper: helper,
KubeletClient: client.FakeKubeletClient{},
EnableLogsSupport: false,
......@@ -372,8 +383,6 @@ func TestAuthModeAlwaysAllow(t *testing.T) {
Authorizer: apiserver.NewAlwaysAllowAuthorizer(),
})
s := httptest.NewServer(m.Handler)
defer s.Close()
transport := http.DefaultTransport
for _, r := range getTestRequests() {
......@@ -408,7 +417,14 @@ func TestAuthModeAlwaysDeny(t *testing.T) {
t.Fatalf("unexpected error: %v", err)
}
m := master.New(&master.Config{
var m *master.Master
s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
m.Handler.ServeHTTP(w, req)
}))
defer s.Close()
m = master.New(&master.Config{
Client: client.NewOrDie(&client.Config{Host: s.URL}),
EtcdHelper: helper,
KubeletClient: client.FakeKubeletClient{},
EnableLogsSupport: false,
......@@ -417,8 +433,6 @@ func TestAuthModeAlwaysDeny(t *testing.T) {
Authorizer: apiserver.NewAlwaysDenyAuthorizer(),
})
s := httptest.NewServer(m.Handler)
defer s.Close()
transport := http.DefaultTransport
for _, r := range getTestRequests() {
......@@ -467,7 +481,14 @@ func TestAliceNotForbiddenOrUnauthorized(t *testing.T) {
t.Fatalf("unexpected error: %v", err)
}
m := master.New(&master.Config{
var m *master.Master
s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
m.Handler.ServeHTTP(w, req)
}))
defer s.Close()
m = master.New(&master.Config{
Client: client.NewOrDie(&client.Config{Host: s.URL}),
EtcdHelper: helper,
KubeletClient: client.FakeKubeletClient{},
EnableLogsSupport: false,
......@@ -477,8 +498,6 @@ func TestAliceNotForbiddenOrUnauthorized(t *testing.T) {
Authorizer: allowAliceAuthorizer{},
})
s := httptest.NewServer(m.Handler)
defer s.Close()
transport := http.DefaultTransport
for _, r := range getTestRequests() {
......@@ -499,6 +518,8 @@ func TestAliceNotForbiddenOrUnauthorized(t *testing.T) {
}
if _, ok := r.statusCodes[resp.StatusCode]; !ok {
t.Errorf("Expected status one of %v, but got %v", r.statusCodes, resp.StatusCode)
b, _ := ioutil.ReadAll(resp.Body)
t.Errorf("Body: %v", string(b))
}
}()
}
......@@ -519,7 +540,14 @@ func TestBobIsForbidden(t *testing.T) {
t.Fatalf("unexpected error: %v", err)
}
m := master.New(&master.Config{
var m *master.Master
s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
m.Handler.ServeHTTP(w, req)
}))
defer s.Close()
m = master.New(&master.Config{
Client: client.NewOrDie(&client.Config{Host: s.URL}),
EtcdHelper: helper,
KubeletClient: client.FakeKubeletClient{},
EnableLogsSupport: false,
......@@ -529,8 +557,6 @@ func TestBobIsForbidden(t *testing.T) {
Authorizer: allowAliceAuthorizer{},
})
s := httptest.NewServer(m.Handler)
defer s.Close()
transport := http.DefaultTransport
for _, r := range getTestRequests() {
......@@ -573,7 +599,14 @@ func TestUnknownUserIsUnauthorized(t *testing.T) {
t.Fatalf("unexpected error: %v", err)
}
m := master.New(&master.Config{
var m *master.Master
s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
m.Handler.ServeHTTP(w, req)
}))
defer s.Close()
m = master.New(&master.Config{
Client: client.NewOrDie(&client.Config{Host: s.URL}),
EtcdHelper: helper,
KubeletClient: client.FakeKubeletClient{},
EnableLogsSupport: false,
......@@ -583,8 +616,6 @@ func TestUnknownUserIsUnauthorized(t *testing.T) {
Authorizer: allowAliceAuthorizer{},
})
s := httptest.NewServer(m.Handler)
defer s.Close()
transport := http.DefaultTransport
for _, r := range getTestRequests() {
......@@ -645,7 +676,15 @@ func TestNamespaceAuthorization(t *testing.T) {
a := newAuthorizerWithContents(t, `{"namespace": "foo"}
`)
m := master.New(&master.Config{
var m *master.Master
s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
m.Handler.ServeHTTP(w, req)
}))
defer s.Close()
m = master.New(&master.Config{
Client: client.NewOrDie(&client.Config{Host: s.URL}),
EtcdHelper: helper,
KubeletClient: client.FakeKubeletClient{},
EnableLogsSupport: false,
......@@ -655,8 +694,6 @@ func TestNamespaceAuthorization(t *testing.T) {
Authorizer: a,
})
s := httptest.NewServer(m.Handler)
defer s.Close()
transport := http.DefaultTransport
requests := []struct {
......@@ -699,6 +736,8 @@ func TestNamespaceAuthorization(t *testing.T) {
}
if _, ok := r.statusCodes[resp.StatusCode]; !ok {
t.Errorf("Expected status one of %v, but got %v", r.statusCodes, resp.StatusCode)
b, _ := ioutil.ReadAll(resp.Body)
t.Errorf("Body: %v", string(b))
}
}()
}
......@@ -720,7 +759,15 @@ func TestKindAuthorization(t *testing.T) {
a := newAuthorizerWithContents(t, `{"kind": "services"}
`)
m := master.New(&master.Config{
var m *master.Master
s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
m.Handler.ServeHTTP(w, req)
}))
defer s.Close()
m = master.New(&master.Config{
Client: client.NewOrDie(&client.Config{Host: s.URL}),
EtcdHelper: helper,
KubeletClient: client.FakeKubeletClient{},
EnableLogsSupport: false,
......@@ -730,8 +777,6 @@ func TestKindAuthorization(t *testing.T) {
Authorizer: a,
})
s := httptest.NewServer(m.Handler)
defer s.Close()
transport := http.DefaultTransport
requests := []struct {
......@@ -768,6 +813,8 @@ func TestKindAuthorization(t *testing.T) {
}
if _, ok := r.statusCodes[resp.StatusCode]; !ok {
t.Errorf("Expected status one of %v, but got %v", r.statusCodes, resp.StatusCode)
b, _ := ioutil.ReadAll(resp.Body)
t.Errorf("Body: %v", string(b))
}
}
}
......@@ -789,7 +836,15 @@ func TestReadOnlyAuthorization(t *testing.T) {
a := newAuthorizerWithContents(t, `{"readonly": true}
`)
m := master.New(&master.Config{
var m *master.Master
s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
m.Handler.ServeHTTP(w, req)
}))
defer s.Close()
m = master.New(&master.Config{
Client: client.NewOrDie(&client.Config{Host: s.URL}),
EtcdHelper: helper,
KubeletClient: client.FakeKubeletClient{},
EnableLogsSupport: false,
......@@ -799,8 +854,6 @@ func TestReadOnlyAuthorization(t *testing.T) {
Authorizer: a,
})
s := httptest.NewServer(m.Handler)
defer s.Close()
transport := http.DefaultTransport
requests := []struct {
......@@ -831,6 +884,8 @@ func TestReadOnlyAuthorization(t *testing.T) {
}
if _, ok := r.statusCodes[resp.StatusCode]; !ok {
t.Errorf("Expected status one of %v, but got %v", r.statusCodes, resp.StatusCode)
b, _ := ioutil.ReadAll(resp.Body)
t.Errorf("Body: %v", string(b))
}
}()
}
......
......@@ -19,6 +19,7 @@ limitations under the License.
package integration
import (
"net/http"
"net/http/httptest"
"reflect"
"testing"
......@@ -40,7 +41,15 @@ func TestClient(t *testing.T) {
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
m := master.New(&master.Config{
var m *master.Master
s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
m.Handler.ServeHTTP(w, req)
}))
defer s.Close()
m = master.New(&master.Config{
Client: client.NewOrDie(&client.Config{Host: s.URL}),
EtcdHelper: helper,
KubeletClient: client.FakeKubeletClient{},
EnableLogsSupport: false,
......@@ -49,9 +58,6 @@ func TestClient(t *testing.T) {
Authorizer: apiserver.NewAlwaysAllowAuthorizer(),
})
s := httptest.NewServer(m.Handler)
defer s.Close()
testCases := []string{
"v1beta1",
"v1beta2",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment