// Code generated by MockGen. DO NOT EDIT.
// Source: api_for_mocks.go
//
// Generated by this command:
//
//	mockgen -typed -source api_for_mocks.go -destination mock_for_test.go -package it
//

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

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

	gitalypb "gitlab.com/gitlab-org/cluster-integration/gitlab-agent/v18/internal/gitaly/vendored/gitalypb"
	gomock "go.uber.org/mock/gomock"
	grpc "google.golang.org/grpc"
)

// MockGitalyAPI is a mock of GitalyAPI interface.
type MockGitalyAPI struct {
	ctrl     *gomock.Controller
	recorder *MockGitalyAPIMockRecorder
	isgomock struct{}
}

// MockGitalyAPIMockRecorder is the mock recorder for MockGitalyAPI.
type MockGitalyAPIMockRecorder struct {
	mock *MockGitalyAPI
}

// NewMockGitalyAPI creates a new mock instance.
func NewMockGitalyAPI(ctrl *gomock.Controller) *MockGitalyAPI {
	mock := &MockGitalyAPI{ctrl: ctrl}
	mock.recorder = &MockGitalyAPIMockRecorder{mock}
	return mock
}

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

// GetTreeEntries mocks base method.
func (m *MockGitalyAPI) GetTreeEntries(arg0 *gitalypb.GetTreeEntriesRequest, arg1 grpc.ServerStreamingServer[gitalypb.GetTreeEntriesResponse]) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetTreeEntries", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

// GetTreeEntries indicates an expected call of GetTreeEntries.
func (mr *MockGitalyAPIMockRecorder) GetTreeEntries(arg0, arg1 any) *MockGitalyAPIGetTreeEntriesCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetTreeEntries", reflect.TypeOf((*MockGitalyAPI)(nil).GetTreeEntries), arg0, arg1)
	return &MockGitalyAPIGetTreeEntriesCall{Call: call}
}

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

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

// Do rewrite *gomock.Call.Do
func (c *MockGitalyAPIGetTreeEntriesCall) Do(f func(*gitalypb.GetTreeEntriesRequest, grpc.ServerStreamingServer[gitalypb.GetTreeEntriesResponse]) error) *MockGitalyAPIGetTreeEntriesCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockGitalyAPIGetTreeEntriesCall) DoAndReturn(f func(*gitalypb.GetTreeEntriesRequest, grpc.ServerStreamingServer[gitalypb.GetTreeEntriesResponse]) error) *MockGitalyAPIGetTreeEntriesCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// LastCommitForPath mocks base method.
func (m *MockGitalyAPI) LastCommitForPath(arg0 context.Context, arg1 *gitalypb.LastCommitForPathRequest) (*gitalypb.LastCommitForPathResponse, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "LastCommitForPath", arg0, arg1)
	ret0, _ := ret[0].(*gitalypb.LastCommitForPathResponse)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// LastCommitForPath indicates an expected call of LastCommitForPath.
func (mr *MockGitalyAPIMockRecorder) LastCommitForPath(arg0, arg1 any) *MockGitalyAPILastCommitForPathCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LastCommitForPath", reflect.TypeOf((*MockGitalyAPI)(nil).LastCommitForPath), arg0, arg1)
	return &MockGitalyAPILastCommitForPathCall{Call: call}
}

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

// Return rewrite *gomock.Call.Return
func (c *MockGitalyAPILastCommitForPathCall) Return(arg0 *gitalypb.LastCommitForPathResponse, arg1 error) *MockGitalyAPILastCommitForPathCall {
	c.Call = c.Call.Return(arg0, arg1)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockGitalyAPILastCommitForPathCall) Do(f func(context.Context, *gitalypb.LastCommitForPathRequest) (*gitalypb.LastCommitForPathResponse, error)) *MockGitalyAPILastCommitForPathCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockGitalyAPILastCommitForPathCall) DoAndReturn(f func(context.Context, *gitalypb.LastCommitForPathRequest) (*gitalypb.LastCommitForPathResponse, error)) *MockGitalyAPILastCommitForPathCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// TreeEntry mocks base method.
func (m *MockGitalyAPI) TreeEntry(arg0 *gitalypb.TreeEntryRequest, arg1 grpc.ServerStreamingServer[gitalypb.TreeEntryResponse]) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "TreeEntry", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

// TreeEntry indicates an expected call of TreeEntry.
func (mr *MockGitalyAPIMockRecorder) TreeEntry(arg0, arg1 any) *MockGitalyAPITreeEntryCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "TreeEntry", reflect.TypeOf((*MockGitalyAPI)(nil).TreeEntry), arg0, arg1)
	return &MockGitalyAPITreeEntryCall{Call: call}
}

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

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

// Do rewrite *gomock.Call.Do
func (c *MockGitalyAPITreeEntryCall) Do(f func(*gitalypb.TreeEntryRequest, grpc.ServerStreamingServer[gitalypb.TreeEntryResponse]) error) *MockGitalyAPITreeEntryCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockGitalyAPITreeEntryCall) DoAndReturn(f func(*gitalypb.TreeEntryRequest, grpc.ServerStreamingServer[gitalypb.TreeEntryResponse]) error) *MockGitalyAPITreeEntryCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// MockGitLabAPI is a mock of GitLabAPI interface.
type MockGitLabAPI struct {
	ctrl     *gomock.Controller
	recorder *MockGitLabAPIMockRecorder
	isgomock struct{}
}

