testutil

package
v0.1.3 Latest Latest
Warning

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

Go to latest
Published: Apr 7, 2026 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ContextWithIdentity

func ContextWithIdentity(userID string, roles []string) context.Context

ContextWithIdentity creates a context with an auth.Identity set.

func DurationPtr

func DurationPtr(d time.Duration) *time.Duration

DurationPtr returns a pointer to the given time.Duration.

func IntPtr

func IntPtr(i int) *int

IntPtr returns a pointer to the given int.

func NewApproval

func NewApproval(overrides ...func(*model.Approval)) *model.Approval

NewApproval creates a model.Approval with sensible defaults and optional overrides.

func NewAuditLog

func NewAuditLog(overrides ...func(*model.AuditLog)) *model.AuditLog

NewAuditLog creates a model.AuditLog with sensible defaults and optional overrides.

func NewPolicy

func NewPolicy(overrides ...func(*model.Policy)) *model.Policy

NewPolicy creates a model.Policy with sensible defaults and optional overrides.

func NewRequest

func NewRequest(overrides ...func(*model.Request)) *model.Request

NewRequest creates a model.Request with sensible defaults and optional overrides.

func NewWebhook

func NewWebhook(overrides ...func(*model.Webhook)) *model.Webhook

NewWebhook creates a model.Webhook with sensible defaults and optional overrides.

func StringPtr

func StringPtr(s string) *string

StringPtr returns a pointer to the given string.

Types

type MockApprovalStore

type MockApprovalStore struct {
	CreateFunc                  func(ctx context.Context, approval *model.Approval) error
	ListByRequestIDFunc         func(ctx context.Context, requestID uuid.UUID) ([]model.Approval, error)
	CountByDecisionAndStageFunc func(ctx context.Context, requestID uuid.UUID, decision model.Decision, stageIndex int) (int, error)
	ExistsByCheckerAndStageFunc func(ctx context.Context, requestID uuid.UUID, checkerID string, stageIndex int) (bool, error)
}

MockApprovalStore implements store.ApprovalStore with configurable function fields.

func (*MockApprovalStore) CountByDecisionAndStage

func (m *MockApprovalStore) CountByDecisionAndStage(ctx context.Context, requestID uuid.UUID, decision model.Decision, stageIndex int) (int, error)

func (*MockApprovalStore) Create

func (m *MockApprovalStore) Create(ctx context.Context, approval *model.Approval) error

func (*MockApprovalStore) ExistsByCheckerAndStage

func (m *MockApprovalStore) ExistsByCheckerAndStage(ctx context.Context, requestID uuid.UUID, checkerID string, stageIndex int) (bool, error)

func (*MockApprovalStore) ListByRequestID

func (m *MockApprovalStore) ListByRequestID(ctx context.Context, requestID uuid.UUID) ([]model.Approval, error)

type MockAuditStore

type MockAuditStore struct {
	CreateFunc          func(ctx context.Context, log *model.AuditLog) error
	ListByRequestIDFunc func(ctx context.Context, requestID uuid.UUID) ([]model.AuditLog, error)
}

MockAuditStore implements store.AuditStore with configurable function fields.

func (*MockAuditStore) Create

func (m *MockAuditStore) Create(ctx context.Context, log *model.AuditLog) error

func (*MockAuditStore) ListByRequestID

func (m *MockAuditStore) ListByRequestID(ctx context.Context, requestID uuid.UUID) ([]model.AuditLog, error)

type MockAuthProvider

type MockAuthProvider struct {
	AuthenticateFunc func(r *http.Request) (*auth.Identity, error)
}

MockAuthProvider implements auth.Provider with configurable function fields.

func (*MockAuthProvider) Authenticate

func (m *MockAuthProvider) Authenticate(r *http.Request) (*auth.Identity, error)

type MockOperatorStore

type MockOperatorStore struct {
	CreateFunc        func(ctx context.Context, operator *model.Operator) error
	GetByIDFunc       func(ctx context.Context, id uuid.UUID) (*model.Operator, error)
	GetByUsernameFunc func(ctx context.Context, username string) (*model.Operator, error)
	ListFunc          func(ctx context.Context, filter store.OperatorFilter) ([]model.Operator, int, error)
	UpdateFunc        func(ctx context.Context, operator *model.Operator) error
	DeleteFunc        func(ctx context.Context, id uuid.UUID) error
	CountFunc         func(ctx context.Context) (int, error)
}

MockOperatorStore implements store.OperatorStore with configurable function fields.

func (*MockOperatorStore) Count

func (m *MockOperatorStore) Count(ctx context.Context) (int, error)

func (*MockOperatorStore) Create

func (m *MockOperatorStore) Create(ctx context.Context, operator *model.Operator) error

