// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/rancher/rancher/pkg/catalogv2/system (interfaces: ContentClient,OperationClient,HelmClient)
//
// Generated by this command:
//
//	mockgen --build_flags=--mod=mod -package system -destination=./mock_system_test.go github.com/rancher/rancher/pkg/catalogv2/system ContentClient,OperationClient,HelmClient
//

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

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

	v1 "github.com/rancher/rancher/pkg/apis/catalog.cattle.io/v1"
	gomock "go.uber.org/mock/gomock"
	action "helm.sh/helm/v3/pkg/action"
	release "helm.sh/helm/v3/pkg/release"
	repo "helm.sh/helm/v3/pkg/repo"
	v10 "k8s.io/api/core/v1"
	user "k8s.io/apiserver/pkg/authentication/user"
)

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

// 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(namespace, name, targetK8sVersion string, skipFilter bool) (*repo.IndexFile, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Index", namespace, name, targetK8sVersion, skipFilter)
	ret0, _ := ret[0].(*repo.IndexFile)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Index indicates an expected call of Index.
func (mr *MockContentClientMockRecorder) Index(namespace, name, targetK8sVersion, skipFilter any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Index", reflect.TypeOf((*MockContentClient)(nil).Index), namespace, name, targetK8sVersion, skipFilter)
}

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

// 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
}

// AddCpTaintsToTolerations mocks base method.
func (m *MockOperationClient) AddCpTaintsToTolerations(tolerations []v10.Toleration) ([]v10.Toleration, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "AddCpTaintsToTolerations", tolerations)
	ret0, _ := ret[0].([]v10.Toleration)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// AddCpTaintsToTolerations indicates an expected call of AddCpTaintsToTolerations.
func (mr *MockOperationClientMockRecorder) AddCpTaintsToTolerations(tolerations any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddCpTaintsToTolerations", reflect.TypeOf((*MockOperationClient)(nil).AddCpTaintsToTolerations), tolerations)
}

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

// Uninstall indicates an expected call of Uninstall.
func (mr *MockOperationClientMockRecorder) Uninstall(ctx, arg1, namespace, name, options, imageOverride any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Uninstall", reflect.TypeOf((*MockOperationClient)(nil).Uninstall), ctx, arg1, namespace, name, options, imageOverride)
}

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

// Upgrade indicates an expected call of Upgrade.
func (mr *MockOperationClientMockRecorder) Upgrade(ctx, arg1, namespace, name, options, imageOverride any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Upgrade", reflect.TypeOf((*MockOperationClient)(nil).Upgrade), ctx, arg1, namespace, name, options, imageOverride)
}

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

// 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(namespace, name string, stateMask action.ListStates) ([]*release.Release, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListReleases", namespace, name, stateMask)
	ret0, _ := ret[0].([]*release.Release)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ListReleases indicates an expected call of ListReleases.
func (mr *MockHelmClientMockRecorder) ListReleases(namespace, name, stateMask any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListReleases", reflect.TypeOf((*MockHelmClient)(nil).ListReleases), namespace, name, stateMask)
}
