From 924e8960ae6ac7bd6eb6029c7b2319708b1ddac1 Mon Sep 17 00:00:00 2001 From: KubeKyrie Date: Fri, 29 Mar 2024 12:23:32 +0800 Subject: [PATCH] add ut Signed-off-by: KubeKyrie Signed-off-by: KubeKyrie --- .../infomanifest/controller_test.go | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/pkg/controllers/infomanifest/controller_test.go b/pkg/controllers/infomanifest/controller_test.go index c2d35a856..b58d6855d 100644 --- a/pkg/controllers/infomanifest/controller_test.go +++ b/pkg/controllers/infomanifest/controller_test.go @@ -13,6 +13,7 @@ import ( "github.com/go-logr/logr" corev1 "k8s.io/api/core/v1" + "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/api/meta" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" @@ -959,6 +960,28 @@ func TestReconcile(t *testing.T) { }, want: true, }, + { + name: "list manifests error", + args: func() bool { + fetchTestingFake(controller.InfoManifestClientSet.KubeanV1alpha1()).PrependReactor("list", "manifests", func(action k8stesting.Action) (handled bool, ret runtime.Object, err error) { + return true, nil, fmt.Errorf("this is error when list manifests") + }) + result, err := controller.Reconcile(context.Background(), controllerruntime.Request{NamespacedName: types.NamespacedName{Name: manifestName}}) + return err == nil && result.RequeueAfter == Loop + }, + want: true, + }, + { + name: "list manifests error and isNotFound", + args: func() bool { + fetchTestingFake(controller.InfoManifestClientSet.KubeanV1alpha1()).PrependReactor("list", "manifests", func(action k8stesting.Action) (handled bool, ret runtime.Object, err error) { + return true, nil, errors.NewNotFound(manifestv1alpha1.Resource("manifests"), "manifest-name") + }) + result, err := controller.Reconcile(context.Background(), controllerruntime.Request{NamespacedName: types.NamespacedName{Name: manifestName}}) + return err == nil && result.Requeue == false + }, + want: true, + }, } for _, test := range tests { t.Run(test.name, func(t *testing.T) {