/// <summary> /// Generates and adds an A11yCriteria object. /// </summary> /// <param name="ruleResult"></param> /// <param name="standardName"> The key that is used to store that particular standard </param> /// <returns></returns> internal static A11yCriteria GenerateAndAddA11yCriteria(RuleResult ruleResult, string criteriaName) { A11yCriteria newA11yCriteria = new A11yCriteria(criteriaName, new Message(criteriaName, null, null, null, null, null), null, null, ruleResult.HelpUrl?.Url); A11yCriteriaList.Add(criteriaName, newA11yCriteria); return(newA11yCriteria); }
/// <summary> /// Fetches or adds a standard if doesn't already exist. Standard name is transformed from "[A11yCriteria-4.1.2]" to "A11yCriteria 4.1.2" /// </summary> /// <param name="ruleResult"> RuleResult </param> /// <returns> Array of transformed A11yCriteria keys </returns> internal static string[] FetchOrAddStandards(RuleResult ruleResult) { A11yCriteria standardName = null; string standardKey = ruleResult.Source?.Replace("[", "").Replace("]", "").Replace("-", " "); if (!A11yCriteriaList.TryGetValue(standardKey, out standardName)) { standardName = GenerateAndAddA11yCriteria(ruleResult, standardKey); } return(new string[] { standardName.standardKey ?? String.Empty }); }