From 43e769af733ded4ac53fb151319f971237a49271 Mon Sep 17 00:00:00 2001 From: Grant Rodgers Date: Mon, 3 Dec 2018 14:22:23 -0800 Subject: [PATCH] Panic in FakeClient if objects fail to add User code may use this fake client in tests without setting up logging, making errors here extremely difficult to track down. Panic logs more reliably with better debugging details. --- pkg/client/fake/client.go | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/pkg/client/fake/client.go b/pkg/client/fake/client.go index a433190c6a..2e9a64a74c 100644 --- a/pkg/client/fake/client.go +++ b/pkg/client/fake/client.go @@ -20,7 +20,6 @@ import ( "context" "encoding/json" "fmt" - "os" "strings" "k8s.io/apimachinery/pkg/api/meta" @@ -32,14 +31,9 @@ import ( "sigs.k8s.io/controller-runtime/pkg/client" "sigs.k8s.io/controller-runtime/pkg/client/apiutil" - logf "sigs.k8s.io/controller-runtime/pkg/internal/log" "sigs.k8s.io/controller-runtime/pkg/internal/objectutil" ) -var ( - log = logf.RuntimeLog.WithName("fake-client") -) - type fakeClient struct { tracker testing.ObjectTracker scheme *runtime.Scheme @@ -63,9 +57,7 @@ func NewFakeClientWithScheme(clientScheme *runtime.Scheme, initObjs ...runtime.O for _, obj := range initObjs { err := tracker.Add(obj) if err != nil { - log.Error(err, "failed to add object to fake client", "object", obj) - os.Exit(1) - return nil + panic(fmt.Errorf("failed to add object %v to fake client: %v", obj, err)) } } return &fakeClient{