authorizationtest

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Aug 26, 2026 License: MIT Imports: 7 Imported by: 0

Documentation

Overview

Package authorizationtest provides deterministic fixtures, assertions, and conformance checks for authorization integrations.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CanonicalDecisionJSON

func CanonicalDecisionJSON(decision authorization.Decision) ([]byte, error)

func ErrorEvaluator

func ErrorEvaluator(err error) authorization.Evaluator

func FixedTime

func FixedTime() time.Time

func MustEngine

func MustEngine(
	t TestingT,
	snapshot *authorization.Snapshot,
	options ...authorization.EngineOption,
) *authorization.Engine

func NotApplicableEvaluator

func NotApplicableEvaluator() authorization.Evaluator

func RequireDecision

func RequireDecision(
	t TestingT,
	got authorization.Decision,
	err error,
	want authorization.Decision,
)

func RequireOutcome

func RequireOutcome(
	t TestingT,
	decision authorization.Decision,
	want authorization.Outcome,
)

func RunAuthorizerConformance

func RunAuthorizerConformance(t *testing.T, factory AuthorizerFactory)

Types

type RequestBuilder

type RequestBuilder struct {
	// contains filtered or unexported fields
}

func NewRequest

func NewRequest() *RequestBuilder

func (*RequestBuilder) Build

func (builder *RequestBuilder) Build() authorization.Request

func (*RequestBuilder) WithAction

func (builder *RequestBuilder) WithAction(action authorization.Action) *RequestBuilder

func (*RequestBuilder) WithAttribute

func (builder *RequestBuilder) WithAttribute(
	name authorization.AttributeName,
	value authorization.Value,
) *RequestBuilder

func (*RequestBuilder) WithEnvironmentAttribute

func (builder *RequestBuilder) WithEnvironmentAttribute(
	name authorization.AttributeName,
	value authorization.Value,
) *RequestBuilder

func (*RequestBuilder) WithGroup

func (builder *RequestBuilder) WithGroup(id authorization.SubjectID) *RequestBuilder

func (*RequestBuilder) WithResource

func (builder *RequestBuilder) WithResource(
	typeName authorization.ResourceType,
	id authorization.ResourceID,
) *RequestBuilder

func (*RequestBuilder) WithResourceAttribute

func (builder *RequestBuilder) WithResourceAttribute(
	name authorization.AttributeName,
	value authorization.Value,
) *RequestBuilder

func (*RequestBuilder) WithSubject

func (*RequestBuilder) WithSubjectAttribute

func (builder *RequestBuilder) WithSubjectAttribute(
	name authorization.AttributeName,
	value authorization.Value,
) *RequestBuilder

func (*RequestBuilder) WithTenant

func (builder *RequestBuilder) WithTenant(tenant authorization.TenantID) *RequestBuilder

func (*RequestBuilder) WithTime

func (builder *RequestBuilder) WithTime(at time.Time) *RequestBuilder

type StaticEvaluator

type StaticEvaluator struct {
	Decision authorization.Decision
	Err      error
}

func (StaticEvaluator) Evaluate

type TestingT

type TestingT interface {
	Helper()
	Fatalf(string, ...any)
}

Jump to

Keyboard shortcuts

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