// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/tidbcloud/devops/pkg/service/jump/jumppod (interfaces: JumpPodManager,JumpPod)
//
// Generated by this command:
//
//	mockgen -destination api_mock.go -package=jumppod github.com/tidbcloud/devops/pkg/service/jump/jumppod JumpPodManager,JumpPod
//

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

import (
	context "context"
	reflect "reflect"

	jump "github.com/tidbcloud/devops/entity/jump"
	types "github.com/tidbcloud/devops/pkg/service/jump/jumppod/types"
	gomock "go.uber.org/mock/gomock"
	v1 "k8s.io/api/core/v1"
)

// MockJumpPodManager is a mock of JumpPodManager interface.
type MockJumpPodManager struct {
	ctrl     *gomock.Controller
	recorder *MockJumpPodManagerMockRecorder
	isgomock struct{}
}

// MockJumpPodManagerMockRecorder is the mock recorder for MockJumpPodManager.
type MockJumpPodManagerMockRecorder struct {
	mock *MockJumpPodManager
}

// NewMockJumpPodManager creates a new mock instance.
func NewMockJumpPodManager(ctrl *gomock.Controller) *MockJumpPodManager {
	mock := &MockJumpPodManager{ctrl: ctrl}
	mock.recorder = &MockJumpPodManagerMockRecorder{mock}
	return mock
}

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

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

// GetJumpPod indicates an expected call of GetJumpPod.
func (mr *MockJumpPodManagerMockRecorder) GetJumpPod(ctx, name any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetJumpPod", reflect.TypeOf((*MockJumpPodManager)(nil).GetJumpPod), ctx, name)
}

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

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

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

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

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

// SetUpJumpPod indicates an expected call of SetUpJumpPod.
func (mr *MockJumpPodManagerMockRecorder) SetUpJumpPod(ctx, name any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetUpJumpPod", reflect.TypeOf((*MockJumpPodManager)(nil).SetUpJumpPod), ctx, name)
}

// SupportedDestinations mocks base method.
func (m *MockJumpPodManager) SupportedDestinations(typ jump.DestinationType) []string {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SupportedDestinations", typ)
	ret0, _ := ret[0].([]string)
	return ret0
}

// SupportedDestinations indicates an expected call of SupportedDestinations.
func (mr *MockJumpPodManagerMockRecorder) SupportedDestinations(typ any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SupportedDestinations", reflect.TypeOf((*MockJumpPodManager)(nil).SupportedDestinations), typ)
}

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

// TearDownJumpPod indicates an expected call of TearDownJumpPod.
func (mr *MockJumpPodManagerMockRecorder) TearDownJumpPod(ctx, name any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "TearDownJumpPod", reflect.TypeOf((*MockJumpPodManager)(nil).TearDownJumpPod), ctx, name)
}

// MockJumpPod is a mock of JumpPod interface.
type MockJumpPod struct {
	ctrl     *gomock.Controller
	recorder *MockJumpPodMockRecorder
	isgomock struct{}
}

// MockJumpPodMockRecorder is the mock recorder for MockJumpPod.
type MockJumpPodMockRecorder struct {
	mock *MockJumpPod
}

// NewMockJumpPod creates a new mock instance.
func NewMockJumpPod(ctrl *gomock.Controller) *MockJumpPod {
	mock := &MockJumpPod{ctrl: ctrl}
	mock.recorder = &MockJumpPodMockRecorder{mock}
	return mock
}

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

// FinalizeJump mocks base method.
func (m *MockJumpPod) FinalizeJump(ctx context.Context, destination jump.IDestination, attr jump.JumpAttributes) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "FinalizeJump", ctx, destination, attr)
	ret0, _ := ret[0].(error)
	return ret0
}

// FinalizeJump indicates an expected call of FinalizeJump.
func (mr *MockJumpPodMockRecorder) FinalizeJump(ctx, destination, attr any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "FinalizeJump", reflect.TypeOf((*MockJumpPod)(nil).FinalizeJump), ctx, destination, attr)
}

// GenerateAccessToken mocks base method.
func (m *MockJumpPod) GenerateAccessToken(ctx context.Context, param *types.GenerateAccessTokenParam) (*types.Token, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GenerateAccessToken", ctx, param)
	ret0, _ := ret[0].(*types.Token)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GenerateAccessToken indicates an expected call of GenerateAccessToken.
func (mr *MockJumpPodMockRecorder) GenerateAccessToken(ctx, param any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GenerateAccessToken", reflect.TypeOf((*MockJumpPod)(nil).GenerateAccessToken), ctx, param)
}

// ID mocks base method.
func (m *MockJumpPod) ID() types.ID {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ID")
	ret0, _ := ret[0].(types.ID)
	return ret0
}

// ID indicates an expected call of ID.
func (mr *MockJumpPodMockRecorder) ID() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ID", reflect.TypeOf((*MockJumpPod)(nil).ID))
}

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

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

// Name mocks base method.
func (m *MockJumpPod) Name() string {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Name")
	ret0, _ := ret[0].(string)
	return ret0
}

// Name indicates an expected call of Name.
func (mr *MockJumpPodMockRecorder) Name() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Name", reflect.TypeOf((*MockJumpPod)(nil).Name))
}

// Pod mocks base method.
func (m *MockJumpPod) Pod() *v1.Pod {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Pod")
	ret0, _ := ret[0].(*v1.Pod)
	return ret0
}

// Pod indicates an expected call of Pod.
func (mr *MockJumpPodMockRecorder) Pod() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Pod", reflect.TypeOf((*MockJumpPod)(nil).Pod))
}

// PrepareJump mocks base method.
func (m *MockJumpPod) PrepareJump(ctx context.Context, dest jump.IDestination, param *types.PrepareJumpParam) (*types.JumpParam, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "PrepareJump", ctx, dest, param)
	ret0, _ := ret[0].(*types.JumpParam)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// PrepareJump indicates an expected call of PrepareJump.
func (mr *MockJumpPodMockRecorder) PrepareJump(ctx, dest, param any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "PrepareJump", reflect.TypeOf((*MockJumpPod)(nil).PrepareJump), ctx, dest, param)
}

// RefreshJump mocks base method.
func (m *MockJumpPod) RefreshJump(ctx context.Context, dest jump.IDestination, attr jump.JumpAttributes, param *types.RefreshJumpParam) (*types.JumpParam, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "RefreshJump", ctx, dest, attr, param)
	ret0, _ := ret[0].(*types.JumpParam)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// RefreshJump indicates an expected call of RefreshJump.
func (mr *MockJumpPodMockRecorder) RefreshJump(ctx, dest, attr, param any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RefreshJump", reflect.TypeOf((*MockJumpPod)(nil).RefreshJump), ctx, dest, attr, param)
}
