Clean shutdown of apply integration tests

This commit is contained in:
Wojciech Tyczyński 2022-11-05 20:09:43 +01:00
parent c519bc02e8
commit 71d87272de
4 changed files with 11 additions and 2 deletions

View File

@ -435,6 +435,7 @@ func TestApplyCRDUnhandledSchema(t *testing.T) {
if err != nil {
t.Fatal(err)
}
defer etcdclient.Close()
server, err := apiservertesting.StartTestServer(t, apiservertesting.NewDefaultTestServerOptions(), nil, storageConfig)
if err != nil {

View File

@ -119,8 +119,15 @@ func TestNamespaceCondition(t *testing.T) {
// TestNamespaceLabels tests for default labels added in https://github.com/kubernetes/kubernetes/pull/96968
func TestNamespaceLabels(t *testing.T) {
closeFn, _, _, kubeClient, _ := namespaceLifecycleSetup(t)
closeFn, nsController, _, kubeClient, _ := namespaceLifecycleSetup(t)
defer closeFn()
// Even though nscontroller isn't used in this test, its creation is already
// spawning some goroutines. So we need to run it to ensure they won't leak.
stopCh := make(chan struct{})
close(stopCh)
go nsController.Run(5, stopCh)
nsName := "test-namespace-labels-generated"
// Create a new namespace w/ no name
ns, err := kubeClient.CoreV1().Namespaces().Create(context.TODO(), &corev1.Namespace{

View File

@ -63,6 +63,7 @@ func TestCoreResourceEnqueue(t *testing.T) {
testutils.SyncInformerFactory(testCtx)
defer testutils.CleanupTest(t, testCtx)
defer testCtx.Scheduler.SchedulingQueue.Close()
cs, ns, ctx := testCtx.ClientSet, testCtx.NS.Name, testCtx.Ctx
// Create one Node with a taint.

View File

@ -899,7 +899,7 @@ func timeout(ctx context.Context, d time.Duration, f func()) error {
done := make(chan struct{})
go func() {
f()
done <- struct{}{}
close(done)
}()
select {