示例#1
0
        private static ValidationStatus GetFinalValidationResult(
            ICollection <TisValidationMethodResult> results,
            ValidationResultPolicy resultPolicy)
        {
            if (results.Count == 0 && resultPolicy == ValidationResultPolicy.ConsiderAll)
            {
                return(ValidationStatus.Unknown);
            }

            foreach (TisValidationMethodResult result in results)
            {
                switch ((ValidationStatus)result.Status)
                {
                case ValidationStatus.Invalid:
                    return(ValidationStatus.Invalid);

                case ValidationStatus.Unknown:
                    if (resultPolicy == ValidationResultPolicy.ConsiderAll)
                    {
                        return(ValidationStatus.Unknown);
                    }
                    break;

                case ValidationStatus.Valid:
                    break;
                }
            }

            return(ValidationStatus.Valid);
        }
示例#2
0
        private bool ShouldStopValidation(
            ValidationStatus lastValidationStatus,
            ValidationStopPolicy stopValidationPolicy,
            ValidationResultPolicy resultValidationPolicy)
        {
            if (stopValidationPolicy == ValidationStopPolicy.FirstInvalid)
            {
                if (resultValidationPolicy == ValidationResultPolicy.ConsiderAll)
                {
                    if (lastValidationStatus != ValidationStatus.Valid)
                    {
                        return(true);
                    }
                }
                else
                {
                    if (lastValidationStatus == ValidationStatus.Invalid)
                    {
                        return(true);
                    }
                }
            }

            return(false);
        }
示例#3
0
        public static ValidationStatus GetFinalValidationStatus(
            TisValidationsResult results,
            ValidationResultPolicy resultPolicy)
        {
            ValidationStatus finalValidationsStatus =
                GetFinalValidationResult(results.Values, resultPolicy);

            ((TisValidationsResult)results).SetFinalValidationsStatus(finalValidationsStatus);

            return(finalValidationsStatus);
        }