// Code generated by MockGen. DO NOT EDIT.
// Source: ./router/router.go
//
// Generated by this command:
//
//	mockgen -source=./router/router.go -destination=./router/router_mock_test.go -package=router
//

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

import (
	context "context"
	http "net/http"
	reflect "reflect"

	devtools "github.com/buildwithgrove/path/metrics/devtools"
	protocol "github.com/buildwithgrove/path/protocol"
	gomock "go.uber.org/mock/gomock"
)

// MockgatewayHandler is a mock of gatewayHandler interface.
type MockgatewayHandler struct {
	ctrl     *gomock.Controller
	recorder *MockgatewayHandlerMockRecorder
	isgomock struct{}
}

// MockgatewayHandlerMockRecorder is the mock recorder for MockgatewayHandler.
type MockgatewayHandlerMockRecorder struct {
	mock *MockgatewayHandler
}

// NewMockgatewayHandler creates a new mock instance.
func NewMockgatewayHandler(ctrl *gomock.Controller) *MockgatewayHandler {
	mock := &MockgatewayHandler{ctrl: ctrl}
	mock.recorder = &MockgatewayHandlerMockRecorder{mock}
	return mock
}

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

// HandleServiceRequest mocks base method.
func (m *MockgatewayHandler) HandleServiceRequest(arg0 context.Context, arg1 *http.Request, arg2 http.ResponseWriter) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "HandleServiceRequest", arg0, arg1, arg2)
}

// HandleServiceRequest indicates an expected call of HandleServiceRequest.
func (mr *MockgatewayHandlerMockRecorder) HandleServiceRequest(arg0, arg1, arg2 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "HandleServiceRequest", reflect.TypeOf((*MockgatewayHandler)(nil).HandleServiceRequest), arg0, arg1, arg2)
}

// MockdisqualifiedEndpointsReporter is a mock of disqualifiedEndpointsReporter interface.
type MockdisqualifiedEndpointsReporter struct {
	ctrl     *gomock.Controller
	recorder *MockdisqualifiedEndpointsReporterMockRecorder
	isgomock struct{}
}

// MockdisqualifiedEndpointsReporterMockRecorder is the mock recorder for MockdisqualifiedEndpointsReporter.
type MockdisqualifiedEndpointsReporterMockRecorder struct {
	mock *MockdisqualifiedEndpointsReporter
}

// NewMockdisqualifiedEndpointsReporter creates a new mock instance.
func NewMockdisqualifiedEndpointsReporter(ctrl *gomock.Controller) *MockdisqualifiedEndpointsReporter {
	mock := &MockdisqualifiedEndpointsReporter{ctrl: ctrl}
	mock.recorder = &MockdisqualifiedEndpointsReporterMockRecorder{mock}
	return mock
}

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

// ReportEndpointStatus mocks base method.
func (m *MockdisqualifiedEndpointsReporter) ReportEndpointStatus(arg0 protocol.ServiceID, arg1 *http.Request) (devtools.DisqualifiedEndpointResponse, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ReportEndpointStatus", arg0, arg1)
	ret0, _ := ret[0].(devtools.DisqualifiedEndpointResponse)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ReportEndpointStatus indicates an expected call of ReportEndpointStatus.
func (mr *MockdisqualifiedEndpointsReporterMockRecorder) ReportEndpointStatus(arg0, arg1 any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ReportEndpointStatus", reflect.TypeOf((*MockdisqualifiedEndpointsReporter)(nil).ReportEndpointStatus), arg0, arg1)
}
