// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/tidbcloud/devops/pkg/service/jira/issueloader (interfaces: IssueLoader)
//
// Generated by this command:
//
//	mockgen -destination issue_loader_mock.go -package=issueloader github.com/tidbcloud/devops/pkg/service/jira/issueloader IssueLoader
//

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

import (
	context "context"
	reflect "reflect"

	jira "github.com/tidbcloud/devops/entity/jira"
	gomock "go.uber.org/mock/gomock"
)

// MockIssueLoader is a mock of IssueLoader interface.
type MockIssueLoader struct {
	ctrl     *gomock.Controller
	recorder *MockIssueLoaderMockRecorder
	isgomock struct{}
}

// MockIssueLoaderMockRecorder is the mock recorder for MockIssueLoader.
type MockIssueLoaderMockRecorder struct {
	mock *MockIssueLoader
}

// NewMockIssueLoader creates a new mock instance.
func NewMockIssueLoader(ctrl *gomock.Controller) *MockIssueLoader {
	mock := &MockIssueLoader{ctrl: ctrl}
	mock.recorder = &MockIssueLoaderMockRecorder{mock}
	return mock
}

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

// LoadIssueInJiraByJQL mocks base method.
func (m *MockIssueLoader) LoadIssueInJiraByJQL(ctx context.Context, jql string, option *LoadByJQLOptions) ([]*jira.IssueInJira, *LoadByJQLResult, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "LoadIssueInJiraByJQL", ctx, jql, option)
	ret0, _ := ret[0].([]*jira.IssueInJira)
	ret1, _ := ret[1].(*LoadByJQLResult)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// LoadIssueInJiraByJQL indicates an expected call of LoadIssueInJiraByJQL.
func (mr *MockIssueLoaderMockRecorder) LoadIssueInJiraByJQL(ctx, jql, option any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LoadIssueInJiraByJQL", reflect.TypeOf((*MockIssueLoader)(nil).LoadIssueInJiraByJQL), ctx, jql, option)
}

// LoadIssueInJiraByJQLPaged mocks base method.
func (m *MockIssueLoader) LoadIssueInJiraByJQLPaged(ctx context.Context, jql string, option *LoadByJQLPagedOptions) ([]*jira.IssueInJira, *LoadByJQLPagedResult, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "LoadIssueInJiraByJQLPaged", ctx, jql, option)
	ret0, _ := ret[0].([]*jira.IssueInJira)
	ret1, _ := ret[1].(*LoadByJQLPagedResult)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// LoadIssueInJiraByJQLPaged indicates an expected call of LoadIssueInJiraByJQLPaged.
func (mr *MockIssueLoaderMockRecorder) LoadIssueInJiraByJQLPaged(ctx, jql, option any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LoadIssueInJiraByJQLPaged", reflect.TypeOf((*MockIssueLoader)(nil).LoadIssueInJiraByJQLPaged), ctx, jql, option)
}

// LoadIssueInJiraByKey mocks base method.
func (m *MockIssueLoader) LoadIssueInJiraByKey(ctx context.Context, key string, option IssueFieldOptions) (*jira.IssueInJira, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "LoadIssueInJiraByKey", ctx, key, option)
	ret0, _ := ret[0].(*jira.IssueInJira)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// LoadIssueInJiraByKey indicates an expected call of LoadIssueInJiraByKey.
func (mr *MockIssueLoaderMockRecorder) LoadIssueInJiraByKey(ctx, key, option any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LoadIssueInJiraByKey", reflect.TypeOf((*MockIssueLoader)(nil).LoadIssueInJiraByKey), ctx, key, option)
}

// LoadIssueInRepoByJQL mocks base method.
func (m *MockIssueLoader) LoadIssueInRepoByJQL(ctx context.Context, jql string, option *LoadByJQLOptions) ([]*jira.IssueSnapshot, *LoadByJQLResult, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "LoadIssueInRepoByJQL", ctx, jql, option)
	ret0, _ := ret[0].([]*jira.IssueSnapshot)
	ret1, _ := ret[1].(*LoadByJQLResult)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// LoadIssueInRepoByJQL indicates an expected call of LoadIssueInRepoByJQL.
func (mr *MockIssueLoaderMockRecorder) LoadIssueInRepoByJQL(ctx, jql, option any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LoadIssueInRepoByJQL", reflect.TypeOf((*MockIssueLoader)(nil).LoadIssueInRepoByJQL), ctx, jql, option)
}

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

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