// Code generated by mockery v1.0.1. DO NOT EDIT.

package mocks

import (
	context "context"

	models "github.com/caraml-dev/merlin/models"
	mock "github.com/stretchr/testify/mock"
)

// ContainerFetcher is an autogenerated mock type for the ContainerFetcher type
type ContainerFetcher struct {
	mock.Mock
}

type ContainerFetcher_GetContainers struct {
	*mock.Call
}

func (_m ContainerFetcher_GetContainers) Return(_a0 []*models.Container, _a1 error) *ContainerFetcher_GetContainers {
	return &ContainerFetcher_GetContainers{Call: _m.Call.Return(_a0, _a1)}
}

func (_m *ContainerFetcher) OnGetContainers(ctx context.Context, namespace string, labelSelector string) *ContainerFetcher_GetContainers {
	c := _m.On("GetContainers", ctx, namespace, labelSelector)
	return &ContainerFetcher_GetContainers{Call: c}
}

func (_m *ContainerFetcher) OnGetContainersMatch(matchers ...interface{}) *ContainerFetcher_GetContainers {
	c := _m.On("GetContainers", matchers...)
	return &ContainerFetcher_GetContainers{Call: c}
}

// GetContainers provides a mock function with given fields: ctx, namespace, labelSelector
func (_m *ContainerFetcher) GetContainers(ctx context.Context, namespace string, labelSelector string) ([]*models.Container, error) {
	ret := _m.Called(ctx, namespace, labelSelector)

	var r0 []*models.Container
	if rf, ok := ret.Get(0).(func(context.Context, string, string) []*models.Container); ok {
		r0 = rf(ctx, namespace, labelSelector)
	} else {
		if ret.Get(0) != nil {
			r0 = ret.Get(0).([]*models.Container)
		}
	}

	var r1 error
	if rf, ok := ret.Get(1).(func(context.Context, string, string) error); ok {
		r1 = rf(ctx, namespace, labelSelector)
	} else {
		r1 = ret.Error(1)
	}

	return r0, r1
}
