private SonarQubeRule ToSonarQubeRule(RuleResponse response, IEnumerable <QualityProfileResponse> activeQualityProfiles) { var isActive = activeQualityProfiles.Any(); SonarQubeIssueSeverity severity; Dictionary <string, string> parameters; if (isActive) { var activeQP = activeQualityProfiles.First(); severity = SonarQubeIssueSeverityConverter.Convert(activeQP.Severity); // Optimisation: avoid creating objects if there are no parameters parameters = activeQP.Parameters.Length > 0 ? activeQP.Parameters.ToDictionary(p => p.Key, p => p.Value) : null; } else { severity = SonarQubeIssueSeverity.Unknown; parameters = null; } var issueType = SonarQubeIssueTypeConverter.Convert(response.Type); return(new SonarQubeRule(GetRuleKey(response.Key), response.RepositoryKey, isActive, severity, parameters, issueType)); }
public void Convert(string inputData, SonarQubeIssueType expectedResult) { SonarQubeIssueTypeConverter.Convert(inputData).Should().Be(expectedResult); }