Skip to content

Commit 43e769a

Browse files
committed
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.
1 parent 90226f9 commit 43e769a

File tree

1 file changed

+1
-9
lines changed

1 file changed

+1
-9
lines changed

pkg/client/fake/client.go

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ import (
2020
"context"
2121
"encoding/json"
2222
"fmt"
23-
"os"
2423
"strings"
2524

2625
"k8s.io/apimachinery/pkg/api/meta"
@@ -32,14 +31,9 @@ import (
3231

3332
"sigs.k8s.io/controller-runtime/pkg/client"
3433
"sigs.k8s.io/controller-runtime/pkg/client/apiutil"
35-
logf "sigs.k8s.io/controller-runtime/pkg/internal/log"
3634
"sigs.k8s.io/controller-runtime/pkg/internal/objectutil"
3735
)
3836

39-
var (
40-
log = logf.RuntimeLog.WithName("fake-client")
41-
)
42-
4337
type fakeClient struct {
4438
tracker testing.ObjectTracker
4539
scheme *runtime.Scheme
@@ -63,9 +57,7 @@ func NewFakeClientWithScheme(clientScheme *runtime.Scheme, initObjs ...runtime.O
6357
for _, obj := range initObjs {
6458
err := tracker.Add(obj)
6559
if err != nil {
66-
log.Error(err, "failed to add object to fake client", "object", obj)
67-
os.Exit(1)
68-
return nil
60+
panic(fmt.Errorf("failed to add object %v to fake client: %v", obj, err))
6961
}
7062
}
7163
return &fakeClient{

0 commit comments

Comments
 (0)