Update MockClient to complete with missing Mock functions
Signed-off-by: Illya Chekrygin <illya.chekrygin@gmail.com>
This commit is contained in:
parent
915598b3af
commit
64d1d97307
|
|
@ -30,22 +30,27 @@ var _ client.Client = &MockClient{}
|
|||
// client, but it is has surprising side effects (e.g. silently calling
|
||||
// os.Exit(1)) and does not allow us control over the errors it returns.
|
||||
type MockClient struct {
|
||||
client.Client
|
||||
|
||||
MockGet func(ctx context.Context, key client.ObjectKey, obj runtime.Object) error
|
||||
MockCreate func(ctx context.Context, obj runtime.Object) error
|
||||
MockDelete func(ctx context.Context, obj runtime.Object, opts ...client.DeleteOptionFunc) error
|
||||
MockUpdate func(ctx context.Context, obj runtime.Object) error
|
||||
MockGet func(ctx context.Context, key client.ObjectKey, obj runtime.Object) error
|
||||
MockList func(ctx context.Context, opts *client.ListOptions, list runtime.Object) error
|
||||
MockCreate func(ctx context.Context, obj runtime.Object) error
|
||||
MockDelete func(ctx context.Context, obj runtime.Object, opts ...client.DeleteOptionFunc) error
|
||||
MockUpdate func(ctx context.Context, obj runtime.Object) error
|
||||
MockStatusUpdate func(ctx context.Context, obj runtime.Object) error
|
||||
}
|
||||
|
||||
// NewMockClient returns a MockClient that does nothing when its methods are
|
||||
// called.
|
||||
func NewMockClient() *MockClient {
|
||||
return &MockClient{
|
||||
MockGet: func(ctx context.Context, key client.ObjectKey, obj runtime.Object) error { return nil },
|
||||
MockCreate: func(ctx context.Context, obj runtime.Object) error { return nil },
|
||||
MockDelete: func(ctx context.Context, obj runtime.Object, opts ...client.DeleteOptionFunc) error { return nil },
|
||||
MockUpdate: func(ctx context.Context, obj runtime.Object) error { return nil },
|
||||
//MockStatusClient: &MockStatusClient{
|
||||
// MockUpdate: func(ctx context.Context, obj runtime.Object) error { return nil },
|
||||
//},
|
||||
MockGet: func(ctx context.Context, key client.ObjectKey, obj runtime.Object) error { return nil },
|
||||
MockList: func(ctx context.Context, opts *client.ListOptions, list runtime.Object) error { return nil },
|
||||
MockCreate: func(ctx context.Context, obj runtime.Object) error { return nil },
|
||||
MockDelete: func(ctx context.Context, obj runtime.Object, opts ...client.DeleteOptionFunc) error { return nil },
|
||||
MockUpdate: func(ctx context.Context, obj runtime.Object) error { return nil },
|
||||
MockStatusUpdate: func(ctx context.Context, obj runtime.Object) error { return nil },
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -54,6 +59,11 @@ func (c *MockClient) Get(ctx context.Context, key client.ObjectKey, obj runtime.
|
|||
return c.MockGet(ctx, key, obj)
|
||||
}
|
||||
|
||||
// List calls MockClient's MockList function.
|
||||
func (c *MockClient) List(ctx context.Context, opts *client.ListOptions, list runtime.Object) error {
|
||||
return c.MockList(ctx, opts, list)
|
||||
}
|
||||
|
||||
// Create calls MockClient's MockCreate function.
|
||||
func (c *MockClient) Create(ctx context.Context, obj runtime.Object) error {
|
||||
return c.MockCreate(ctx, obj)
|
||||
|
|
@ -68,3 +78,20 @@ func (c *MockClient) Delete(ctx context.Context, obj runtime.Object, opts ...cli
|
|||
func (c *MockClient) Update(ctx context.Context, obj runtime.Object) error {
|
||||
return c.MockUpdate(ctx, obj)
|
||||
}
|
||||
|
||||
// Status returns status writer for status sub-resource
|
||||
func (c *MockClient) Status() client.StatusWriter {
|
||||
return &MockStatusWriter{
|
||||
MockUpdate: c.MockStatusUpdate,
|
||||
}
|
||||
}
|
||||
|
||||
// MockStatusWriter provides mock functionality for status sub-resource
|
||||
type MockStatusWriter struct {
|
||||
MockUpdate func(ctx context.Context, obj runtime.Object) error
|
||||
}
|
||||
|
||||
// Update status sub-resource
|
||||
func (m *MockStatusWriter) Update(ctx context.Context, obj runtime.Object) error {
|
||||
return m.MockUpdate(ctx, obj)
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue