// Code generated by MockGen. DO NOT EDIT.
// Source: scanning_manager.go
//
// Generated by this command:
//
//	mockgen -typed -source scanning_manager.go -destination mock_scanning_manager_test.go -package agent
//

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

import (
	context "context"
	reflect "reflect"

	prototool "gitlab.com/gitlab-org/security-products/analyzers/trivy-k8s-wrapper/prototool"
	gomock "go.uber.org/mock/gomock"
	watch "k8s.io/apimachinery/pkg/watch"
)

// MockScanningManager is a mock of ScanningManager interface.
type MockScanningManager struct {
	ctrl     *gomock.Controller
	recorder *MockScanningManagerMockRecorder
	isgomock struct{}
}

// MockScanningManagerMockRecorder is the mock recorder for MockScanningManager.
type MockScanningManagerMockRecorder struct {
	mock *MockScanningManager
}

// NewMockScanningManager creates a new mock instance.
func NewMockScanningManager(ctrl *gomock.Controller) *MockScanningManager {
	mock := &MockScanningManager{ctrl: ctrl}
	mock.recorder = &MockScanningManagerMockRecorder{mock}
	return mock
}

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

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

// deleteChainedConfigmaps indicates an expected call of deleteChainedConfigmaps.
func (mr *MockScanningManagerMockRecorder) deleteChainedConfigmaps(ctx, targetNamespace any) *MockScanningManagerdeleteChainedConfigmapsCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "deleteChainedConfigmaps", reflect.TypeOf((*MockScanningManager)(nil).deleteChainedConfigmaps), ctx, targetNamespace)
	return &MockScanningManagerdeleteChainedConfigmapsCall{Call: call}
}

// MockScanningManagerdeleteChainedConfigmapsCall wrap *gomock.Call
type MockScanningManagerdeleteChainedConfigmapsCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockScanningManagerdeleteChainedConfigmapsCall) Return(arg0 error) *MockScanningManagerdeleteChainedConfigmapsCall {
	c.Call = c.Call.Return(arg0)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockScanningManagerdeleteChainedConfigmapsCall) Do(f func(context.Context, string) error) *MockScanningManagerdeleteChainedConfigmapsCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockScanningManagerdeleteChainedConfigmapsCall) DoAndReturn(f func(context.Context, string) error) *MockScanningManagerdeleteChainedConfigmapsCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

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

// deleteScanningPod indicates an expected call of deleteScanningPod.
func (mr *MockScanningManagerMockRecorder) deleteScanningPod(podName any) *MockScanningManagerdeleteScanningPodCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "deleteScanningPod", reflect.TypeOf((*MockScanningManager)(nil).deleteScanningPod), podName)
	return &MockScanningManagerdeleteScanningPodCall{Call: call}
}

// MockScanningManagerdeleteScanningPodCall wrap *gomock.Call
type MockScanningManagerdeleteScanningPodCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockScanningManagerdeleteScanningPodCall) Return(arg0 error) *MockScanningManagerdeleteScanningPodCall {
	c.Call = c.Call.Return(arg0)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockScanningManagerdeleteScanningPodCall) Do(f func(string) error) *MockScanningManagerdeleteScanningPodCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockScanningManagerdeleteScanningPodCall) DoAndReturn(f func(string) error) *MockScanningManagerdeleteScanningPodCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// deployScanningPod mocks base method.
func (m *MockScanningManager) deployScanningPod(ctx context.Context, podName, targetNamespace, serviceAccountName, image string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "deployScanningPod", ctx, podName, targetNamespace, serviceAccountName, image)
	ret0, _ := ret[0].(error)
	return ret0
}

// deployScanningPod indicates an expected call of deployScanningPod.
func (mr *MockScanningManagerMockRecorder) deployScanningPod(ctx, podName, targetNamespace, serviceAccountName, image any) *MockScanningManagerdeployScanningPodCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "deployScanningPod", reflect.TypeOf((*MockScanningManager)(nil).deployScanningPod), ctx, podName, targetNamespace, serviceAccountName, image)
	return &MockScanningManagerdeployScanningPodCall{Call: call}
}

// MockScanningManagerdeployScanningPodCall wrap *gomock.Call
type MockScanningManagerdeployScanningPodCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockScanningManagerdeployScanningPodCall) Return(arg0 error) *MockScanningManagerdeployScanningPodCall {
	c.Call = c.Call.Return(arg0)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockScanningManagerdeployScanningPodCall) Do(f func(context.Context, string, string, string, string) error) *MockScanningManagerdeployScanningPodCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockScanningManagerdeployScanningPodCall) DoAndReturn(f func(context.Context, string, string, string, string) error) *MockScanningManagerdeployScanningPodCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// extractExitCodeError mocks base method.
func (m *MockScanningManager) extractExitCodeError(code int32, reason string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "extractExitCodeError", code, reason)
	ret0, _ := ret[0].(error)
	return ret0
}

// extractExitCodeError indicates an expected call of extractExitCodeError.
func (mr *MockScanningManagerMockRecorder) extractExitCodeError(code, reason any) *MockScanningManagerextractExitCodeErrorCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "extractExitCodeError", reflect.TypeOf((*MockScanningManager)(nil).extractExitCodeError), code, reason)
	return &MockScanningManagerextractExitCodeErrorCall{Call: call}
}

// MockScanningManagerextractExitCodeErrorCall wrap *gomock.Call
type MockScanningManagerextractExitCodeErrorCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockScanningManagerextractExitCodeErrorCall) Return(arg0 error) *MockScanningManagerextractExitCodeErrorCall {
	c.Call = c.Call.Return(arg0)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockScanningManagerextractExitCodeErrorCall) Do(f func(int32, string) error) *MockScanningManagerextractExitCodeErrorCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockScanningManagerextractExitCodeErrorCall) DoAndReturn(f func(int32, string) error) *MockScanningManagerextractExitCodeErrorCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// parseScanningPodPayload mocks base method.
func (m *MockScanningManager) parseScanningPodPayload(data []byte, trivyVersion string) ([]*Payload, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "parseScanningPodPayload", data, trivyVersion)
	ret0, _ := ret[0].([]*Payload)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// parseScanningPodPayload indicates an expected call of parseScanningPodPayload.
func (mr *MockScanningManagerMockRecorder) parseScanningPodPayload(data, trivyVersion any) *MockScanningManagerparseScanningPodPayloadCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "parseScanningPodPayload", reflect.TypeOf((*MockScanningManager)(nil).parseScanningPodPayload), data, trivyVersion)
	return &MockScanningManagerparseScanningPodPayloadCall{Call: call}
}

// MockScanningManagerparseScanningPodPayloadCall wrap *gomock.Call
type MockScanningManagerparseScanningPodPayloadCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockScanningManagerparseScanningPodPayloadCall) Return(arg0 []*Payload, arg1 error) *MockScanningManagerparseScanningPodPayloadCall {
	c.Call = c.Call.Return(arg0, arg1)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockScanningManagerparseScanningPodPayloadCall) Do(f func([]byte, string) ([]*Payload, error)) *MockScanningManagerparseScanningPodPayloadCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockScanningManagerparseScanningPodPayloadCall) DoAndReturn(f func([]byte, string) ([]*Payload, error)) *MockScanningManagerparseScanningPodPayloadCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// readChainedConfigmaps mocks base method.
func (m *MockScanningManager) readChainedConfigmaps(ctx context.Context, targetNamespace string) ([]byte, string, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "readChainedConfigmaps", ctx, targetNamespace)
	ret0, _ := ret[0].([]byte)
	ret1, _ := ret[1].(string)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// readChainedConfigmaps indicates an expected call of readChainedConfigmaps.
