// Code generated by MockGen. DO NOT EDIT.
// Source: region.go
//
// Generated by this command:
//
//	mockgen -source=region.go -package=mock_region -destination=./mock_region/mock_region.go
//

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

import (
	context "context"
	reflect "reflect"

	entity "github.com/tidbcloud/tidb-management-service/nextgen-global-service/domain/entity"
	region "github.com/tidbcloud/tidb-management-service/nextgen-global-service/domain/repository/region"
	bizerr "github.com/tidbcloud/tidb-management-service/utilities/bizerr"
	gomock "go.uber.org/mock/gomock"
)

// MockRepo is a mock of Repo interface.
type MockRepo struct {
	ctrl     *gomock.Controller
	recorder *MockRepoMockRecorder
	isgomock struct{}
}

// MockRepoMockRecorder is the mock recorder for MockRepo.
type MockRepoMockRecorder struct {
	mock *MockRepo
}

// NewMockRepo creates a new mock instance.
func NewMockRepo(ctrl *gomock.Controller) *MockRepo {
	mock := &MockRepo{ctrl: ctrl}
	mock.recorder = &MockRepoMockRecorder{mock}
	return mock
}

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

// DeleteRegionByLogicalName mocks base method.
func (m *MockRepo) DeleteRegionByLogicalName(ctx context.Context, logicalName string) bizerr.BizError {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteRegionByLogicalName", ctx, logicalName)
	ret0, _ := ret[0].(bizerr.BizError)
	return ret0
}

// DeleteRegionByLogicalName indicates an expected call of DeleteRegionByLogicalName.
func (mr *MockRepoMockRecorder) DeleteRegionByLogicalName(ctx, logicalName any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteRegionByLogicalName", reflect.TypeOf((*MockRepo)(nil).DeleteRegionByLogicalName), ctx, logicalName)
}

// Get mocks base method.
func (m *MockRepo) Get(ctx context.Context, regionId uint64) (*entity.Region, bizerr.BizError) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Get", ctx, regionId)
	ret0, _ := ret[0].(*entity.Region)
	ret1, _ := ret[1].(bizerr.BizError)
	return ret0, ret1
}

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

// GetByLogicalName mocks base method.
func (m *MockRepo) GetByLogicalName(ctx context.Context, logicalName string) (*entity.Region, bizerr.BizError) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetByLogicalName", ctx, logicalName)
	ret0, _ := ret[0].(*entity.Region)
	ret1, _ := ret[1].(bizerr.BizError)
	return ret0, ret1
}

// GetByLogicalName indicates an expected call of GetByLogicalName.
func (mr *MockRepoMockRecorder) GetByLogicalName(ctx, logicalName any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetByLogicalName", reflect.TypeOf((*MockRepo)(nil).GetByLogicalName), ctx, logicalName)
}

// GetCloudProviderById mocks base method.
func (m *MockRepo) GetCloudProviderById(ctx context.Context, cloudProviderId entity.CloudProviderName, servicePlan entity.ServicePlan) (*entity.CloudProvider, bizerr.BizError) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetCloudProviderById", ctx, cloudProviderId, servicePlan)
	ret0, _ := ret[0].(*entity.CloudProvider)
	ret1, _ := ret[1].(bizerr.BizError)
	return ret0, ret1
}

// GetCloudProviderById indicates an expected call of GetCloudProviderById.
func (mr *MockRepoMockRecorder) GetCloudProviderById(ctx, cloudProviderId, servicePlan any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetCloudProviderById", reflect.TypeOf((*MockRepo)(nil).GetCloudProviderById), ctx, cloudProviderId, servicePlan)
}

// ListCloudProviders mocks base method.
func (m *MockRepo) ListCloudProviders(ctx context.Context, filter region.Filter) ([]*entity.CloudProvider, bizerr.BizError) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListCloudProviders", ctx, filter)
	ret0, _ := ret[0].([]*entity.CloudProvider)
	ret1, _ := ret[1].(bizerr.BizError)
	return ret0, ret1
}

// ListCloudProviders indicates an expected call of ListCloudProviders.
func (mr *MockRepoMockRecorder) ListCloudProviders(ctx, filter any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListCloudProviders", reflect.TypeOf((*MockRepo)(nil).ListCloudProviders), ctx, filter)
}

// ListRegions mocks base method.
func (m *MockRepo) ListRegions(ctx context.Context, filter region.Filter) ([]*entity.Region, bizerr.BizError) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListRegions", ctx, filter)
	ret0, _ := ret[0].([]*entity.Region)
	ret1, _ := ret[1].(bizerr.BizError)
	return ret0, ret1
}

// ListRegions indicates an expected call of ListRegions.
func (mr *MockRepoMockRecorder) ListRegions(ctx, filter any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListRegions", reflect.TypeOf((*MockRepo)(nil).ListRegions), ctx, filter)
}

// SaveCloudProvider mocks base method.
func (m *MockRepo) SaveCloudProvider(ctx context.Context, cloudProvider *entity.CloudProvider) bizerr.BizError {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SaveCloudProvider", ctx, cloudProvider)
	ret0, _ := ret[0].(bizerr.BizError)
	return ret0
}

// SaveCloudProvider indicates an expected call of SaveCloudProvider.
func (mr *MockRepoMockRecorder) SaveCloudProvider(ctx, cloudProvider any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SaveCloudProvider", reflect.TypeOf((*MockRepo)(nil).SaveCloudProvider), ctx, cloudProvider)
}

// SaveRegion mocks base method.
func (m *MockRepo) SaveRegion(ctx context.Context, arg1 *entity.Region) bizerr.BizError {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SaveRegion", ctx, arg1)
	ret0, _ := ret[0].(bizerr.BizError)
	return ret0
}

// SaveRegion indicates an expected call of SaveRegion.
func (mr *MockRepoMockRecorder) SaveRegion(ctx, arg1 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SaveRegion", reflect.TypeOf((*MockRepo)(nil).SaveRegion), ctx, arg1)
}

// SelectRegion mocks base method.
func (m *MockRepo) SelectRegion(ctx context.Context, filter region.Filter) (*entity.Region, bizerr.BizError) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SelectRegion", ctx, filter)
	ret0, _ := ret[0].(*entity.Region)
	ret1, _ := ret[1].(bizerr.BizError)
	return ret0, ret1
}

// SelectRegion indicates an expected call of SelectRegion.
func (mr *MockRepoMockRecorder) SelectRegion(ctx, filter any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SelectRegion", reflect.TypeOf((*MockRepo)(nil).SelectRegion), ctx, filter)
}

// UpsertRegionOpsAuditLogSetting mocks base method.
func (m *MockRepo) UpsertRegionOpsAuditLogSetting(ctx context.Context, setting *entity.RegionOpsAuditLogSetting) bizerr.BizError {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UpsertRegionOpsAuditLogSetting", ctx, setting)
	ret0, _ := ret[0].(bizerr.BizError)
	return ret0
}

// UpsertRegionOpsAuditLogSetting indicates an expected call of UpsertRegionOpsAuditLogSetting.
func (mr *MockRepoMockRecorder) UpsertRegionOpsAuditLogSetting(ctx, setting any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpsertRegionOpsAuditLogSetting", reflect.TypeOf((*MockRepo)(nil).UpsertRegionOpsAuditLogSetting), ctx, setting)
}
