// Code generated by MockGen. DO NOT EDIT.
// Source: status.go
//
// Generated by this command:
//
//	mockgen -destination=mocks/mock_status_manager.go -package=mocks -source=status.go StatusManager
//

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

import (
	context "context"
	reflect "reflect"

	runtime "github.com/stacklok/toolhive/pkg/container/runtime"
	core "github.com/stacklok/toolhive/pkg/core"
	gomock "go.uber.org/mock/gomock"
)

// MockStatusManager is a mock of StatusManager interface.
type MockStatusManager struct {
	ctrl     *gomock.Controller
	recorder *MockStatusManagerMockRecorder
	isgomock struct{}
}

// MockStatusManagerMockRecorder is the mock recorder for MockStatusManager.
type MockStatusManagerMockRecorder struct {
	mock *MockStatusManager
}

// NewMockStatusManager creates a new mock instance.
func NewMockStatusManager(ctrl *gomock.Controller) *MockStatusManager {
	mock := &MockStatusManager{ctrl: ctrl}
	mock.recorder = &MockStatusManagerMockRecorder{mock}
	return mock
}

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

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

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

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

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

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

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

// ListWorkloads mocks base method.
func (m *MockStatusManager) ListWorkloads(ctx context.Context, listAll bool, labelFilters []string) ([]core.Workload, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListWorkloads", ctx, listAll, labelFilters)
	ret0, _ := ret[0].([]core.Workload)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ListWorkloads indicates an expected call of ListWorkloads.
func (mr *MockStatusManagerMockRecorder) ListWorkloads(ctx, listAll, labelFilters any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListWorkloads", reflect.TypeOf((*MockStatusManager)(nil).ListWorkloads), ctx, listAll, labelFilters)
}

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

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

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

// ResetWorkloadPIDIfMatch indicates an expected call of ResetWorkloadPIDIfMatch.
func (mr *MockStatusManagerMockRecorder) ResetWorkloadPIDIfMatch(ctx, workloadName, expectedPID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ResetWorkloadPIDIfMatch", reflect.TypeOf((*MockStatusManager)(nil).ResetWorkloadPIDIfMatch), ctx, workloadName, expectedPID)
}

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

// SetWorkloadPID indicates an expected call of SetWorkloadPID.
func (mr *MockStatusManagerMockRecorder) SetWorkloadPID(ctx, workloadName, pid any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetWorkloadPID", reflect.TypeOf((*MockStatusManager)(nil).SetWorkloadPID), ctx, workloadName, pid)
}

// SetWorkloadStatus mocks base method.
func (m *MockStatusManager) SetWorkloadStatus(ctx context.Context, workloadName string, status runtime.WorkloadStatus, contextMsg string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "SetWorkloadStatus", ctx, workloadName, status, contextMsg)
	ret0, _ := ret[0].(error)
	return ret0
}

// SetWorkloadStatus indicates an expected call of SetWorkloadStatus.
func (mr *MockStatusManagerMockRecorder) SetWorkloadStatus(ctx, workloadName, status, contextMsg any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SetWorkloadStatus", reflect.TypeOf((*MockStatusManager)(nil).SetWorkloadStatus), ctx, workloadName, status, contextMsg)
}