func (mr *MockScanningManagerMockRecorder) readChainedConfigmaps(ctx, targetNamespace any) *MockScanningManagerreadChainedConfigmapsCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "readChainedConfigmaps", reflect.TypeOf((*MockScanningManager)(nil).readChainedConfigmaps), ctx, targetNamespace)
	return &MockScanningManagerreadChainedConfigmapsCall{Call: call}
}

// MockScanningManagerreadChainedConfigmapsCall wrap *gomock.Call
type MockScanningManagerreadChainedConfigmapsCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockScanningManagerreadChainedConfigmapsCall) Return(arg0 []byte, arg1 string, arg2 error) *MockScanningManagerreadChainedConfigmapsCall {
	c.Call = c.Call.Return(arg0, arg1, arg2)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockScanningManagerreadChainedConfigmapsCall) Do(f func(context.Context, string) ([]byte, string, error)) *MockScanningManagerreadChainedConfigmapsCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockScanningManagerreadChainedConfigmapsCall) DoAndReturn(f func(context.Context, string) ([]byte, string, error)) *MockScanningManagerreadChainedConfigmapsCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// toVulnerabilityAPIPayload mocks base method.
func (m *MockScanningManager) toVulnerabilityAPIPayload(p *prototool.Payload, trivyVersion string) ([]*Payload, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "toVulnerabilityAPIPayload", p, trivyVersion)
	ret0, _ := ret[0].([]*Payload)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// toVulnerabilityAPIPayload indicates an expected call of toVulnerabilityAPIPayload.
func (mr *MockScanningManagerMockRecorder) toVulnerabilityAPIPayload(p, trivyVersion any) *MockScanningManagertoVulnerabilityAPIPayloadCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "toVulnerabilityAPIPayload", reflect.TypeOf((*MockScanningManager)(nil).toVulnerabilityAPIPayload), p, trivyVersion)
	return &MockScanningManagertoVulnerabilityAPIPayloadCall{Call: call}
}

// MockScanningManagertoVulnerabilityAPIPayloadCall wrap *gomock.Call
type MockScanningManagertoVulnerabilityAPIPayloadCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockScanningManagertoVulnerabilityAPIPayloadCall) Return(arg0 []*Payload, arg1 error) *MockScanningManagertoVulnerabilityAPIPayloadCall {
	c.Call = c.Call.Return(arg0, arg1)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockScanningManagertoVulnerabilityAPIPayloadCall) Do(f func(*prototool.Payload, string) ([]*Payload, error)) *MockScanningManagertoVulnerabilityAPIPayloadCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockScanningManagertoVulnerabilityAPIPayloadCall) DoAndReturn(f func(*prototool.Payload, string) ([]*Payload, error)) *MockScanningManagertoVulnerabilityAPIPayloadCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// watchScanningPod mocks base method.
func (m *MockScanningManager) watchScanningPod(ctx context.Context, podName string) (watch.Interface, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "watchScanningPod", ctx, podName)
	ret0, _ := ret[0].(watch.Interface)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// watchScanningPod indicates an expected call of watchScanningPod.
func (mr *MockScanningManagerMockRecorder) watchScanningPod(ctx, podName any) *MockScanningManagerwatchScanningPodCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "watchScanningPod", reflect.TypeOf((*MockScanningManager)(nil).watchScanningPod), ctx, podName)
	return &MockScanningManagerwatchScanningPodCall{Call: call}
}

// MockScanningManagerwatchScanningPodCall wrap *gomock.Call
type MockScanningManagerwatchScanningPodCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockScanningManagerwatchScanningPodCall) Return(arg0 watch.Interface, arg1 error) *MockScanningManagerwatchScanningPodCall {
	c.Call = c.Call.Return(arg0, arg1)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockScanningManagerwatchScanningPodCall) Do(f func(context.Context, string) (watch.Interface, error)) *MockScanningManagerwatchScanningPodCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockScanningManagerwatchScanningPodCall) DoAndReturn(f func(context.Context, string) (watch.Interface, error)) *MockScanningManagerwatchScanningPodCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}
