From 8a2f709b35e750a40b12ccf287e279b1da0f07ec Mon Sep 17 00:00:00 2001 From: Michal Fojtik Date: Wed, 30 Jan 2019 09:34:43 +0100 Subject: [PATCH] Wait for post-hooks to run before checking the healthz output --- staging/src/k8s.io/apiserver/pkg/server/config_test.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/staging/src/k8s.io/apiserver/pkg/server/config_test.go b/staging/src/k8s.io/apiserver/pkg/server/config_test.go index 8d7aa170c28..524b791388a 100644 --- a/staging/src/k8s.io/apiserver/pkg/server/config_test.go +++ b/staging/src/k8s.io/apiserver/pkg/server/config_test.go @@ -56,7 +56,9 @@ func TestNewWithDelegate(t *testing.T) { w.WriteHeader(http.StatusForbidden) }) + delegatePostStartHookChan := make(chan struct{}) delegateServer.AddPostStartHook("delegate-post-start-hook", func(context PostStartHookContext) error { + defer close(delegatePostStartHookChan) return nil }) @@ -82,7 +84,9 @@ func TestNewWithDelegate(t *testing.T) { w.WriteHeader(http.StatusUnauthorized) }) + wrappingPostStartHookChan := make(chan struct{}) wrappingServer.AddPostStartHook("wrapping-post-start-hook", func(context PostStartHookContext) error { + defer close(wrappingPostStartHookChan) return nil }) @@ -94,6 +98,10 @@ func TestNewWithDelegate(t *testing.T) { server := httptest.NewServer(wrappingServer.Handler) defer server.Close() + // Wait for the hooks to finish before checking the response + <-delegatePostStartHookChan + <-wrappingPostStartHookChan + checkPath(server.URL, http.StatusOK, `{ "paths": [ "/apis",