// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/tidbcloud/infra-provider/regional-server/pkg/repository (interfaces: LoadBalancerReader,LoadBalancerWriter,LoadBalancerReaderWriter)
//
// Generated by this command:
//
//	mockgen -destination ./test/mockrepository/loadbalancer.go -package mockrepository github.com/tidbcloud/infra-provider/regional-server/pkg/repository LoadBalancerReader,LoadBalancerWriter,LoadBalancerReaderWriter
//

// Package mockrepository is a generated GoMock package.
package mockrepository

import (
	context "context"
	reflect "reflect"

	v1alpha1 "github.com/tidbcloud/infra-provider/regional-server/api/v1alpha1"
	gomock "go.uber.org/mock/gomock"
	types "k8s.io/apimachinery/pkg/types"
	client "sigs.k8s.io/controller-runtime/pkg/client"
)

// MockLoadBalancerReader is a mock of LoadBalancerReader interface.
type MockLoadBalancerReader struct {
	ctrl     *gomock.Controller
	recorder *MockLoadBalancerReaderMockRecorder
}

// MockLoadBalancerReaderMockRecorder is the mock recorder for MockLoadBalancerReader.
type MockLoadBalancerReaderMockRecorder struct {
	mock *MockLoadBalancerReader
}

// NewMockLoadBalancerReader creates a new mock instance.
func NewMockLoadBalancerReader(ctrl *gomock.Controller) *MockLoadBalancerReader {
	mock := &MockLoadBalancerReader{ctrl: ctrl}
	mock.recorder = &MockLoadBalancerReaderMockRecorder{mock}
	return mock
}

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

// Get mocks base method.
func (m *MockLoadBalancerReader) Get(arg0 context.Context, arg1 types.NamespacedName, arg2 *v1alpha1.LoadBalancer) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Get", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

// Get indicates an expected call of Get.
func (mr *MockLoadBalancerReaderMockRecorder) Get(arg0, arg1, arg2 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Get", reflect.TypeOf((*MockLoadBalancerReader)(nil).Get), arg0, arg1, arg2)
}

// List mocks base method.
func (m *MockLoadBalancerReader) List(arg0 context.Context, arg1 *v1alpha1.LoadBalancerList, arg2 ...client.ListOption) error {
	m.ctrl.T.Helper()
	varargs := []any{arg0, arg1}
	for _, a := range arg2 {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "List", varargs...)
	ret0, _ := ret[0].(error)
	return ret0
}

// List indicates an expected call of List.
func (mr *MockLoadBalancerReaderMockRecorder) List(arg0, arg1 any, arg2 ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{arg0, arg1}, arg2...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockLoadBalancerReader)(nil).List), varargs...)
}

// MockLoadBalancerWriter is a mock of LoadBalancerWriter interface.
type MockLoadBalancerWriter struct {
	ctrl     *gomock.Controller
	recorder *MockLoadBalancerWriterMockRecorder
}

// MockLoadBalancerWriterMockRecorder is the mock recorder for MockLoadBalancerWriter.
type MockLoadBalancerWriterMockRecorder struct {
	mock *MockLoadBalancerWriter
}

// NewMockLoadBalancerWriter creates a new mock instance.
func NewMockLoadBalancerWriter(ctrl *gomock.Controller) *MockLoadBalancerWriter {
	mock := &MockLoadBalancerWriter{ctrl: ctrl}
	mock.recorder = &MockLoadBalancerWriterMockRecorder{mock}
	return mock
}

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

// Create mocks base method.
func (m *MockLoadBalancerWriter) Create(arg0 context.Context, arg1 *v1alpha1.LoadBalancer) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Create", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

// Create indicates an expected call of Create.
func (mr *MockLoadBalancerWriterMockRecorder) Create(arg0, arg1 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockLoadBalancerWriter)(nil).Create), arg0, arg1)
}

// Delete mocks base method.
func (m *MockLoadBalancerWriter) Delete(arg0 context.Context, arg1 *v1alpha1.LoadBalancer) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Delete", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

// Delete indicates an expected call of Delete.
func (mr *MockLoadBalancerWriterMockRecorder) Delete(arg0, arg1 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Delete", reflect.TypeOf((*MockLoadBalancerWriter)(nil).Delete), arg0, arg1)
}

// Patch mocks base method.
func (m *MockLoadBalancerWriter) Patch(arg0 context.Context, arg1 *v1alpha1.LoadBalancer, arg2 client.Patch) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Patch", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

// Patch indicates an expected call of Patch.
func (mr *MockLoadBalancerWriterMockRecorder) Patch(arg0, arg1, arg2 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Patch", reflect.TypeOf((*MockLoadBalancerWriter)(nil).Patch), arg0, arg1, arg2)
}

// Update mocks base method.
func (m *MockLoadBalancerWriter) Update(arg0 context.Context, arg1 *v1alpha1.LoadBalancer) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Update", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

