public void AnalysisConfGen_FileProperties() { // File properties should not be copied to the file. // Instead, a pointer to the file should be created. // Arrange string analysisDir = TestUtils.CreateTestSpecificFolder(this.TestContext); TestLogger logger = new TestLogger(); // The set of file properties to supply AnalysisProperties fileProperties = new AnalysisProperties { new Property() { Id = SonarProperties.HostUrl, Value = "http://myserver" }, new Property() { Id = "file.only", Value = "file value" } }; string settingsFilePath = Path.Combine(analysisDir, "settings.txt"); fileProperties.Save(settingsFilePath); FilePropertyProvider fileProvider = FilePropertyProvider.Load(settingsFilePath); ProcessedArgs args = new ProcessedArgs("key", "name", "version", "organization", false, EmptyPropertyProvider.Instance, fileProvider, EmptyPropertyProvider.Instance); TeamBuildSettings settings = TeamBuildSettings.CreateNonTeamBuildSettingsForTesting(analysisDir); Directory.CreateDirectory(settings.SonarConfigDirectory); // config directory needs to exist // Act AnalysisConfig actualConfig = AnalysisConfigGenerator.GenerateFile(args, settings, new Dictionary <string, string>(), new List <AnalyzerSettings>(), logger); // Assert AssertConfigFileExists(actualConfig); logger.AssertErrorsLogged(0); logger.AssertWarningsLogged(0); string actualSettingsFilePath = actualConfig.GetSettingsFilePath(); Assert.AreEqual(settingsFilePath, actualSettingsFilePath, "Unexpected settings file path"); // Check the file setting value do not appear in the config file AssertFileDoesNotContainText(actualConfig.FileName, "file.only"); Assert.AreEqual(settings.SourcesDirectory, actualConfig.SourcesDirectory); Assert.AreEqual(settings.SonarScannerWorkingDirectory, actualConfig.SonarScannerWorkingDirectory); AssertExpectedLocalSetting(SonarProperties.Organization, "organization", actualConfig); }
public void ConfigExt_GetAnalysisSettings_FileSettings() { // Check that file settings are always retrieved by GetAnalysisSettings // and that the file name config property is set and retrieved correctly // 0. Setup var testDir = TestUtils.CreateTestSpecificFolder(TestContext); var config = new AnalysisConfig(); // File settings var fileSettings = new AnalysisProperties { new Property() { Id = "file.1", Value = "file.value.1" }, new Property() { Id = "file.2", Value = "file.value.2" } }; var settingsFilePath = Path.Combine(testDir, "settings.txt"); fileSettings.Save(settingsFilePath); // 1. Get path when not set -> null Assert.IsNull(config.GetSettingsFilePath(), "Expecting the settings file path to be null"); // 2. Set and get config.SetSettingsFilePath(settingsFilePath); Assert.AreEqual(settingsFilePath, config.GetSettingsFilePath(), "Unexpected settings file path value returned"); // 3. Check file properties are retrieved var provider = config.GetAnalysisSettings(false); provider.AssertExpectedPropertyCount(2); provider.AssertExpectedPropertyValue("file.1", "file.value.1"); provider.AssertExpectedPropertyValue("file.2", "file.value.2"); }
public void ConfigExt_GetAnalysisSettings_FileSettings() { // Check that file settings are always retrieved by GetAnalysisSettings // and that the file name config property is set and retrieved correctly // 0. Setup string testDir = TestUtils.CreateTestSpecificFolder(this.TestContext); AnalysisConfig config = new AnalysisConfig(); // File settings AnalysisProperties fileSettings = new AnalysisProperties(); fileSettings.Add(new Property() { Id = "file.1", Value = "file.value.1" }); fileSettings.Add(new Property() { Id = "file.2", Value = "file.value.2" }); string settingsFilePath = Path.Combine(testDir, "settings.txt"); fileSettings.Save(settingsFilePath); // 1. Get path when not set -> null Assert.IsNull(config.GetSettingsFilePath(), "Expecting the settings file path to be null"); // 2. Set and get config.SetSettingsFilePath(settingsFilePath); Assert.AreEqual(settingsFilePath, config.GetSettingsFilePath(), "Unexpected settings file path value returned"); // 3. Check file properties are retrieved IAnalysisPropertyProvider provider = config.GetAnalysisSettings(false); provider.AssertExpectedPropertyCount(2); provider.AssertExpectedPropertyValue("file.1", "file.value.1"); provider.AssertExpectedPropertyValue("file.2", "file.value.2"); }