From c832203707d1f02cb5804e26eaeb1984708ffab3 Mon Sep 17 00:00:00 2001 From: Lukasz Szaszkiewicz Date: Mon, 3 Nov 2025 10:02:55 +0100 Subject: [PATCH] pkg/controller/garbagecollector/garbagecollector_test: wrap kubeClient with a client that doesn't support WatchList semantics. --- .../garbagecollector/garbagecollector_test.go | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/pkg/controller/garbagecollector/garbagecollector_test.go b/pkg/controller/garbagecollector/garbagecollector_test.go index 8e6b9ac0903..42232914116 100644 --- a/pkg/controller/garbagecollector/garbagecollector_test.go +++ b/pkg/controller/garbagecollector/garbagecollector_test.go @@ -818,6 +818,14 @@ func TestGetDeletableResources(t *testing.T) { } } +type wrappedKubeClientWithUnsupportedWatchListSemantics struct { + kubernetes.Interface +} + +func (c *wrappedKubeClientWithUnsupportedWatchListSemantics) IsWatchListSemanticsUnSupported() bool { + return true +} + // TestGarbageCollectorSync ensures that a discovery client error // or an informer sync error will not cause the garbage collector // to block infinitely. @@ -889,10 +897,12 @@ func TestGarbageCollectorSync(t *testing.T) { srv, clientConfig := testServerAndClientConfig(alternativeTestHandler) defer srv.Close() clientConfig.ContentConfig.NegotiatedSerializer = nil - client, err := kubernetes.NewForConfig(clientConfig) + kubeClient, err := kubernetes.NewForConfig(clientConfig) if err != nil { t.Fatal(err) } + // TODO(#115478): migrate this test to use fakeClient instead of the real client. + client := &wrappedKubeClientWithUnsupportedWatchListSemantics{kubeClient} tweakableRM := meta.NewDefaultRESTMapper(nil) tweakableRM.AddSpecific(schema.GroupVersionKind{Version: "v1", Kind: "Pod"}, schema.GroupVersionResource{Version: "v1", Resource: "pods"}, schema.GroupVersionResource{Version: "v1", Resource: "pod"}, meta.RESTScopeNamespace)