/// <summary> /// <para> /// Internal implementation of <see cref="Evaluate" />. /// </para> /// <para> /// Any exceptions thrown by this method are interpreted as evaluation failures. /// </para> /// </summary> /// <returns>The specification result</returns> protected virtual SpecificationResult EvaluateImpl() { if (Verify()) { return(SpecificationResult.CreateSuccess()); } else { return(SpecificationResult.CreateCriteriaFailure(actualValue)); } }
/// <inheritdoc /> protected override SpecificationResult EvaluateImpl() { if (Verify()) { return(SpecificationResult.CreateSuccess()); } else { return(SpecificationResult.CreateComparisonFailure(expectedValue, ActualValue)); } }
/// <inheritdoc /> public SpecificationResult Evaluate() { try { return(EvaluateImpl()); } catch (Exception ex) { return(SpecificationResult.CreateExceptionFailure(ex)); } }
SpecificationResult ISpecificationConstraint.Evaluate() { SpecificationResult result = constraint != null ? constraint.Evaluate() : SpecificationResult.CreateFailure("No constraint was specified for the actual value given to the specification constraint builder."); if (stackTrace != null) { result.StackTrace = stackTrace; } return(result); }