private void GenerateException()

in src/TestFramework/VSTS/Checking/DefaultChecker.cs [287:327]


        private void GenerateException(CheckResult checkResult, string message, params object[] parameters)
        {
            if (checkResult != CheckResult.Succeeded)
            {
                bool isExceptionRequired = true;
                if (!string.IsNullOrEmpty(exceptionFilter))
                {
                    Regex regex = new Regex(exceptionFilter);
                    if (regex.IsMatch(message))
                    {
                        isExceptionRequired = false;
                    }
                }

                /************************ Test Case Pass/Fail Configurations **************************
                 * If the current requirement is in the exceptionalRequirements list                  *
                 * do not generate exception but log it in the log file                               *
                 **************************************************************************************/
                if (null != parameters && parameters.Length == 2)
                {
                    //parameters[0] is reqIdFlag, arameters[1] is reqID
                    if (exceptionalRequirements.Contains(parameters[1].ToString()))
                    {
                        isExceptionRequired = false;
                        testSite.Log.Add(LogEntryKind.ExceptionalRequirement, message.TrimEnd('.'));
                    }
                }

                if (isExceptionRequired)
                {
                    if (checkResult == CheckResult.Failed)
                    {
                        asyncErrorProcessor.ReportAsyncException(CreateFailException(message));
                    }
                    else if (checkResult == CheckResult.Inconclusive)
                    {
                        asyncErrorProcessor.ReportAsyncException(CreateInconclusiveException(message));
                    }
                }
            }
        }