// Code generated by MockGen. DO NOT EDIT.
// Source: gitlab.com/gitlab-org/api/client-go (interfaces: SidekiqServiceInterface)
//
// Generated by this command:
//
//	mockgen -typed -destination=sidekiq_metrics_mock.go -write_package_comment=false -package=testing gitlab.com/gitlab-org/api/client-go SidekiqServiceInterface
//

package testing

import (
	reflect "reflect"

	gitlab "gitlab.com/gitlab-org/api/client-go"
	gomock "go.uber.org/mock/gomock"
)

// MockSidekiqServiceInterface is a mock of SidekiqServiceInterface interface.
type MockSidekiqServiceInterface struct {
	ctrl     *gomock.Controller
	recorder *MockSidekiqServiceInterfaceMockRecorder
	isgomock struct{}
}

// MockSidekiqServiceInterfaceMockRecorder is the mock recorder for MockSidekiqServiceInterface.
type MockSidekiqServiceInterfaceMockRecorder struct {
	mock *MockSidekiqServiceInterface
}

// NewMockSidekiqServiceInterface creates a new mock instance.
func NewMockSidekiqServiceInterface(ctrl *gomock.Controller) *MockSidekiqServiceInterface {
	mock := &MockSidekiqServiceInterface{ctrl: ctrl}
	mock.recorder = &MockSidekiqServiceInterfaceMockRecorder{mock}
	return mock
}

// EXPECT returns an object that allows the caller to indicate expected use.
func (m *MockSidekiqServiceInterface) EXPECT() *MockSidekiqServiceInterfaceMockRecorder {
	return m.recorder
}

// GetCompoundMetrics mocks base method.
func (m *MockSidekiqServiceInterface) GetCompoundMetrics(options ...gitlab.RequestOptionFunc) (*gitlab.CompoundMetrics, *gitlab.Response, error) {
	m.ctrl.T.Helper()
	varargs := []any{}
	for _, a := range options {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "GetCompoundMetrics", varargs...)
	ret0, _ := ret[0].(*gitlab.CompoundMetrics)
	ret1, _ := ret[1].(*gitlab.Response)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// GetCompoundMetrics indicates an expected call of GetCompoundMetrics.
func (mr *MockSidekiqServiceInterfaceMockRecorder) GetCompoundMetrics(options ...any) *MockSidekiqServiceInterfaceGetCompoundMetricsCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetCompoundMetrics", reflect.TypeOf((*MockSidekiqServiceInterface)(nil).GetCompoundMetrics), options...)
	return &MockSidekiqServiceInterfaceGetCompoundMetricsCall{Call: call}
}

// MockSidekiqServiceInterfaceGetCompoundMetricsCall wrap *gomock.Call
type MockSidekiqServiceInterfaceGetCompoundMetricsCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockSidekiqServiceInterfaceGetCompoundMetricsCall) Return(arg0 *gitlab.CompoundMetrics, arg1 *gitlab.Response, arg2 error) *MockSidekiqServiceInterfaceGetCompoundMetricsCall {
	c.Call = c.Call.Return(arg0, arg1, arg2)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockSidekiqServiceInterfaceGetCompoundMetricsCall) Do(f func(...gitlab.RequestOptionFunc) (*gitlab.CompoundMetrics, *gitlab.Response, error)) *MockSidekiqServiceInterfaceGetCompoundMetricsCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockSidekiqServiceInterfaceGetCompoundMetricsCall) DoAndReturn(f func(...gitlab.RequestOptionFunc) (*gitlab.CompoundMetrics, *gitlab.Response, error)) *MockSidekiqServiceInterfaceGetCompoundMetricsCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// GetJobStats mocks base method.
func (m *MockSidekiqServiceInterface) GetJobStats(options ...gitlab.RequestOptionFunc) (*gitlab.JobStats, *gitlab.Response, error) {
	m.ctrl.T.Helper()
	varargs := []any{}
	for _, a := range options {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "GetJobStats", varargs...)
	ret0, _ := ret[0].(*gitlab.JobStats)
	ret1, _ := ret[1].(*gitlab.Response)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// GetJobStats indicates an expected call of GetJobStats.
func (mr *MockSidekiqServiceInterfaceMockRecorder) GetJobStats(options ...any) *MockSidekiqServiceInterfaceGetJobStatsCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetJobStats", reflect.TypeOf((*MockSidekiqServiceInterface)(nil).GetJobStats), options...)
	return &MockSidekiqServiceInterfaceGetJobStatsCall{Call: call}
}