// MockGitLabAPIMockRecorder is the mock recorder for MockGitLabAPI.
type MockGitLabAPIMockRecorder struct {
	mock *MockGitLabAPI
}

// NewMockGitLabAPI creates a new mock instance.
func NewMockGitLabAPI(ctrl *gomock.Controller) *MockGitLabAPI {
	mock := &MockGitLabAPI{ctrl: ctrl}
	mock.recorder = &MockGitLabAPIMockRecorder{mock}
	return mock
}

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

// GetAgentInfo mocks base method.
func (m *MockGitLabAPI) GetAgentInfo(arg0 http.ResponseWriter, arg1 *http.Request) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "GetAgentInfo", arg0, arg1)
}

// GetAgentInfo indicates an expected call of GetAgentInfo.
func (mr *MockGitLabAPIMockRecorder) GetAgentInfo(arg0, arg1 any) *MockGitLabAPIGetAgentInfoCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAgentInfo", reflect.TypeOf((*MockGitLabAPI)(nil).GetAgentInfo), arg0, arg1)
	return &MockGitLabAPIGetAgentInfoCall{Call: call}
}

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

// Return rewrite *gomock.Call.Return
func (c *MockGitLabAPIGetAgentInfoCall) Return() *MockGitLabAPIGetAgentInfoCall {
	c.Call = c.Call.Return()
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockGitLabAPIGetAgentInfoCall) Do(f func(http.ResponseWriter, *http.Request)) *MockGitLabAPIGetAgentInfoCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockGitLabAPIGetAgentInfoCall) DoAndReturn(f func(http.ResponseWriter, *http.Request)) *MockGitLabAPIGetAgentInfoCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// GetAllowedAgents mocks base method.
func (m *MockGitLabAPI) GetAllowedAgents(arg0 http.ResponseWriter, arg1 *http.Request) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "GetAllowedAgents", arg0, arg1)
}

// GetAllowedAgents indicates an expected call of GetAllowedAgents.
func (mr *MockGitLabAPIMockRecorder) GetAllowedAgents(arg0, arg1 any) *MockGitLabAPIGetAllowedAgentsCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAllowedAgents", reflect.TypeOf((*MockGitLabAPI)(nil).GetAllowedAgents), arg0, arg1)
	return &MockGitLabAPIGetAllowedAgentsCall{Call: call}
}

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

// Return rewrite *gomock.Call.Return
func (c *MockGitLabAPIGetAllowedAgentsCall) Return() *MockGitLabAPIGetAllowedAgentsCall {
	c.Call = c.Call.Return()
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockGitLabAPIGetAllowedAgentsCall) Do(f func(http.ResponseWriter, *http.Request)) *MockGitLabAPIGetAllowedAgentsCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockGitLabAPIGetAllowedAgentsCall) DoAndReturn(f func(http.ResponseWriter, *http.Request)) *MockGitLabAPIGetAllowedAgentsCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// GetReceptiveAgents mocks base method.
func (m *MockGitLabAPI) GetReceptiveAgents(arg0 http.ResponseWriter, arg1 *http.Request) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "GetReceptiveAgents", arg0, arg1)
}

// GetReceptiveAgents indicates an expected call of GetReceptiveAgents.
func (mr *MockGitLabAPIMockRecorder) GetReceptiveAgents(arg0, arg1 any) *MockGitLabAPIGetReceptiveAgentsCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetReceptiveAgents", reflect.TypeOf((*MockGitLabAPI)(nil).GetReceptiveAgents), arg0, arg1)
	return &MockGitLabAPIGetReceptiveAgentsCall{Call: call}
}

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

// Return rewrite *gomock.Call.Return
func (c *MockGitLabAPIGetReceptiveAgentsCall) Return() *MockGitLabAPIGetReceptiveAgentsCall {
	c.Call = c.Call.Return()
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockGitLabAPIGetReceptiveAgentsCall) Do(f func(http.ResponseWriter, *http.Request)) *MockGitLabAPIGetReceptiveAgentsCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockGitLabAPIGetReceptiveAgentsCall) DoAndReturn(f func(http.ResponseWriter, *http.Request)) *MockGitLabAPIGetReceptiveAgentsCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// PostAgentConfiguration mocks base method.
func (m *MockGitLabAPI) PostAgentConfiguration(arg0 http.ResponseWriter, arg1 *http.Request) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "PostAgentConfiguration", arg0, arg1)
}

// PostAgentConfiguration indicates an expected call of PostAgentConfiguration.
func (mr *MockGitLabAPIMockRecorder) PostAgentConfiguration(arg0, arg1 any) *MockGitLabAPIPostAgentConfigurationCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "PostAgentConfiguration", reflect.TypeOf((*MockGitLabAPI)(nil).PostAgentConfiguration), arg0, arg1)
	return &MockGitLabAPIPostAgentConfigurationCall{Call: call}
}

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

// Return rewrite *gomock.Call.Return
func (c *MockGitLabAPIPostAgentConfigurationCall) Return() *MockGitLabAPIPostAgentConfigurationCall {
	c.Call = c.Call.Return()
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockGitLabAPIPostAgentConfigurationCall) Do(f func(http.ResponseWriter, *http.Request)) *MockGitLabAPIPostAgentConfigurationCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockGitLabAPIPostAgentConfigurationCall) DoAndReturn(f func(http.ResponseWriter, *http.Request)) *MockGitLabAPIPostAgentConfigurationCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}
