// Code generated by MockGen. DO NOT EDIT.
// Source: ./pkg/resourcemanager/approute/approute.go
//
// Generated by this command:
//
//	mockgen -destination ./test/resourcemanager/mockapproute/mock_approute.go -package mockapproute -source ./pkg/resourcemanager/approute/approute.go
//

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

import (
	context "context"
	reflect "reflect"

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

// MockAPPRouteReaderWriter is a mock of APPRouteReaderWriter interface.
type MockAPPRouteReaderWriter struct {
	ctrl     *gomock.Controller
	recorder *MockAPPRouteReaderWriterMockRecorder
}

// MockAPPRouteReaderWriterMockRecorder is the mock recorder for MockAPPRouteReaderWriter.
type MockAPPRouteReaderWriterMockRecorder struct {
	mock *MockAPPRouteReaderWriter
}

// NewMockAPPRouteReaderWriter creates a new mock instance.
func NewMockAPPRouteReaderWriter(ctrl *gomock.Controller) *MockAPPRouteReaderWriter {
	mock := &MockAPPRouteReaderWriter{ctrl: ctrl}
	mock.recorder = &MockAPPRouteReaderWriterMockRecorder{mock}
	return mock
}

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

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

// Create indicates an expected call of Create.
func (mr *MockAPPRouteReaderWriterMockRecorder) Create(ctx, appRoute any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockAPPRouteReaderWriter)(nil).Create), ctx, appRoute)
}

// Delete mocks base method.
func (m *MockAPPRouteReaderWriter) Delete(ctx context.Context, appRoute *v1alpha1.APPRoute, opts ...client.DeleteOption) error {
	m.ctrl.T.Helper()
	varargs := []any{ctx, appRoute}
	for _, a := range opts {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "Delete", varargs...)
	ret0, _ := ret[0].(error)
	return ret0
}

// Delete indicates an expected call of Delete.
func (mr *MockAPPRouteReaderWriterMockRecorder) Delete(ctx, appRoute any, opts ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{ctx, appRoute}, opts...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Delete", reflect.TypeOf((*MockAPPRouteReaderWriter)(nil).Delete), varargs...)
}

// Get mocks base method.
func (m *MockAPPRouteReaderWriter) Get(ctx context.Context, key client.ObjectKey, approute *v1alpha1.APPRoute) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Get", ctx, key, approute)
	ret0, _ := ret[0].(error)
	return ret0
}

// Get indicates an expected call of Get.
func (mr *MockAPPRouteReaderWriterMockRecorder) Get(ctx, key, approute any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Get", reflect.TypeOf((*MockAPPRouteReaderWriter)(nil).Get), ctx, key, approute)
}

// List mocks base method.
func (m *MockAPPRouteReaderWriter) List(ctx context.Context, list *v1alpha1.APPRouteList, opts ...client.ListOption) error {
	m.ctrl.T.Helper()
	varargs := []any{ctx, list}
	for _, a := range opts {
		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 *MockAPPRouteReaderWriterMockRecorder) List(ctx, list any, opts ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{ctx, list}, opts...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockAPPRouteReaderWriter)(nil).List), varargs...)
}

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

// Update indicates an expected call of Update.
func (mr *MockAPPRouteReaderWriterMockRecorder) Update(ctx, appRoute any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Update", reflect.TypeOf((*MockAPPRouteReaderWriter)(nil).Update), ctx, appRoute)
}

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

// UpdateStatus indicates an expected call of UpdateStatus.
func (mr *MockAPPRouteReaderWriterMockRecorder) UpdateStatus(ctx, appRoute any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateStatus", reflect.TypeOf((*MockAPPRouteReaderWriter)(nil).UpdateStatus), ctx, appRoute)
}

// MockAPPRouteWriter is a mock of APPRouteWriter interface.
type MockAPPRouteWriter struct {
	ctrl     *gomock.Controller
	recorder *MockAPPRouteWriterMockRecorder
}

// MockAPPRouteWriterMockRecorder is the mock recorder for MockAPPRouteWriter.
type MockAPPRouteWriterMockRecorder struct {
	mock *MockAPPRouteWriter
}

// NewMockAPPRouteWriter creates a new mock instance.
func NewMockAPPRouteWriter(ctrl *gomock.Controller) *MockAPPRouteWriter {
	mock := &MockAPPRouteWriter{ctrl: ctrl}
	mock.recorder = &MockAPPRouteWriterMockRecorder{mock}
	return mock
}

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

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

// Create indicates an expected call of Create.
func (mr *MockAPPRouteWriterMockRecorder) Create(ctx, appRoute any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockAPPRouteWriter)(nil).Create), ctx, appRoute)
}

// Delete mocks base method.
func (m *MockAPPRouteWriter) Delete(ctx context.Context, appRoute *v1alpha1.APPRoute, opts ...client.DeleteOption) error {
	m.ctrl.T.Helper()
	varargs := []any{ctx, appRoute}
	for _, a := range opts {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "Delete", varargs...)
	ret0, _ := ret[0].(error)
	return ret0
}

// Delete indicates an expected call of Delete.
func (mr *MockAPPRouteWriterMockRecorder) Delete(ctx, appRoute any, opts ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{ctx, appRoute}, opts...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Delete", reflect.TypeOf((*MockAPPRouteWriter)(nil).Delete), varargs...)
}

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

// Update indicates an expected call of Update.
func (mr *MockAPPRouteWriterMockRecorder) Update(ctx, appRoute any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Update", reflect.TypeOf((*MockAPPRouteWriter)(nil).Update), ctx, appRoute)
}

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

// UpdateStatus indicates an expected call of UpdateStatus.
func (mr *MockAPPRouteWriterMockRecorder) UpdateStatus(ctx, appRoute any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateStatus", reflect.TypeOf((*MockAPPRouteWriter)(nil).UpdateStatus), ctx, appRoute)
}

// MockAPPRouteReader is a mock of APPRouteReader interface.
type MockAPPRouteReader struct {
	ctrl     *gomock.Controller
	recorder *MockAPPRouteReaderMockRecorder
}

// MockAPPRouteReaderMockRecorder is the mock recorder for MockAPPRouteReader.
type MockAPPRouteReaderMockRecorder struct {
	mock *MockAPPRouteReader
}

// NewMockAPPRouteReader creates a new mock instance.
func NewMockAPPRouteReader(ctrl *gomock.Controller) *MockAPPRouteReader {
	mock := &MockAPPRouteReader{ctrl: ctrl}
	mock.recorder = &MockAPPRouteReaderMockRecorder{mock}
	return mock
}

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

// Get mocks base method.
func (m *MockAPPRouteReader) Get(ctx context.Context, key client.ObjectKey, approute *v1alpha1.APPRoute) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Get", ctx, key, approute)
	ret0, _ := ret[0].(error)
	return ret0
}

// Get indicates an expected call of Get.
func (mr *MockAPPRouteReaderMockRecorder) Get(ctx, key, approute any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Get", reflect.TypeOf((*MockAPPRouteReader)(nil).Get), ctx, key, approute)
}

// List mocks base method.
func (m *MockAPPRouteReader) List(ctx context.Context, list *v1alpha1.APPRouteList, opts ...client.ListOption) error {
	m.ctrl.T.Helper()
	varargs := []any{ctx, list}
	for _, a := range opts {
		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 *MockAPPRouteReaderMockRecorder) List(ctx, list any, opts ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{ctx, list}, opts...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockAPPRouteReader)(nil).List), varargs...)
}
