// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/rancher/rancher/pkg/catalogv2/system (interfaces: ContentClient,OperationClient,HelmClient)

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

import (
	context "context"
	io "io"
	reflect "reflect"

	gomock "github.com/golang/mock/gomock"
	v1 "github.com/rancher/rancher/pkg/apis/catalog.cattle.io/v1"
	action "helm.sh/helm/v3/pkg/action"
	release "helm.sh/helm/v3/pkg/release"
	repo "helm.sh/helm/v3/pkg/repo"
	user "k8s.io/apiserver/pkg/authentication/user"
)

// MockContentClient is a mock of ContentClient interface.
type MockContentClient struct {
	ctrl     *gomock.Controller
	recorder *MockContentClientMockRecorder
}

// MockContentClientMockRecorder is the mock recorder for MockContentClient.
type MockContentClientMockRecorder struct {
	mock *MockContentClient
}

// NewMockContentClient creates a new mock instance.
func NewMockContentClient(ctrl *gomock.Controller) *MockContentClient {
	mock := &MockContentClient{ctrl: ctrl}
	mock.recorder = &MockContentClientMockRecorder{mock}
	return mock
}

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

// Index mocks base method.
func (m *MockContentClient) Index(arg0, arg1, arg2 string, arg3 bool) (*repo.IndexFile, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Index", arg0, arg1, arg2, arg3)
	ret0, _ := ret[0].(*repo.IndexFile)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Index indicates an expected call of Index.
func (mr *MockContentClientMockRecorder) Index(arg0, arg1, arg2, arg3 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Index", reflect.TypeOf((*MockContentClient)(nil).Index), arg0, arg1, arg2, arg3)
}

// MockOperationClient is a mock of OperationClient interface.
type MockOperationClient struct {
	ctrl     *gomock.Controller
	recorder *MockOperationClientMockRecorder
}

// MockOperationClientMockRecorder is the mock recorder for MockOperationClient.
type MockOperationClientMockRecorder struct {
	mock *MockOperationClient
}

// NewMockOperationClient creates a new mock instance.
func NewMockOperationClient(ctrl *gomock.Controller) *MockOperationClient {
	mock := &MockOperationClient{ctrl: ctrl}
	mock.recorder = &MockOperationClientMockRecorder{mock}
	return mock
}

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

// Uninstall mocks base method.
func (m *MockOperationClient) Uninstall(arg0 context.Context, arg1 user.Info, arg2, arg3 string, arg4 io.Reader, arg5 string) (*v1.Operation, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Uninstall", arg0, arg1, arg2, arg3, arg4, arg5)
	ret0, _ := ret[0].(*v1.Operation)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Uninstall indicates an expected call of Uninstall.
func (mr *MockOperationClientMockRecorder) Uninstall(arg0, arg1, arg2, arg3, arg4, arg5 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Uninstall", reflect.TypeOf((*MockOperationClient)(nil).Uninstall), arg0, arg1, arg2, arg3, arg4, arg5)
}

// Upgrade mocks base method.
func (m *MockOperationClient) Upgrade(arg0 context.Context, arg1 user.Info, arg2, arg3 string, arg4 io.Reader, arg5 string) (*v1.Operation, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Upgrade", arg0, arg1, arg2, arg3, arg4, arg5)
	ret0, _ := ret[0].(*v1.Operation)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Upgrade indicates an expected call of Upgrade.
func (mr *MockOperationClientMockRecorder) Upgrade(arg0, arg1, arg2, arg3, arg4, arg5 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Upgrade", reflect.TypeOf((*MockOperationClient)(nil).Upgrade), arg0, arg1, arg2, arg3, arg4, arg5)
}

// MockHelmClient is a mock of HelmClient interface.
type MockHelmClient struct {
	ctrl     *gomock.Controller
	recorder *MockHelmClientMockRecorder
}

// MockHelmClientMockRecorder is the mock recorder for MockHelmClient.
type MockHelmClientMockRecorder struct {
	mock *MockHelmClient
}

// NewMockHelmClient creates a new mock instance.
func NewMockHelmClient(ctrl *gomock.Controller) *MockHelmClient {
	mock := &MockHelmClient{ctrl: ctrl}
	mock.recorder = &MockHelmClientMockRecorder{mock}
	return mock
}

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

// ListReleases mocks base method.
func (m *MockHelmClient) ListReleases(arg0, arg1 string, arg2 action.ListStates) ([]*release.Release, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListReleases", arg0, arg1, arg2)
	ret0, _ := ret[0].([]*release.Release)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ListReleases indicates an expected call of ListReleases.
func (mr *MockHelmClientMockRecorder) ListReleases(arg0, arg1, arg2 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListReleases", reflect.TypeOf((*MockHelmClient)(nil).ListReleases), arg0, arg1, arg2)
}
