// Code generated by MockGen. DO NOT EDIT.
// Source: role_definitions_client.go
//
// Generated by this command:
//
//	mockgen-v0.6.0 -typed -source=role_definitions_client.go -destination=mock_role_definitions_client.go -package client RoleDefinitionsClient
//

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

import (
	context "context"
	reflect "reflect"

	runtime "github.com/Azure/azure-sdk-for-go/sdk/azcore/runtime"
	armauthorization "github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/authorization/armauthorization/v2"
	gomock "go.uber.org/mock/gomock"
)

// MockRoleDefinitionsClient is a mock of RoleDefinitionsClient interface.
type MockRoleDefinitionsClient struct {
	ctrl     *gomock.Controller
	recorder *MockRoleDefinitionsClientMockRecorder
	isgomock struct{}
}

// MockRoleDefinitionsClientMockRecorder is the mock recorder for MockRoleDefinitionsClient.
type MockRoleDefinitionsClientMockRecorder struct {
	mock *MockRoleDefinitionsClient
}

// NewMockRoleDefinitionsClient creates a new mock instance.
func NewMockRoleDefinitionsClient(ctrl *gomock.Controller) *MockRoleDefinitionsClient {
	mock := &MockRoleDefinitionsClient{ctrl: ctrl}
	mock.recorder = &MockRoleDefinitionsClientMockRecorder{mock}
	return mock
}

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

// Get mocks base method.
func (m *MockRoleDefinitionsClient) Get(ctx context.Context, scope, roleDefinitionName string, options *armauthorization.RoleDefinitionsClientGetOptions) (armauthorization.RoleDefinitionsClientGetResponse, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Get", ctx, scope, roleDefinitionName, options)
	ret0, _ := ret[0].(armauthorization.RoleDefinitionsClientGetResponse)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Get indicates an expected call of Get.
func (mr *MockRoleDefinitionsClientMockRecorder) Get(ctx, scope, roleDefinitionName, options any) *MockRoleDefinitionsClientGetCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Get", reflect.TypeOf((*MockRoleDefinitionsClient)(nil).Get), ctx, scope, roleDefinitionName, options)
	return &MockRoleDefinitionsClientGetCall{Call: call}
}

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

// Return rewrite *gomock.Call.Return
func (c *MockRoleDefinitionsClientGetCall) Return(arg0 armauthorization.RoleDefinitionsClientGetResponse, arg1 error) *MockRoleDefinitionsClientGetCall {
	c.Call = c.Call.Return(arg0, arg1)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockRoleDefinitionsClientGetCall) Do(f func(context.Context, string, string, *armauthorization.RoleDefinitionsClientGetOptions) (armauthorization.RoleDefinitionsClientGetResponse, error)) *MockRoleDefinitionsClientGetCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockRoleDefinitionsClientGetCall) DoAndReturn(f func(context.Context, string, string, *armauthorization.RoleDefinitionsClientGetOptions) (armauthorization.RoleDefinitionsClientGetResponse, error)) *MockRoleDefinitionsClientGetCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// GetByID mocks base method.
func (m *MockRoleDefinitionsClient) GetByID(ctx context.Context, roleDefinitionResourceID string, options *armauthorization.RoleDefinitionsClientGetByIDOptions) (armauthorization.RoleDefinitionsClientGetByIDResponse, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetByID", ctx, roleDefinitionResourceID, options)
	ret0, _ := ret[0].(armauthorization.RoleDefinitionsClientGetByIDResponse)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetByID indicates an expected call of GetByID.
func (mr *MockRoleDefinitionsClientMockRecorder) GetByID(ctx, roleDefinitionResourceID, options any) *MockRoleDefinitionsClientGetByIDCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetByID", reflect.TypeOf((*MockRoleDefinitionsClient)(nil).GetByID), ctx, roleDefinitionResourceID, options)
	return &MockRoleDefinitionsClientGetByIDCall{Call: call}
}

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

// Return rewrite *gomock.Call.Return
func (c *MockRoleDefinitionsClientGetByIDCall) Return(arg0 armauthorization.RoleDefinitionsClientGetByIDResponse, arg1 error) *MockRoleDefinitionsClientGetByIDCall {
	c.Call = c.Call.Return(arg0, arg1)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockRoleDefinitionsClientGetByIDCall) Do(f func(context.Context, string, *armauthorization.RoleDefinitionsClientGetByIDOptions) (armauthorization.RoleDefinitionsClientGetByIDResponse, error)) *MockRoleDefinitionsClientGetByIDCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockRoleDefinitionsClientGetByIDCall) DoAndReturn(f func(context.Context, string, *armauthorization.RoleDefinitionsClientGetByIDOptions) (armauthorization.RoleDefinitionsClientGetByIDResponse, error)) *MockRoleDefinitionsClientGetByIDCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// NewListPager mocks base method.
func (m *MockRoleDefinitionsClient) NewListPager(scope string, options *armauthorization.RoleDefinitionsClientListOptions) *runtime.Pager[armauthorization.RoleDefinitionsClientListResponse] {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "NewListPager", scope, options)
	ret0, _ := ret[0].(*runtime.Pager[armauthorization.RoleDefinitionsClientListResponse])
	return ret0
}

// NewListPager indicates an expected call of NewListPager.
func (mr *MockRoleDefinitionsClientMockRecorder) NewListPager(scope, options any) *MockRoleDefinitionsClientNewListPagerCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NewListPager", reflect.TypeOf((*MockRoleDefinitionsClient)(nil).NewListPager), scope, options)
	return &MockRoleDefinitionsClientNewListPagerCall{Call: call}
}

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

// Return rewrite *gomock.Call.Return
func (c *MockRoleDefinitionsClientNewListPagerCall) Return(arg0 *runtime.Pager[armauthorization.RoleDefinitionsClientListResponse]) *MockRoleDefinitionsClientNewListPagerCall {
	c.Call = c.Call.Return(arg0)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockRoleDefinitionsClientNewListPagerCall) Do(f func(string, *armauthorization.RoleDefinitionsClientListOptions) *runtime.Pager[armauthorization.RoleDefinitionsClientListResponse]) *MockRoleDefinitionsClientNewListPagerCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockRoleDefinitionsClientNewListPagerCall) DoAndReturn(f func(string, *armauthorization.RoleDefinitionsClientListOptions) *runtime.Pager[armauthorization.RoleDefinitionsClientListResponse]) *MockRoleDefinitionsClientNewListPagerCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}