func (*MockOperatorStore) Delete

func (m *MockOperatorStore) Delete(ctx context.Context, id uuid.UUID) error

func (*MockOperatorStore) GetByID

func (m *MockOperatorStore) GetByID(ctx context.Context, id uuid.UUID) (*model.Operator, error)

func (*MockOperatorStore) GetByUsername

func (m *MockOperatorStore) GetByUsername(ctx context.Context, username string) (*model.Operator, error)

func (*MockOperatorStore) List

func (*MockOperatorStore) Update

func (m *MockOperatorStore) Update(ctx context.Context, operator *model.Operator) error

type MockOutboxStore

type MockOutboxStore struct {
	CreateBatchFunc              func(ctx context.Context, entries []model.OutboxEntry) error
	ClaimBatchFunc               func(ctx context.Context, limit int) ([]model.OutboxEntry, error)
	MarkDeliveredFunc            func(ctx context.Context, id uuid.UUID) error
	MarkRetryFunc                func(ctx context.Context, id uuid.UUID, attempts int, lastError string, nextRetryAt time.Time) error
	MarkFailedFunc               func(ctx context.Context, id uuid.UUID, attempts int, lastError string) error
	DeleteDeliveredFunc          func(ctx context.Context, olderThan time.Time) (int64, error)
	ListFunc                     func(ctx context.Context, filter store.OutboxFilter) ([]model.OutboxEntry, int, error)
	CountByStatusFunc            func(ctx context.Context, tenantID *string, since *time.Time) (map[string]int, error)
	GetByIDFunc                  func(ctx context.Context, id uuid.UUID) (*model.OutboxEntry, error)
	ResetForRetryFunc            func(ctx context.Context, id uuid.UUID) error
	ResetAllFailedForRequestFunc func(ctx context.Context, requestID uuid.UUID) (int64, error)
	ResetAllFailedFunc           func(ctx context.Context, tenantID *string) (int64, error)
}

MockOutboxStore implements store.OutboxStore with configurable function fields.

func (*MockOutboxStore) ClaimBatch

func (m *MockOutboxStore) ClaimBatch(ctx context.Context, limit int) ([]model.OutboxEntry, error)

func (*MockOutboxStore) CountByStatus

func (m *MockOutboxStore) CountByStatus(ctx context.Context, tenantID *string, since *time.Time) (map[string]int, error)

func (*MockOutboxStore) CreateBatch

func (m *MockOutboxStore) CreateBatch(ctx context.Context, entries []model.OutboxEntry) error

func (*MockOutboxStore) DeleteDelivered

func (m *MockOutboxStore) DeleteDelivered(ctx context.Context, olderThan time.Time) (int64, error)

func (*MockOutboxStore) GetByID

func (m *MockOutboxStore) GetByID(ctx context.Context, id uuid.UUID) (*model.OutboxEntry, error)

func (*MockOutboxStore) List

func (*MockOutboxStore) MarkDelivered

func (m *MockOutboxStore) MarkDelivered(ctx context.Context, id uuid.UUID) error

func (*MockOutboxStore) MarkFailed

func (m *MockOutboxStore) MarkFailed(ctx context.Context, id uuid.UUID, attempts int, lastError string) error

func (*MockOutboxStore) MarkRetry

func (m *MockOutboxStore) MarkRetry(ctx context.Context, id uuid.UUID, attempts int, lastError string, nextRetryAt time.Time) error

func (*MockOutboxStore) ResetAllFailed added in v0.1.2

func (m *MockOutboxStore) ResetAllFailed(ctx context.Context, tenantID *string) (int64, error)

func (*MockOutboxStore) ResetAllFailedForRequest

func (m *MockOutboxStore) ResetAllFailedForRequest(ctx context.Context, requestID uuid.UUID) (int64, error)

func (*MockOutboxStore) ResetForRetry

func (m *MockOutboxStore) ResetForRetry(ctx context.Context, id uuid.UUID) error

type MockPolicyStore

type MockPolicyStore struct {
	CreateFunc               func(ctx context.Context, policy *model.Policy) error
	GetByIDFunc              func(ctx context.Context, id uuid.UUID) (*model.Policy, error)
	GetByRequestTypeFunc     func(ctx context.Context, requestType string) (*model.Policy, error)
	ListFunc                 func(ctx context.Context, filter store.PolicyFilter) ([]model.Policy, int, error)
	UpdateFunc               func(ctx context.Context, policy *model.Policy) error
	DeleteFunc               func(ctx context.Context, id uuid.UUID) error
	DistinctRequestTypesFunc func(ctx context.Context) ([]string, error)
}

MockPolicyStore implements store.PolicyStore with configurable function fields.

func (*MockPolicyStore) Create

