// Code generated by MockGen. DO NOT EDIT.
// Source: pkg/tidbcluster/provider.go

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

import (
	context "context"
	reflect "reflect"

	gomock "github.com/golang/mock/gomock"
	tidbcluster "github.com/tidbcloud/ticdc-service/pkg/tidbcluster"
)

// MockProvider is a mock of Provider interface.
type MockProvider struct {
	ctrl     *gomock.Controller
	recorder *MockProviderMockRecorder
}

// MockProviderMockRecorder is the mock recorder for MockProvider.
type MockProviderMockRecorder struct {
	mock *MockProvider
}

// NewMockProvider creates a new mock instance.
func NewMockProvider(ctrl *gomock.Controller) *MockProvider {
	mock := &MockProvider{ctrl: ctrl}
	mock.recorder = &MockProviderMockRecorder{mock}
	return mock
}

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

// FeatureEnabled mocks base method.
func (m *MockProvider) FeatureEnabled(ctx context.Context, clusterID, featureName string) (bool, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "FeatureEnabled", ctx, clusterID, featureName)
	ret0, _ := ret[0].(bool)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// FeatureEnabled indicates an expected call of FeatureEnabled.
func (mr *MockProviderMockRecorder) FeatureEnabled(ctx, clusterID, featureName interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "FeatureEnabled", reflect.TypeOf((*MockProvider)(nil).FeatureEnabled), ctx, clusterID, featureName)
}

// GetCertCommonName mocks base method.
func (m *MockProvider) GetCertCommonName(ctx context.Context, clusterID string) (string, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetCertCommonName", ctx, clusterID)
	ret0, _ := ret[0].(string)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetCertCommonName indicates an expected call of GetCertCommonName.
func (mr *MockProviderMockRecorder) GetCertCommonName(ctx, clusterID interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetCertCommonName", reflect.TypeOf((*MockProvider)(nil).GetCertCommonName), ctx, clusterID)
}

// GetCertIssuerName mocks base method.
func (m *MockProvider) GetCertIssuerName(ctx context.Context, clusterID string) (string, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetCertIssuerName", ctx, clusterID)
	ret0, _ := ret[0].(string)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetCertIssuerName indicates an expected call of GetCertIssuerName.
func (mr *MockProviderMockRecorder) GetCertIssuerName(ctx, clusterID interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetCertIssuerName", reflect.TypeOf((*MockProvider)(nil).GetCertIssuerName), ctx, clusterID)
}

// GetClusterRole mocks base method.
func (m *MockProvider) GetClusterRole(ctx context.Context, clusterID string) (*tidbcluster.ClusterRole, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetClusterRole", ctx, clusterID)
	ret0, _ := ret[0].(*tidbcluster.ClusterRole)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetClusterRole indicates an expected call of GetClusterRole.
func (mr *MockProviderMockRecorder) GetClusterRole(ctx, clusterID interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetClusterRole", reflect.TypeOf((*MockProvider)(nil).GetClusterRole), ctx, clusterID)
}

// GetNamespace mocks base method.
func (m *MockProvider) GetNamespace(ctx context.Context, clusterID string) (string, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetNamespace", ctx, clusterID)
	ret0, _ := ret[0].(string)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetNamespace indicates an expected call of GetNamespace.
func (mr *MockProviderMockRecorder) GetNamespace(ctx, clusterID interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetNamespace", reflect.TypeOf((*MockProvider)(nil).GetNamespace), ctx, clusterID)
}