// Update indicates an expected call of Update.
func (mr *MockLoadBalancerWriterMockRecorder) Update(arg0, arg1 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Update", reflect.TypeOf((*MockLoadBalancerWriter)(nil).Update), arg0, arg1)
}

// UpdateStatus mocks base method.
func (m *MockLoadBalancerWriter) UpdateStatus(arg0 context.Context, arg1 *v1alpha1.LoadBalancer) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpdateStatus", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

// UpdateStatus indicates an expected call of UpdateStatus.
func (mr *MockLoadBalancerWriterMockRecorder) UpdateStatus(arg0, arg1 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateStatus", reflect.TypeOf((*MockLoadBalancerWriter)(nil).UpdateStatus), arg0, arg1)
}

// MockLoadBalancerReaderWriter is a mock of LoadBalancerReaderWriter interface.
type MockLoadBalancerReaderWriter struct {
	ctrl     *gomock.Controller
	recorder *MockLoadBalancerReaderWriterMockRecorder
}

// MockLoadBalancerReaderWriterMockRecorder is the mock recorder for MockLoadBalancerReaderWriter.
type MockLoadBalancerReaderWriterMockRecorder struct {
	mock *MockLoadBalancerReaderWriter
}

// NewMockLoadBalancerReaderWriter creates a new mock instance.
func NewMockLoadBalancerReaderWriter(ctrl *gomock.Controller) *MockLoadBalancerReaderWriter {
	mock := &MockLoadBalancerReaderWriter{ctrl: ctrl}
	mock.recorder = &MockLoadBalancerReaderWriterMockRecorder{mock}
	return mock
}

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

// Create mocks base method.
func (m *MockLoadBalancerReaderWriter) Create(arg0 context.Context, arg1 *v1alpha1.LoadBalancer) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Create", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

// Create indicates an expected call of Create.
func (mr *MockLoadBalancerReaderWriterMockRecorder) Create(arg0, arg1 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockLoadBalancerReaderWriter)(nil).Create), arg0, arg1)
}

// Delete mocks base method.
func (m *MockLoadBalancerReaderWriter) Delete(arg0 context.Context, arg1 *v1alpha1.LoadBalancer) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Delete", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

// Delete indicates an expected call of Delete.
func (mr *MockLoadBalancerReaderWriterMockRecorder) Delete(arg0, arg1 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Delete", reflect.TypeOf((*MockLoadBalancerReaderWriter)(nil).Delete), arg0, arg1)
}

// Get mocks base method.
func (m *MockLoadBalancerReaderWriter) Get(arg0 context.Context, arg1 types.NamespacedName, arg2 *v1alpha1.LoadBalancer) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Get", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

// Get indicates an expected call of Get.
func (mr *MockLoadBalancerReaderWriterMockRecorder) Get(arg0, arg1, arg2 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Get", reflect.TypeOf((*MockLoadBalancerReaderWriter)(nil).Get), arg0, arg1, arg2)
}

// List mocks base method.
func (m *MockLoadBalancerReaderWriter) List(arg0 context.Context, arg1 *v1alpha1.LoadBalancerList, arg2 ...client.ListOption) error {
	m.ctrl.T.Helper()
	varargs := []any{arg0, arg1}
	for _, a := range arg2 {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "List", varargs...)
	ret0, _ := ret[0].(error)
	return ret0
}

// List indicates an expected call of List.
func (mr *MockLoadBalancerReaderWriterMockRecorder) List(arg0, arg1 any, arg2 ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{arg0, arg1}, arg2...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockLoadBalancerReaderWriter)(nil).List), varargs...)
}

// Patch mocks base method.
func (m *MockLoadBalancerReaderWriter) Patch(arg0 context.Context, arg1 *v1alpha1.LoadBalancer, arg2 client.Patch) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Patch", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

// Patch indicates an expected call of Patch.
func (mr *MockLoadBalancerReaderWriterMockRecorder) Patch(arg0, arg1, arg2 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Patch", reflect.TypeOf((*MockLoadBalancerReaderWriter)(nil).Patch), arg0, arg1, arg2)
}

// Update mocks base method.
func (m *MockLoadBalancerReaderWriter) Update(arg0 context.Context, arg1 *v1alpha1.LoadBalancer) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Update", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

// Update indicates an expected call of Update.
func (mr *MockLoadBalancerReaderWriterMockRecorder) Update(arg0, arg1 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Update", reflect.TypeOf((*MockLoadBalancerReaderWriter)(nil).Update), arg0, arg1)
}

// UpdateStatus mocks base method.
func (m *MockLoadBalancerReaderWriter) UpdateStatus(arg0 context.Context, arg1 *v1alpha1.LoadBalancer) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpdateStatus", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

// UpdateStatus indicates an expected call of UpdateStatus.
func (mr *MockLoadBalancerReaderWriterMockRecorder) UpdateStatus(arg0, arg1 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateStatus", reflect.TypeOf((*MockLoadBalancerReaderWriter)(nil).UpdateStatus), arg0, arg1)
}
