/// <summary>
        /// Populate all configurations
        /// </summary>
        private static void PopulateConfigurations()
        {
            var defaultPaths       = FixedConfigSettingsProvider.CreateDefaultSettingsProvider();
            var configPathProvider = new FixedConfigSettingsProvider(
                CommandLineSettings.ConfigFolder ?? defaultPaths.ConfigurationFolderPath,
                CommandLineSettings.UserDataFolder ?? defaultPaths.UserDataFolderPath
                );

            FileHelpers.CreateFolder(configPathProvider.UserDataFolderPath);
            FileHelpers.CreateFolder(configPathProvider.ConfigurationFolderPath);

            // Populate the App Config and Test Config
            ConfigurationManager.GetDefaultInstance(configPathProvider);

            // based on customer feedback, we will set default selection mode to Element
            // when AccessibilityInsights starts up.
            ConfigurationManager.GetDefaultInstance().AppConfig.IsUnderElementScope = true;

            // Configure the correct ReleaseChannel for autoupdate
            Container.SetAutoUpdateReleaseChannel(ConfigurationManager.GetDefaultInstance().AppConfig.ReleaseChannel.ToString());

            // enable/disable telemetry
            if (ConfigurationManager.GetDefaultInstance().AppConfig.EnableTelemetry)
            {
                TelemetryController.EnableTelemetry();
            }

            // Update theming since it depends on config options
            SetColorTheme();
        }
        private void DeleteConfigFiles()
        {
            var configDirectory = FixedConfigSettingsProvider.CreateDefaultSettingsProvider().ConfigurationFolderPath;

            if (_systemShim.DirectoryExists(configDirectory))
            {
                _systemShim.LogToSession("RemoveUserConfigFiles: Deleting config directory: " + configDirectory);
                _systemShim.DeleteDirectory(configDirectory);
            }
        }
        /// <summary>
        /// Update the config file to reflect the new channel setting
        /// </summary>
        /// <param name="newChannel">The new channel to use</param>
        private static void UpdateConfigWithNewChannel(string newChannel)
        {
            if (newChannel == null)
            {
                return;
            }

            var defaultConfigPaths = FixedConfigSettingsProvider.CreateDefaultSettingsProvider();
            var configFile         = Path.Combine(defaultConfigPaths.ConfigurationFolderPath, Constants.AppConfigFileName);

            SettingsDictionary settings = FileHelpers.LoadDataFromJSON <SettingsDictionary>(configFile);

            settings[Constants.ReleaseChannelKey] = newChannel;
            FileHelpers.SerializeDataToJSON(settings, configFile);
        }
        public void RunAction_VersionSwitcherIsNotRunning_ConfigFilesExist_FilesAreDeleted()
        {
            List <string> deletedDirs = new List <string>();

            var configDirectory = FixedConfigSettingsProvider.CreateDefaultSettingsProvider().ConfigurationFolderPath;

            _systemShimMock.Setup(x => x.DirectoryExists(It.IsAny <string>()))
            .Returns <string>(fileName => fileName.Equals(configDirectory));
            _systemShimMock.Setup(x => x.DeleteDirectory(It.IsAny <string>()))
            .Callback <string>(fileName => deletedDirs.Add(fileName));

            Assert.AreEqual(ActionResult.Success, _cleaner.RunAction());
            Assert.IsTrue(deletedDirs.Count == 1 && deletedDirs.First().Equals(configDirectory));

            _systemShimMock.VerifyAll();
        }
示例#5
0
        public IEnumerable <string> GetConfigFiles()
        {
            string configPath = FixedConfigSettingsProvider.CreateDefaultSettingsProvider().ConfigurationFolderPath;

            return(Directory.EnumerateFiles(configPath));
        }