89 lines
3.8 KiB
Go
89 lines
3.8 KiB
Go
package mock
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/influxdata/influxdb"
|
|
)
|
|
|
|
// CheckService is a mock implementation of a retention.CheckService, which
|
|
// also makes it a suitable mock to use wherever an influxdb.CheckService is required.
|
|
type CheckService struct {
|
|
OrganizationService
|
|
UserResourceMappingService
|
|
|
|
// Methods for an influxdb.CheckService
|
|
FindCheckByIDFn func(context.Context, influxdb.ID) (influxdb.Check, error)
|
|
FindCheckByIDCalls SafeCount
|
|
FindCheckFn func(context.Context, influxdb.CheckFilter) (influxdb.Check, error)
|
|
FindCheckCalls SafeCount
|
|
FindChecksFn func(context.Context, influxdb.CheckFilter, ...influxdb.FindOptions) ([]influxdb.Check, int, error)
|
|
FindChecksCalls SafeCount
|
|
CreateCheckFn func(context.Context, influxdb.CheckCreate, influxdb.ID) error
|
|
CreateCheckCalls SafeCount
|
|
UpdateCheckFn func(context.Context, influxdb.ID, influxdb.CheckCreate) (influxdb.Check, error)
|
|
UpdateCheckCalls SafeCount
|
|
PatchCheckFn func(context.Context, influxdb.ID, influxdb.CheckUpdate) (influxdb.Check, error)
|
|
PatchCheckCalls SafeCount
|
|
DeleteCheckFn func(context.Context, influxdb.ID) error
|
|
DeleteCheckCalls SafeCount
|
|
}
|
|
|
|
// NewCheckService returns a mock CheckService where its methods will return
|
|
// zero values.
|
|
func NewCheckService() *CheckService {
|
|
return &CheckService{
|
|
FindCheckByIDFn: func(context.Context, influxdb.ID) (influxdb.Check, error) { return nil, nil },
|
|
FindCheckFn: func(context.Context, influxdb.CheckFilter) (influxdb.Check, error) { return nil, nil },
|
|
FindChecksFn: func(context.Context, influxdb.CheckFilter, ...influxdb.FindOptions) ([]influxdb.Check, int, error) {
|
|
return nil, 0, nil
|
|
},
|
|
CreateCheckFn: func(context.Context, influxdb.CheckCreate, influxdb.ID) error { return nil },
|
|
UpdateCheckFn: func(context.Context, influxdb.ID, influxdb.CheckCreate) (influxdb.Check, error) { return nil, nil },
|
|
PatchCheckFn: func(context.Context, influxdb.ID, influxdb.CheckUpdate) (influxdb.Check, error) { return nil, nil },
|
|
DeleteCheckFn: func(context.Context, influxdb.ID) error { return nil },
|
|
}
|
|
}
|
|
|
|
// FindCheckByID returns a single check by ID.
|
|
func (s *CheckService) FindCheckByID(ctx context.Context, id influxdb.ID) (influxdb.Check, error) {
|
|
defer s.FindCheckByIDCalls.IncrFn()()
|
|
return s.FindCheckByIDFn(ctx, id)
|
|
}
|
|
|
|
// FindCheck returns the first check that matches filter.
|
|
func (s *CheckService) FindCheck(ctx context.Context, filter influxdb.CheckFilter) (influxdb.Check, error) {
|
|
defer s.FindCheckCalls.IncrFn()()
|
|
return s.FindCheckFn(ctx, filter)
|
|
}
|
|
|
|
// FindChecks returns a list of checks that match filter and the total count of matching checks.
|
|
func (s *CheckService) FindChecks(ctx context.Context, filter influxdb.CheckFilter, opts ...influxdb.FindOptions) ([]influxdb.Check, int, error) {
|
|
defer s.FindChecksCalls.IncrFn()()
|
|
return s.FindChecksFn(ctx, filter, opts...)
|
|
}
|
|
|
|
// CreateCheck creates a new check and sets b.ID with the new identifier.
|
|
func (s *CheckService) CreateCheck(ctx context.Context, check influxdb.CheckCreate, userID influxdb.ID) error {
|
|
defer s.CreateCheckCalls.IncrFn()()
|
|
return s.CreateCheckFn(ctx, check, userID)
|
|
}
|
|
|
|
// UpdateCheck updates everything except id orgID.
|
|
func (s *CheckService) UpdateCheck(ctx context.Context, id influxdb.ID, chk influxdb.CheckCreate) (influxdb.Check, error) {
|
|
defer s.UpdateCheckCalls.IncrFn()()
|
|
return s.UpdateCheckFn(ctx, id, chk)
|
|
}
|
|
|
|
// PatchCheck updates a single check with changeset.
|
|
func (s *CheckService) PatchCheck(ctx context.Context, id influxdb.ID, upd influxdb.CheckUpdate) (influxdb.Check, error) {
|
|
defer s.PatchCheckCalls.IncrFn()()
|
|
return s.PatchCheckFn(ctx, id, upd)
|
|
}
|
|
|
|
// DeleteCheck removes a check by ID.
|
|
func (s *CheckService) DeleteCheck(ctx context.Context, id influxdb.ID) error {
|
|
defer s.DeleteCheckCalls.IncrFn()()
|
|
return s.DeleteCheckFn(ctx, id)
|
|
}
|