mock

package
v0.0.85-test Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 8, 2023 License: AGPL-3.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Calls

type Calls struct {
	Evaluate                       []interface{}
	GetUserPermissions             []interface{}
	GetUserRoles                   []interface{}
	IsDisabled                     []interface{}
	DeclareFixedRoles              []interface{}
	GetUserBuiltInRoles            []interface{}
	RegisterFixedRoles             []interface{}
	RegisterAttributeScopeResolver []interface{}
}

type Mock

type Mock struct {

	// Track the list of calls
	Calls Calls

	// Override functions
	EvaluateFunc                       func(context.Context, *models.SignedInUser, accesscontrol.Evaluator) (bool, error)
	GetUserPermissionsFunc             func(context.Context, *models.SignedInUser, accesscontrol.Options) ([]*accesscontrol.Permission, error)
	GetUserRolesFunc                   func(context.Context, *models.SignedInUser) ([]*accesscontrol.RoleDTO, error)
	IsDisabledFunc                     func() bool
	DeclareFixedRolesFunc              func(...accesscontrol.RoleRegistration) error
	GetUserBuiltInRolesFunc            func(user *models.SignedInUser) []string
	RegisterFixedRolesFunc             func() error
	RegisterAttributeScopeResolverFunc func(string, accesscontrol.AttributeScopeResolveFunc)
	// contains filtered or unexported fields
}

func New

func New() *Mock

func (*Mock) DeclareFixedRoles

func (m *Mock) DeclareFixedRoles(registrations ...accesscontrol.RoleRegistration) error

DeclareFixedRoles allow the caller to declare, to the service, fixed roles and their assignments to organization roles ("Viewer", "Editor", "Admin") or "Grafana Admin" This mock returns no error unless an override is provided.

func (*Mock) Evaluate

func (m *Mock) Evaluate(ctx context.Context, user *models.SignedInUser, evaluator accesscontrol.Evaluator) (bool, error)

Evaluate evaluates access to the given resource. This mock uses GetUserPermissions to then call the evaluator Evaluate function.

func (*Mock) GetUserBuiltInRoles

func (m *Mock) GetUserBuiltInRoles(user *models.SignedInUser) []string

GetUserBuiltInRoles returns the list of organizational roles ("Viewer", "Editor", "Admin") or "Grafana Admin" associated to a user This mock returns m.builtInRoles unless an override is provided.

func (*Mock) GetUserPermissions

func (m *Mock) GetUserPermissions(ctx context.Context, user *models.SignedInUser, opts accesscontrol.Options) ([]*accesscontrol.Permission, error)

GetUserPermissions returns user permissions. This mock return m.permissions unless an override is provided.

func (*Mock) GetUserRoles

func (m *Mock) GetUserRoles(ctx context.Context, user *models.SignedInUser) ([]*accesscontrol.RoleDTO, error)

func (*Mock) IsDisabled

func (m *Mock) IsDisabled() bool

Middleware checks if service disabled or not to switch to fallback authorization. This mock return m.disabled unless an override is provided.

func (*Mock) RegisterAttributeScopeResolver

func (m *Mock) RegisterAttributeScopeResolver(scopePrefix string, resolver accesscontrol.AttributeScopeResolveFunc)

RegisterAttributeScopeResolver allows the caller to register a scope resolver for a specific scope prefix (ex: datasources:name:)

func (*Mock) RegisterFixedRoles

func (m *Mock) RegisterFixedRoles() error

RegisterFixedRoles registers all roles declared to AccessControl This mock returns no error unless an override is provided.

func (Mock) WithBuiltInRoles

func (m Mock) WithBuiltInRoles(builtInRoles []string) *Mock

func (Mock) WithDisabled

func (m Mock) WithDisabled() *Mock

func (Mock) WithPermissions

func (m Mock) WithPermissions(permissions []*accesscontrol.Permission) *Mock

type MockPermissionsService

type MockPermissionsService struct {
	mock.Mock
}

func (*MockPermissionsService) GetPermissions

func (m *MockPermissionsService) GetPermissions(ctx context.Context, user *models.SignedInUser, resourceID string) ([]accesscontrol.ResourcePermission, error)

func (*MockPermissionsService) MapActions

func (*MockPermissionsService) SetBuiltInRolePermission

func (m *MockPermissionsService) SetBuiltInRolePermission(ctx context.Context, orgID int64, builtInRole, resourceID, permission string) (*accesscontrol.ResourcePermission, error)

func (*MockPermissionsService) SetPermissions

func (*MockPermissionsService) SetTeamPermission

func (m *MockPermissionsService) SetTeamPermission(ctx context.Context, orgID, teamID int64, resourceID, permission string) (*accesscontrol.ResourcePermission, error)

func (*MockPermissionsService) SetUserPermission

func (m *MockPermissionsService) SetUserPermission(ctx context.Context, orgID int64, user accesscontrol.User, resourceID, permission string) (*accesscontrol.ResourcePermission, error)

type PermissionsServicesMock

type PermissionsServicesMock struct {
	Teams       *MockPermissionsService
	Folders     *MockPermissionsService
	Dashboards  *MockPermissionsService
	Datasources *MockPermissionsService
}

func NewPermissionsServicesMock

func NewPermissionsServicesMock() *PermissionsServicesMock

func (PermissionsServicesMock) GetDashboardService

func (PermissionsServicesMock) GetDataSourceService

func (p PermissionsServicesMock) GetDataSourceService() accesscontrol.PermissionsService

func (PermissionsServicesMock) GetFolderService

func (PermissionsServicesMock) GetTeamService

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL