// Code generated by MockGen. DO NOT EDIT.
// Source: executor.go

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

import (
	context "context"
	reflect "reflect"

	gomock "github.com/golang/mock/gomock"
	influxdb "github.com/influxdata/influxdb/v2"
	"github.com/influxdata/influxdb/v2/kit/platform"
)

// MockPermissionService is a mock of PermissionService interface
type MockPermissionService struct {
	ctrl     *gomock.Controller
	recorder *MockPermissionServiceMockRecorder
}

// MockPermissionServiceMockRecorder is the mock recorder for MockPermissionService
type MockPermissionServiceMockRecorder struct {
	mock *MockPermissionService
}

// NewMockPermissionService creates a new mock instance
func NewMockPermissionService(ctrl *gomock.Controller) *MockPermissionService {
	mock := &MockPermissionService{ctrl: ctrl}
	mock.recorder = &MockPermissionServiceMockRecorder{mock}
	return mock
}

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

// FindPermissionForUser mocks base method
func (m *MockPermissionService) FindPermissionForUser(ctx context.Context, UserID platform.ID) (influxdb.PermissionSet, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "FindPermissionForUser", ctx, UserID)
	ret0, _ := ret[0].(influxdb.PermissionSet)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// FindPermissionForUser indicates an expected call of FindPermissionForUser
func (mr *MockPermissionServiceMockRecorder) FindPermissionForUser(ctx, UserID interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "FindPermissionForUser", reflect.TypeOf((*MockPermissionService)(nil).FindPermissionForUser), ctx, UserID)
}

// MockPromise is a mock of Promise interface
type MockPromise struct {
	ctrl     *gomock.Controller
	recorder *MockPromiseMockRecorder
}

// MockPromiseMockRecorder is the mock recorder for MockPromise
type MockPromiseMockRecorder struct {
	mock *MockPromise
}

// NewMockPromise creates a new mock instance
func NewMockPromise(ctrl *gomock.Controller) *MockPromise {
	mock := &MockPromise{ctrl: ctrl}
	mock.recorder = &MockPromiseMockRecorder{mock}
	return mock
}

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

// ID mocks base method
func (m *MockPromise) ID() platform.ID {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ID")
	ret0, _ := ret[0].(platform.ID)
	return ret0
}

// ID indicates an expected call of ID
func (mr *MockPromiseMockRecorder) ID() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ID", reflect.TypeOf((*MockPromise)(nil).ID))
}

// Cancel mocks base method
func (m *MockPromise) Cancel(ctx context.Context) {
	m.ctrl.T.Helper()
	m.ctrl.Call(m, "Cancel", ctx)
}

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

// Done mocks base method
func (m *MockPromise) Done() <-chan struct{} {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Done")
	ret0, _ := ret[0].(<-chan struct{})
	return ret0
}

// Done indicates an expected call of Done
func (mr *MockPromiseMockRecorder) Done() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Done", reflect.TypeOf((*MockPromise)(nil).Done))
}

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

// Error indicates an expected call of Error
func (mr *MockPromiseMockRecorder) Error() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Error", reflect.TypeOf((*MockPromise)(nil).Error))
}
