public IEnumerable <ErrorReporting> Verify(INumberResults numberResults)
        {
            var initialSourceNumbers = string.Empty;
            var initialTargetNumbers = string.Empty;

            foreach (var item in numberResults.InitialSourceNumbers)
            {
                initialSourceNumbers += $"{item} ";
            }
            foreach (var item in numberResults.InitialTargetNumbers)
            {
                initialTargetNumbers += $"{item} ";
            }
            yield return(new ErrorReporting
            {
                ErrorLevel = GetNumbersErrorLevel(numberResults),
                ErrorMessage = ErrorMessage,
                ExtendedErrorMessage = ExtendedErrorMessageProcessor.GenerateMessage(numberResults, ErrorMessage),
                SourceNumberIssues = SourceMessageProcessor.GenerateMessage(numberResults, ErrorMessage),
                TargetNumberIssues = TargetMessageProcessor.GenerateMessage(numberResults, ErrorMessage),
                InitialSourceNumber = initialSourceNumbers,
                InitialTargetNumber = initialTargetNumbers,
                IsHindiVerification = numberResults.IsHindiVerification
            });
        }
        public string GenerateMessage(INumberResults numberResult, string errorMessage)
        {
            char[] charsToRemove = { ' ', ',' };
            var    result        = new StringBuilder();

            result.AppendFormat($"{errorMessage} ");

            if (numberResult.SourceNumbers.Count > 0)
            {
                result.AppendFormat("Source issue(s): ");
                foreach (var source in numberResult.SourceNumbers)
                {
                    result.AppendFormat($"{source}, ");
                }
                // remove the last 2 chars from the last word attached to string, which represents the ',' and empty space
                result = result.Remove(result.Length - 2, 2);
                result.AppendFormat("; ");
            }
            if (numberResult.TargetNumbers.Count > 0)
            {
                result.AppendFormat("Target issue(s): ");
                foreach (var target in numberResult.TargetNumbers)
                {
                    result.AppendFormat($"{target}, ");
                }
            }
            return(result.ToString().TrimEnd(charsToRemove));
        }
Пример #3
0
 public string GenerateMessage(INumberResults numberResult, string errorMessage)
 {
     if (this.Specification.IsSatisfiedBy(numberResult))
     {
         return(TruthProcessor.GenerateMessage(numberResult, errorMessage));
     }
     return(string.Empty);
 }
Пример #4
0
 public IEnumerable <ErrorReporting> Verify(INumberResults numberResults)
 {
     if (this.Specification.IsSatisfiedBy(numberResults))
     {
         return(TruthProcessor.Verify(numberResults));
     }
     return(Enumerable.Empty <ErrorReporting>());
 }
        public string GenerateMessage(INumberResults numberResult)
        {
            var result = new StringBuilder();

            foreach (var sourceNumber in numberResult.TargetNumbers)
            {
                result.AppendLine(sourceNumber);
            }
            return(result.ToString());
        }
Пример #6
0
 public IEnumerable <ErrorReporting> Verify(INumberResults numberResults)
 {
     yield return(new ErrorReporting
     {
         ErrorLevel = GetNumbersErrorLevel(numberResults),
         ErrorMessage = ErrorMessage,
         ExtendedErrorMessage = ExtendedErrorMessageProcessor.GenerateMessage(numberResults),
         SourceNumberIssues = SourceMessageProcessor.GenerateMessage(numberResults),
         TargetNumberIssues = TargetMessageProcessor.GenerateMessage(numberResults)
     });
 }
        private ErrorLevel GetNumbersErrorLevel(INumberResults numberResults)
        {
            switch (numberResults.Settings.RemovedNumbersErrorType)
            {
            case "Error":
                return(ErrorLevel.Error);

            case "Warning":
                return(ErrorLevel.Warning);

            default:
                return(ErrorLevel.Note);
            }
        }
 public bool IsSatisfiedBy(INumberResults numberResults)
 {
     return(numberResults.Settings.ReportModifiedAlphanumerics);
 }
 public bool IsSatisfiedBy(INumberResults numberResults)
 {
     return(numberResults.Settings.ReportExtendedMessages);
 }
 public bool IsSatisfiedBy(INumberResults numberResults)
 {
     return(numberResults.SourceNumbers.Count > numberResults.TargetNumbers.Count);
 }
Пример #11
0
 public bool IsSatisfiedBy(INumberResults numberResults)
 {
     return(numberResults.Settings.ReportAddedNumbers);
 }
 public bool IsSatisfiedBy(INumberResults numberResults)
 {
     return(this.Specifications.Any(s => s.IsSatisfiedBy(numberResults)));
 }
Пример #13
0
 public IEnumerable <ErrorReporting> Verify(INumberResults numberResults)
 {
     return(from n in this.Nodes
            from r in n.Verify(numberResults)
            select r);
 }