public TestEnvironmentBuilder(SonarQubeQualityProfile profile, Language language, string projectName = "any", string serverUrl = "http://any") { this.profile = profile; this.language = language; this.projectName = projectName; this.serverUrl = serverUrl; Logger = new TestLogger(); SonarLintConfigurationResponse = new SonarLintConfiguration(); PropertiesResponse = new List <SonarQubeProperty>(); }
public async Task GetConfig_ReturnsCorrectAdditionalFile() { var expectedConfiguration = new SonarLintConfiguration { Rules = new List <SonarLintRule> { new SonarLintRule { Key = "test", Parameters = new List <SonarLintKeyValuePair> { new SonarLintKeyValuePair { Key = "ruleid", Value = "value" } } } } }; var builder = new TestEnvironmentBuilder(validQualityProfile, Language.VBNET) { ActiveRulesResponse = validRules, InactiveRulesResponse = emptyRules, PropertiesResponse = anyProperties, NuGetBindingOperationResponse = true, RuleSetGeneratorResponse = validRuleSet, SonarLintConfigurationResponse = expectedConfiguration }; var testSubject = builder.CreateTestSubject(); var expectedAdditionalFilePath = builder.BindingConfiguration.BuildPathUnderConfigDirectory() + "\\VB\\SonarLint.xml"; var response = await testSubject.GetConfigurationAsync(validQualityProfile, Language.VBNET, builder.BindingConfiguration, CancellationToken.None); (response as ICSharpVBBindingConfig).AdditionalFile.Path.Should().Be(expectedAdditionalFilePath); (response as ICSharpVBBindingConfig).AdditionalFile.Content.Should().Be(expectedConfiguration); }