From e89e40c1870b5a50fe71d26be26e3e8c29e744b6 Mon Sep 17 00:00:00 2001 From: Lukasz Szaszkiewicz Date: Thu, 23 May 2024 16:33:43 +0200 Subject: [PATCH] client-go/rest: add TestWatchListWhenFeatureGateDisabled unit test Kubernetes-commit: 8c0c1f720182f138c3151d3d67a80fa67b86a240 --- rest/request_watchlist_test.go | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/rest/request_watchlist_test.go b/rest/request_watchlist_test.go index 4ebfe81b..badd871f 100644 --- a/rest/request_watchlist_test.go +++ b/rest/request_watchlist_test.go @@ -31,6 +31,8 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/watch" + clientfeatures "k8s.io/client-go/features" + clientfeaturestesting "k8s.io/client-go/features/testing" ) func TestWatchListResult(t *testing.T) { @@ -320,6 +322,22 @@ func TestWatchListFailure(t *testing.T) { } } +func TestWatchListWhenFeatureGateDisabled(t *testing.T) { + clientfeaturestesting.SetFeatureDuringTest(t, clientfeatures.WatchListClient, false) + expectedError := fmt.Errorf("%q feature gate is not enabled", clientfeatures.WatchListClient) + target := &Request{} + + res := target.WatchList(context.TODO()) + + resErr := res.Into(nil) + if resErr == nil { + t.Fatal("expected to get an error, got nil") + } + if resErr.Error() != expectedError.Error() { + t.Fatalf("unexpected error: %v, expected: %v", resErr, expectedError) + } +} + func makePod(rv uint64) *v1.Pod { return &v1.Pod{ ObjectMeta: metav1.ObjectMeta{