func (m *MockPolicyStore) Create(ctx context.Context, policy *model.Policy) error

func (*MockPolicyStore) Delete

func (m *MockPolicyStore) Delete(ctx context.Context, id uuid.UUID) error

func (*MockPolicyStore) DistinctRequestTypes added in v0.1.2

func (m *MockPolicyStore) DistinctRequestTypes(ctx context.Context) ([]string, error)

func (*MockPolicyStore) GetByID

func (m *MockPolicyStore) GetByID(ctx context.Context, id uuid.UUID) (*model.Policy, error)

func (*MockPolicyStore) GetByRequestType

func (m *MockPolicyStore) GetByRequestType(ctx context.Context, requestType string) (*model.Policy, error)

func (*MockPolicyStore) List

func (m *MockPolicyStore) List(ctx context.Context, filter store.PolicyFilter) ([]model.Policy, int, error)

func (*MockPolicyStore) Update

func (m *MockPolicyStore) Update(ctx context.Context, policy *model.Policy) error

type MockRequestStore

type MockRequestStore struct {
	CreateFunc                   func(ctx context.Context, req *model.Request) error
	GetByIDFunc                  func(ctx context.Context, id uuid.UUID) (*model.Request, error)
	GetByIDForUpdateFunc         func(ctx context.Context, id uuid.UUID) (*model.Request, error)
	GetByIdempotencyKeyFunc      func(ctx context.Context, key string) (*model.Request, error)
	FindPendingByFingerprintFunc func(ctx context.Context, reqType string, fingerprint string) (*model.Request, error)
	ListFunc                     func(ctx context.Context, filter store.RequestFilter) ([]model.Request, int, error)
	UpdateStatusFunc             func(ctx context.Context, id uuid.UUID, status model.RequestStatus) error
	UpdateStageAndStatusFunc     func(ctx context.Context, id uuid.UUID, stage int, status model.RequestStatus) error
	ListExpiredFunc              func(ctx context.Context) ([]model.Request, error)
}

MockRequestStore implements store.RequestStore with configurable function fields.

func (*MockRequestStore) Create

func (m *MockRequestStore) Create(ctx context.Context, req *model.Request) error

func (*MockRequestStore) FindPendingByFingerprint

func (m *MockRequestStore) FindPendingByFingerprint(ctx context.Context, reqType string, fingerprint string) (*model.Request, error)

func (*MockRequestStore) GetByID

func (m *MockRequestStore) GetByID(ctx context.Context, id uuid.UUID) (*model.Request, error)

func (*MockRequestStore) GetByIDForUpdate

func (m *MockRequestStore) GetByIDForUpdate(ctx context.Context, id uuid.UUID) (*model.Request, error)

func (*MockRequestStore) GetByIdempotencyKey

func (m *MockRequestStore) GetByIdempotencyKey(ctx context.Context, key string) (*model.Request, error)

func (*MockRequestStore) List

func (*MockRequestStore) ListExpired

func (m *MockRequestStore) ListExpired(ctx context.Context) ([]model.Request, error)

func (*MockRequestStore) UpdateStageAndStatus

func (m *MockRequestStore) UpdateStageAndStatus(ctx context.Context, id uuid.UUID, stage int, status model.RequestStatus) error

func (*MockRequestStore) UpdateStatus

func (m *MockRequestStore) UpdateStatus(ctx context.Context, id uuid.UUID, status model.RequestStatus) error

type MockWebhookStore

type MockWebhookStore struct {
	CreateFunc             func(ctx context.Context, webhook *model.Webhook) error
	GetByIDFunc            func(ctx context.Context, id uuid.UUID) (*model.Webhook, error)
	ListFunc               func(ctx context.Context, filter store.WebhookFilter) ([]model.Webhook, int, error)
	ListByEventAndTypeFunc func(ctx context.Context, event string, requestType string) ([]model.Webhook, error)
	DeleteFunc             func(ctx context.Context, id uuid.UUID) error
}

MockWebhookStore implements store.WebhookStore with configurable function fields.

func (*MockWebhookStore) Create

func (m *MockWebhookStore) Create(ctx context.Context, webhook *model.Webhook) error

func (*MockWebhookStore) Delete

func (m *MockWebhookStore) Delete(ctx context.Context, id uuid.UUID) error

func (*MockWebhookStore) GetByID

func (m *MockWebhookStore) GetByID(ctx context.Context, id uuid.UUID) (*model.Webhook, error)

func (*MockWebhookStore) List

func (*MockWebhookStore) ListByEventAndType

func (m *MockWebhookStore) ListByEventAndType(ctx context.Context, event string, requestType string) ([]model.Webhook, error)

Jump to

Keyboard shortcuts

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