Skip to content

testing

Classes

TestRbacModule

Defined in: src/testing/test-rbac.module.ts:14

Constructors

Constructor
ts
new TestRbacModule(): TestRbacModule;
Returns

TestRbacModule

Methods

forRoot()
ts
static forRoot(options?): DynamicModule;

Defined in: src/testing/test-rbac.module.ts:15

Parameters
ParameterType
optionsTestRbacModuleOptions
Returns

DynamicModule

Interfaces

RbacScenario

Defined in: src/testing/rbac-scenario.ts:18

Properties

rbac
ts
rbac: RbacService;

Defined in: src/testing/rbac-scenario.ts:20

storage
ts
storage: InMemoryRbacStorage;

Defined in: src/testing/rbac-scenario.ts:19


RbacScenarioInput

Defined in: src/testing/rbac-scenario.ts:12

Properties

bindings?
ts
optional bindings?: AssignRoleInput[];

Defined in: src/testing/rbac-scenario.ts:14

options?
ts
optional options?: Omit<RbacModuleOptions, "storage">;

Defined in: src/testing/rbac-scenario.ts:15

roles?
ts
optional roles?: CreateRoleInput[];

Defined in: src/testing/rbac-scenario.ts:13


TestRbacModuleOptions

Defined in: src/testing/test-rbac.module.ts:6

Extends

Properties

auditLogger?
ts
optional auditLogger?: RbacAuditLogger;

Defined in: src/interfaces/module-options.ts:44

Inherited from

RbacModuleOptions.auditLogger

changePublisher?
ts
optional changePublisher?: RbacPolicyChangePublisher;

Defined in: src/interfaces/module-options.ts:55

Inherited from

RbacModuleOptions.changePublisher

logAllowedDecisions?
ts
optional logAllowedDecisions?: boolean;

Defined in: src/interfaces/module-options.ts:53

Inherited from

RbacModuleOptions.logAllowedDecisions

now?
ts
optional now?: () => Date;

Defined in: src/interfaces/module-options.ts:56

Returns

Date

Inherited from

RbacModuleOptions.now

requireMetadata?
ts
optional requireMetadata?: boolean;

Defined in: src/interfaces/module-options.ts:45

Inherited from

RbacModuleOptions.requireMetadata

storage?
ts
optional storage?: RbacStorage;

Defined in: src/testing/test-rbac.module.ts:8

storageErrors?
ts
optional storageErrors?: "deny" | "throw";

Defined in: src/interfaces/module-options.ts:52

Inherited from

RbacModuleOptions.storageErrors

subject?
ts
optional subject?: RbacSubject;

Defined in: src/testing/test-rbac.module.ts:9

subjectResolver?
ts
optional subjectResolver?: RbacSubjectResolver;

Defined in: src/testing/test-rbac.module.ts:10

tenant?
ts
optional tenant?: {
  allowGlobalRolesInTenant?: boolean;
  requiredByDefault?: boolean;
};

Defined in: src/interfaces/module-options.ts:46

allowGlobalRolesInTenant?
ts
optional allowGlobalRolesInTenant?: boolean;
requiredByDefault?
ts
optional requiredByDefault?: boolean;
Inherited from

RbacModuleOptions.tenant

tenantResolver?
ts
optional tenantResolver?: RbacTenantResolver;

Defined in: src/interfaces/module-options.ts:43

Inherited from

RbacModuleOptions.tenantResolver

writeValidation?
ts
optional writeValidation?: RbacWriteValidationOptions;

Defined in: src/interfaces/module-options.ts:54

Inherited from

RbacModuleOptions.writeValidation

Type Aliases

RbacMatrixCase

ts
type RbacMatrixCase = RbacCanInput & {
  allowed: boolean;
  label?: string;
  reason?: RbacDecisionReason;
};

Defined in: src/testing/rbac-scenario.ts:23

Type Declaration

NameTypeDefined in
allowedbooleansrc/testing/rbac-scenario.ts:24
label?stringsrc/testing/rbac-scenario.ts:26
reason?RbacDecisionReasonsrc/testing/rbac-scenario.ts:25

Variables

apiKey

ts
const apiKey: (id, tenantId?) => RbacSubject = rbacApiKey;

Defined in: src/testing/subjects.ts:22

Parameters

ParameterType
idstring
tenantId?string | null

Returns

RbacSubject


serviceAccount

ts
const serviceAccount: (id, tenantId?) => RbacSubject = rbacServiceAccount;

Defined in: src/testing/subjects.ts:23

Parameters

ParameterType
idstring
tenantId?string | null

Returns

RbacSubject


user

ts
const user: (id, tenantId?) => RbacSubject = rbacUser;

Defined in: src/testing/subjects.ts:21

Parameters

ParameterType
idstring
tenantId?string | null

Returns

RbacSubject

Functions

createRbacScenario()

ts
function createRbacScenario(input?): Promise<RbacScenario>;

Defined in: src/testing/rbac-scenario.ts:50

Parameters

ParameterType
inputRbacScenarioInput

Returns

Promise<RbacScenario>


expectAllowed()

ts
function expectAllowed(rbac, input): Promise<RbacDecision>;

Defined in: src/testing/expect-rbac-decision.ts:4

Parameters

ParameterType
rbacRbacService
inputRbacCanInput

Returns

Promise<RbacDecision>


expectDenied()

ts
function expectDenied(
   rbac,
   input,
reason?): Promise<RbacDecision>;

Defined in: src/testing/expect-rbac-decision.ts:16

Parameters

ParameterType
rbacRbacService
inputRbacCanInput
reason?RbacDecisionReason

Returns

Promise<RbacDecision>


expectDeniedReason()

ts
function expectDeniedReason(
   rbac,
   input,
reason): Promise<RbacDecision>;

Defined in: src/testing/expect-rbac-decision.ts:32

Parameters

ParameterType
rbacRbacService
inputRbacCanInput
reasonRbacDecisionReason

Returns

Promise<RbacDecision>


expectRbacMatrix()

ts
function expectRbacMatrix(rbac, cases): Promise<RbacDecision[]>;

Defined in: src/testing/rbac-scenario.ts:64

Parameters

ParameterType
rbacRbacService
casesRbacMatrixCase[]

Returns

Promise<RbacDecision[]>


rbacApiKey()

ts
function rbacApiKey(id, tenantId?): RbacSubject;

Defined in: src/testing/subjects.ts:9

Parameters

ParameterType
idstring
tenantId?string | null

Returns

RbacSubject


rbacServiceAccount()

ts
function rbacServiceAccount(id, tenantId?): RbacSubject;

Defined in: src/testing/subjects.ts:15

Parameters

ParameterType
idstring
tenantId?string | null

Returns

RbacSubject


rbacUser()

ts
function rbacUser(id, tenantId?): RbacSubject;

Defined in: src/testing/subjects.ts:3

Parameters

ParameterType
idstring
tenantId?string | null

Returns

RbacSubject

Released under the MIT License.