Table of Contents

Class GovernanceDecisionPolicyContract<TContext>

Namespace
AsiBackbone.Testing.Contracts
Assembly
AsiBackbone.Testing.dll

Reusable contract fixture for IGovernanceDecisionPolicy<TContext> implementations.

public abstract class GovernanceDecisionPolicyContract<TContext> where TContext : IGovernanceEvaluationContext

Type Parameters

TContext

The framework-neutral evaluation context type.

Inheritance
GovernanceDecisionPolicyContract<TContext>
Inherited Members

Methods

CreateComposedDecision(TContext)

Creates the composed decision supplied to the decision-policy implementation under test.

protected virtual GovernanceDecision CreateComposedDecision(TContext context)

Parameters

context TContext

The evaluation context created for the contract run.

Returns

GovernanceDecision

The composed decision supplied to the decision policy.

CreateConstraintResults()

Creates the constraint-result collection supplied to the decision-policy implementation under test.

protected virtual IReadOnlyList<ConstraintEvaluationResult> CreateConstraintResults()

Returns

IReadOnlyList<ConstraintEvaluationResult>

The constraint-result collection supplied to the decision policy.

CreateDecisionPolicy()

Creates the decision-policy implementation under test.

protected abstract IGovernanceDecisionPolicy<TContext> CreateDecisionPolicy()

Returns

IGovernanceDecisionPolicy<TContext>

The decision-policy implementation to validate.

CreateEvaluationContext()

Creates the context supplied to the decision-policy implementation under test.

protected abstract TContext CreateEvaluationContext()

Returns

TContext

The evaluation context to validate with.

VerifyDecisionPolicyReturnsSafeDecisionAsync(CancellationToken)

Verifies that the decision policy returns a safe, non-null decision and preserves supplied decision telemetry.

public ValueTask<GovernanceDecision> VerifyDecisionPolicyReturnsSafeDecisionAsync(CancellationToken cancellationToken = default)

Parameters

cancellationToken CancellationToken

A token that can cancel the contract validation.

Returns

ValueTask<GovernanceDecision>

The verified governance decision.