// Code generated by MockGen. DO NOT EDIT.
// Source: controller/pkg/remoteenforcer/internal/tokenissuer/tokenissuer.go

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

import (
	context "context"
	reflect "reflect"
	time "time"

	gomock "github.com/golang/mock/gomock"
	common "go.aporeto.io/enforcerd/trireme-lib/common"
)

// MockTokenClient is a mock of TokenClient interface
// nolint
type MockTokenClient struct {
	ctrl     *gomock.Controller
	recorder *MockTokenClientMockRecorder
}

// MockTokenClientMockRecorder is the mock recorder for MockTokenClient
// nolint
type MockTokenClientMockRecorder struct {
	mock *MockTokenClient
}

// NewMockTokenClient creates a new mock instance
// nolint
func NewMockTokenClient(ctrl *gomock.Controller) *MockTokenClient {
	mock := &MockTokenClient{ctrl: ctrl}
	mock.recorder = &MockTokenClientMockRecorder{mock}
	return mock
}

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

// Run mocks base method
// nolint
func (m *MockTokenClient) Run(ctx context.Context) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Run", ctx)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// Issue mocks base method
// nolint
func (m *MockTokenClient) Issue(ctx context.Context, contextID string, stype common.ServiceTokenType, audience string, validity time.Duration) (string, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Issue", ctx, contextID, stype, audience, validity)
	ret0, _ := ret[0].(string)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Issue indicates an expected call of Issue
// nolint
func (mr *MockTokenClientMockRecorder) Issue(ctx, contextID, stype, audience, validity interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Issue", reflect.TypeOf((*MockTokenClient)(nil).Issue), ctx, contextID, stype, audience, validity)
}