// MockSidekiqServiceInterfaceGetJobStatsCall wrap *gomock.Call
type MockSidekiqServiceInterfaceGetJobStatsCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockSidekiqServiceInterfaceGetJobStatsCall) Return(arg0 *gitlab.JobStats, arg1 *gitlab.Response, arg2 error) *MockSidekiqServiceInterfaceGetJobStatsCall {
	c.Call = c.Call.Return(arg0, arg1, arg2)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockSidekiqServiceInterfaceGetJobStatsCall) Do(f func(...gitlab.RequestOptionFunc) (*gitlab.JobStats, *gitlab.Response, error)) *MockSidekiqServiceInterfaceGetJobStatsCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockSidekiqServiceInterfaceGetJobStatsCall) DoAndReturn(f func(...gitlab.RequestOptionFunc) (*gitlab.JobStats, *gitlab.Response, error)) *MockSidekiqServiceInterfaceGetJobStatsCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// GetProcessMetrics mocks base method.
func (m *MockSidekiqServiceInterface) GetProcessMetrics(options ...gitlab.RequestOptionFunc) (*gitlab.ProcessMetrics, *gitlab.Response, error) {
	m.ctrl.T.Helper()
	varargs := []any{}
	for _, a := range options {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "GetProcessMetrics", varargs...)
	ret0, _ := ret[0].(*gitlab.ProcessMetrics)
	ret1, _ := ret[1].(*gitlab.Response)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// GetProcessMetrics indicates an expected call of GetProcessMetrics.
func (mr *MockSidekiqServiceInterfaceMockRecorder) GetProcessMetrics(options ...any) *MockSidekiqServiceInterfaceGetProcessMetricsCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetProcessMetrics", reflect.TypeOf((*MockSidekiqServiceInterface)(nil).GetProcessMetrics), options...)
	return &MockSidekiqServiceInterfaceGetProcessMetricsCall{Call: call}
}

// MockSidekiqServiceInterfaceGetProcessMetricsCall wrap *gomock.Call
type MockSidekiqServiceInterfaceGetProcessMetricsCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockSidekiqServiceInterfaceGetProcessMetricsCall) Return(arg0 *gitlab.ProcessMetrics, arg1 *gitlab.Response, arg2 error) *MockSidekiqServiceInterfaceGetProcessMetricsCall {
	c.Call = c.Call.Return(arg0, arg1, arg2)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockSidekiqServiceInterfaceGetProcessMetricsCall) Do(f func(...gitlab.RequestOptionFunc) (*gitlab.ProcessMetrics, *gitlab.Response, error)) *MockSidekiqServiceInterfaceGetProcessMetricsCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockSidekiqServiceInterfaceGetProcessMetricsCall) DoAndReturn(f func(...gitlab.RequestOptionFunc) (*gitlab.ProcessMetrics, *gitlab.Response, error)) *MockSidekiqServiceInterfaceGetProcessMetricsCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// GetQueueMetrics mocks base method.
func (m *MockSidekiqServiceInterface) GetQueueMetrics(options ...gitlab.RequestOptionFunc) (*gitlab.QueueMetrics, *gitlab.Response, error) {
	m.ctrl.T.Helper()
	varargs := []any{}
	for _, a := range options {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "GetQueueMetrics", varargs...)
	ret0, _ := ret[0].(*gitlab.QueueMetrics)
	ret1, _ := ret[1].(*gitlab.Response)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// GetQueueMetrics indicates an expected call of GetQueueMetrics.
func (mr *MockSidekiqServiceInterfaceMockRecorder) GetQueueMetrics(options ...any) *MockSidekiqServiceInterfaceGetQueueMetricsCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetQueueMetrics", reflect.TypeOf((*MockSidekiqServiceInterface)(nil).GetQueueMetrics), options...)
	return &MockSidekiqServiceInterfaceGetQueueMetricsCall{Call: call}
}

// MockSidekiqServiceInterfaceGetQueueMetricsCall wrap *gomock.Call
type MockSidekiqServiceInterfaceGetQueueMetricsCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockSidekiqServiceInterfaceGetQueueMetricsCall) Return(arg0 *gitlab.QueueMetrics, arg1 *gitlab.Response, arg2 error) *MockSidekiqServiceInterfaceGetQueueMetricsCall {
	c.Call = c.Call.Return(arg0, arg1, arg2)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockSidekiqServiceInterfaceGetQueueMetricsCall) Do(f func(...gitlab.RequestOptionFunc) (*gitlab.QueueMetrics, *gitlab.Response, error)) *MockSidekiqServiceInterfaceGetQueueMetricsCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockSidekiqServiceInterfaceGetQueueMetricsCall) DoAndReturn(f func(...gitlab.RequestOptionFunc) (*gitlab.QueueMetrics, *gitlab.Response, error)) *MockSidekiqServiceInterfaceGetQueueMetricsCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}
