// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/aws/eks-anywhere/pkg/git/providers/github (interfaces: GithubClient)

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

import (
	context "context"
	reflect "reflect"

	git "github.com/aws/eks-anywhere/pkg/git"
	gomock "github.com/golang/mock/gomock"
	github "github.com/google/go-github/v35/github"
)

// MockGithubClient is a mock of GithubClient interface.
type MockGithubClient struct {
	ctrl     *gomock.Controller
	recorder *MockGithubClientMockRecorder
}

// MockGithubClientMockRecorder is the mock recorder for MockGithubClient.
type MockGithubClientMockRecorder struct {
	mock *MockGithubClient
}

// NewMockGithubClient creates a new mock instance.
func NewMockGithubClient(ctrl *gomock.Controller) *MockGithubClient {
	mock := &MockGithubClient{ctrl: ctrl}
	mock.recorder = &MockGithubClientMockRecorder{mock}
	return mock
}

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

// AddDeployKeyToRepo mocks base method.
func (m *MockGithubClient) AddDeployKeyToRepo(arg0 context.Context, arg1 git.AddDeployKeyOpts) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "AddDeployKeyToRepo", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

// AddDeployKeyToRepo indicates an expected call of AddDeployKeyToRepo.
func (mr *MockGithubClientMockRecorder) AddDeployKeyToRepo(arg0, arg1 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddDeployKeyToRepo", reflect.TypeOf((*MockGithubClient)(nil).AddDeployKeyToRepo), arg0, arg1)
}

// AuthenticatedUser mocks base method.
func (m *MockGithubClient) AuthenticatedUser(arg0 context.Context) (*github.User, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "AuthenticatedUser", arg0)
	ret0, _ := ret[0].(*github.User)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// AuthenticatedUser indicates an expected call of AuthenticatedUser.
func (mr *MockGithubClientMockRecorder) AuthenticatedUser(arg0 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AuthenticatedUser", reflect.TypeOf((*MockGithubClient)(nil).AuthenticatedUser), arg0)
}

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

// CheckAccessTokenPermissions indicates an expected call of CheckAccessTokenPermissions.
func (mr *MockGithubClientMockRecorder) CheckAccessTokenPermissions(arg0, arg1 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CheckAccessTokenPermissions", reflect.TypeOf((*MockGithubClient)(nil).CheckAccessTokenPermissions), arg0, arg1)
}

// CreateRepo mocks base method.
func (m *MockGithubClient) CreateRepo(arg0 context.Context, arg1 git.CreateRepoOpts) (*git.Repository, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateRepo", arg0, arg1)
	ret0, _ := ret[0].(*git.Repository)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CreateRepo indicates an expected call of CreateRepo.
func (mr *MockGithubClientMockRecorder) CreateRepo(arg0, arg1 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateRepo", reflect.TypeOf((*MockGithubClient)(nil).CreateRepo), arg0, arg1)
}

// DeleteRepo mocks base method.
func (m *MockGithubClient) DeleteRepo(arg0 context.Context, arg1 git.DeleteRepoOpts) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteRepo", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

// DeleteRepo indicates an expected call of DeleteRepo.
func (mr *MockGithubClientMockRecorder) DeleteRepo(arg0, arg1 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteRepo", reflect.TypeOf((*MockGithubClient)(nil).DeleteRepo), arg0, arg1)
}

// GetAccessTokenPermissions mocks base method.
func (m *MockGithubClient) GetAccessTokenPermissions(arg0 string) (string, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetAccessTokenPermissions", arg0)
	ret0, _ := ret[0].(string)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetAccessTokenPermissions indicates an expected call of GetAccessTokenPermissions.
func (mr *MockGithubClientMockRecorder) GetAccessTokenPermissions(arg0 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAccessTokenPermissions", reflect.TypeOf((*MockGithubClient)(nil).GetAccessTokenPermissions), arg0)
}

// GetRepo mocks base method.
func (m *MockGithubClient) GetRepo(arg0 context.Context, arg1 git.GetRepoOpts) (*git.Repository, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetRepo", arg0, arg1)
	ret0, _ := ret[0].(*git.Repository)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetRepo indicates an expected call of GetRepo.
func (mr *MockGithubClientMockRecorder) GetRepo(arg0, arg1 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetRepo", reflect.TypeOf((*MockGithubClient)(nil).GetRepo), arg0, arg1)
}

// Organization mocks base method.
func (m *MockGithubClient) Organization(arg0 context.Context, arg1 string) (*github.Organization, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Organization", arg0, arg1)
	ret0, _ := ret[0].(*github.Organization)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Organization indicates an expected call of Organization.
func (mr *MockGithubClientMockRecorder) Organization(arg0, arg1 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Organization", reflect.TypeOf((*MockGithubClient)(nil).Organization), arg0, arg1)
}

// PathExists mocks base method.
func (m *MockGithubClient) PathExists(arg0 context.Context, arg1, arg2, arg3, arg4 string) (bool, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "PathExists", arg0, arg1, arg2, arg3, arg4)
	ret0, _ := ret[0].(bool)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// PathExists indicates an expected call of PathExists.
func (mr *MockGithubClientMockRecorder) PathExists(arg0, arg1, arg2, arg3, arg4 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "PathExists", reflect.TypeOf((*MockGithubClient)(nil).PathExists), arg0, arg1, arg2, arg3, arg4)
}
