// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/tidbcloud/devops/pkg/service/tenant/repo (interfaces: TenantRepo)
//
// Generated by this command:
//
//	mockgen -destination repo_mock.go -package=repo github.com/tidbcloud/devops/pkg/service/tenant/repo TenantRepo
//

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

import (
	context "context"
	reflect "reflect"

	tenant "github.com/tidbcloud/devops/entity/tenant"
	repoopt "github.com/tidbcloud/devops/pkg/infra/utils/repoopt"
	gomock "go.uber.org/mock/gomock"
)

// MockTenantRepo is a mock of TenantRepo interface.
type MockTenantRepo struct {
	ctrl     *gomock.Controller
	recorder *MockTenantRepoMockRecorder
	isgomock struct{}
}

// MockTenantRepoMockRecorder is the mock recorder for MockTenantRepo.
type MockTenantRepoMockRecorder struct {
	mock *MockTenantRepo
}

// NewMockTenantRepo creates a new mock instance.
func NewMockTenantRepo(ctrl *gomock.Controller) *MockTenantRepo {
	mock := &MockTenantRepo{ctrl: ctrl}
	mock.recorder = &MockTenantRepoMockRecorder{mock}
	return mock
}

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

// BatchSave mocks base method.
func (m *MockTenantRepo) BatchSave(ctx context.Context, tenants []*tenant.Tenant) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "BatchSave", ctx, tenants)
	ret0, _ := ret[0].(error)
	return ret0
}

// BatchSave indicates an expected call of BatchSave.
func (mr *MockTenantRepoMockRecorder) BatchSave(ctx, tenants any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "BatchSave", reflect.TypeOf((*MockTenantRepo)(nil).BatchSave), ctx, tenants)
}

// Count mocks base method.
func (m *MockTenantRepo) Count(ctx context.Context, opts ...repoopt.Option) (int64, error) {
	m.ctrl.T.Helper()
	varargs := []any{ctx}
	for _, a := range opts {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "Count", varargs...)
	ret0, _ := ret[0].(int64)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

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

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

// Load mocks base method.
func (m *MockTenantRepo) Load(ctx context.Context, id uint64) (*tenant.Tenant, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Load", ctx, id)
	ret0, _ := ret[0].(*tenant.Tenant)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Load indicates an expected call of Load.
func (mr *MockTenantRepoMockRecorder) Load(ctx, id any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Load", reflect.TypeOf((*MockTenantRepo)(nil).Load), ctx, id)
}

// Query mocks base method.
func (m *MockTenantRepo) Query(ctx context.Context, opts ...repoopt.Option) ([]*tenant.Tenant, error) {
	m.ctrl.T.Helper()
	varargs := []any{ctx}
	for _, a := range opts {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "Query", varargs...)
	ret0, _ := ret[0].([]*tenant.Tenant)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// Save mocks base method.
func (m *MockTenantRepo) Save(ctx context.Context, arg1 *tenant.Tenant) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Save", ctx, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

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