// Code generated by MockGen. DO NOT EDIT.
// Source: /Volumes/workplace/appmesh-controller/src/AWSLatticeControllerForK8sExternal/pkg/cloudmap/virtualnode_endpoint_resolver.go

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

import (
	context "context"
	reflect "reflect"

	v1beta2 "github.com/aws/aws-app-mesh-controller-for-k8s/apis/appmesh/v1beta2"
	gomock "github.com/golang/mock/gomock"
	v1 "k8s.io/api/core/v1"
)

// MockVirtualNodeEndpointResolver is a mock of VirtualNodeEndpointResolver interface.
type MockVirtualNodeEndpointResolver struct {
	ctrl     *gomock.Controller
	recorder *MockVirtualNodeEndpointResolverMockRecorder
}

// MockVirtualNodeEndpointResolverMockRecorder is the mock recorder for MockVirtualNodeEndpointResolver.
type MockVirtualNodeEndpointResolverMockRecorder struct {
	mock *MockVirtualNodeEndpointResolver
}

// NewMockVirtualNodeEndpointResolver creates a new mock instance.
func NewMockVirtualNodeEndpointResolver(ctrl *gomock.Controller) *MockVirtualNodeEndpointResolver {
	mock := &MockVirtualNodeEndpointResolver{ctrl: ctrl}
	mock.recorder = &MockVirtualNodeEndpointResolverMockRecorder{mock}
	return mock
}

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

// Resolve mocks base method.
func (m *MockVirtualNodeEndpointResolver) Resolve(ctx context.Context, vn *v1beta2.VirtualNode) ([]*v1.Pod, []*v1.Pod, []*v1.Pod, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Resolve", ctx, vn)
	ret0, _ := ret[0].([]*v1.Pod)
	ret1, _ := ret[1].([]*v1.Pod)
	ret2, _ := ret[2].([]*v1.Pod)
	ret3, _ := ret[3].(error)
	return ret0, ret1, ret2, ret3
}

// Resolve indicates an expected call of Resolve.
func (mr *MockVirtualNodeEndpointResolverMockRecorder) Resolve(ctx, vn interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Resolve", reflect.TypeOf((*MockVirtualNodeEndpointResolver)(nil).Resolve), ctx, vn)
}
