public void SpecialSettings() { var controller = new BasicSettingController(); var settings = new BasicSettingController.SettingsData { Data = new BasicSettingController.BasicSettingsData { CompileBeforeRunning = true, OptimizedBuild = true } }; controller.UpdateSettings(settings); Assert.IsFalse(controller.HasWorkingDirectory); Assert.IsFalse(controller.BasicSettings.CompileBeforeRunning); Assert.IsFalse(controller.BasicSettings.OptimizedBuild); settings.Data.OptionalWorkingDirectory = "WorkingDirectory"; controller.IsCompileBeforeRunningEnabled = true; controller.IsOptimizedBuildCheckBoxEnabled = true; settings.Data.CompileBeforeRunning = true; // Reset by UpdateSettings settings.Data.OptimizedBuild = true; // Reset by UpdateSettings controller.UpdateSettings(settings); Assert.IsTrue(controller.HasWorkingDirectory); Assert.IsTrue(controller.BasicSettings.CompileBeforeRunning); Assert.IsTrue(controller.BasicSettings.OptimizedBuild); }
public void BuildJsonSettings() { var controller = new BasicSettingController(); var settings = new BasicSettingController.SettingsData { Data = new BasicSettingController.BasicSettingsData() }; settings.IsSelectedByProjectPath = new Dictionary <string, bool> { { "project1", true }, { "project2", false } }; foreach (var kvp in settings.IsSelectedByProjectPath) { controller.SelectableProjects.Add( new SelectableProject(new StartUpProjectSettings.CppProject { Path = kvp.Key })); } controller.UpdateSettings(settings); var newSettings = controller.BuildJsonSettings(); PropertyHelper.CheckPropertiesEqualRecursive(settings, newSettings); }