Exemple #1
0
 //---------------------------------------------------------------------
 void UpdateStartUpProject(StartUpProjectSettings settings)
 {
     this.BasicSettingController.UpdateStartUpProject(settings);
     this.FilterSettingController.UpdateStartUpProject();
     this.ImportExportSettingController.UpdateStartUpProject();
     this.MiscellaneousSettingController.UpdateStartUpProject();
 }
Exemple #2
0
        public void ResetToDefaultCommand()
        {
            var startUpProjectSettings = new StartUpProjectSettings
            {
                WorkingDir  = "WorkingDir",
                CppProjects = new List <StartUpProjectSettings.CppProject>()
            };

            var controller = CreateController(startUpProjectSettings, null);

            controller.UpdateStartUpProject(ProjectSelectionKind.StartUpProject);

            controller.BasicSettingController.OptionalWorkingDirectory = "WorkingDirectory2";
            var settings = controller.GetMainSettings();

            Assert.AreEqual(
                controller.BasicSettingController.OptionalWorkingDirectory,
                settings.BasicSettings.WorkingDirectory);

            controller.ResetToDefaultCommand.Execute(null);
            settings = controller.GetMainSettings();
            Assert.AreEqual(
                startUpProjectSettings.WorkingDir,
                settings.BasicSettings.WorkingDirectory);
        }
Exemple #3
0
        public void CommandLineText()
        {
            string commandLine            = "commandLine";
            var    startUpProjectSettings = new StartUpProjectSettings()
            {
                CppProjects = new List <StartUpProjectSettings.CppProject>()
            };

            var openCppCoverageCmdLine = new Mock <IOpenCppCoverageCmdLine>();

            openCppCoverageCmdLine.Setup(o => o.Build(
                                             It.IsAny <MainSettings>(), It.IsAny <string>())).Returns(commandLine);

            var controller = CreateController(startUpProjectSettings, openCppCoverageCmdLine.Object);

            Assert.IsNull(controller.CommandLineText);

            controller.SelectedTab = new System.Windows.Controls.TabItem();
            Assert.IsNull(controller.CommandLineText);

            controller.SelectedTab = new System.Windows.Controls.TabItem()
            {
                Header = MainSettingController.CommandLineHeader
            };
            Assert.AreEqual(commandLine, controller.CommandLineText);
        }
Exemple #4
0
        public void GetMainSettings()
        {
            var project = new StartUpProjectSettings.CppProject
            {
                ModulePath  = "ModulePath1",
                SourcePaths = new List <string> {
                    "Source1"
                }
            };

            var startUpProjectSettings = new StartUpProjectSettings {
                CppProjects = new List <StartUpProjectSettings.CppProject> {
                    project, project
                }
            };

            var controller = CreateController(startUpProjectSettings, null);

            controller.UpdateStartUpProject(ProjectSelectionKind.StartUpProject);

            var selectableProject = controller.BasicSettingController.SelectableProjects.First();

            selectableProject.IsSelected = false;

            var settings = controller.GetMainSettings();

            Assert.AreEqual(project.ModulePath, settings.BasicSettings.ModulePaths.Single());
            CollectionAssert.AreEqual(
                project.SourcePaths.ToList(),
                settings.BasicSettings.SourcePaths.ToList());
        }
Exemple #5
0
        public void FullSaveLoad()
        {
            using (var folder = new TemporayPath())
            {
                var settings = new StartUpProjectSettings
                {
                    CppProjects = new List <StartUpProjectSettings.CppProject> {
                        new StartUpProjectSettings.CppProject {
                            Path = "path"
                        }
                    },
                };
                var settingsStorage = new SettingsStorage(folder.Path);
                var builder         = new Mock <IStartUpProjectSettingsBuilder>();

                var controller = CreateController(settings, null, builder, settingsStorage);
                controller.UpdateFields(ProjectSelectionKind.StartUpProject, true);
                FillController(controller);
                controller.SaveSettings();

                var controller2 = CreateController(settings, null, builder, settingsStorage);
                controller2.UpdateFields(ProjectSelectionKind.StartUpProject, true);

                CheckRecursiveEqual(controller, controller2, c => c.BasicSettingController);
                CheckRecursiveEqual(controller, controller2, c => c.ImportExportSettingController);
                CheckRecursiveEqual(controller, controller2, c => c.MiscellaneousSettingController);
                CheckRecursiveEqual(controller, controller2, c => c.FilterSettingController);
            }
        }
Exemple #6
0
        public void BasicSaveLoad()
        {
            var settings = new StartUpProjectSettings
            {
                CppProjects = new List <StartUpProjectSettings.CppProject>(),
                ProjectPath = "ProjectPath",
                SolutionConfigurationName = "SolutionConfigurationName"
            };
            var settingsStorage = new Mock <ISettingsStorage>();
            var builder         = new Mock <IStartUpProjectSettingsBuilder>();

            builder.Setup(b => b.ComputeSettings(ProjectSelectionKind.SelectedProject)).Returns(settings);
            var controller = CreateController(settings, null, builder, settingsStorage.Object);

            controller.UpdateFields(ProjectSelectionKind.SelectedProject, true);
            controller.SaveSettings();
            settingsStorage.Verify(
                s => s.Save(
                    settings.ProjectPath,
                    settings.SolutionConfigurationName,
                    It.IsAny <UserInterfaceSettings>()));

            settingsStorage.Verify(s => s.TryLoad(settings.ProjectPath, settings.SolutionConfigurationName));
            controller.UpdateFields(ProjectSelectionKind.SelectedProject, true);
        }
Exemple #7
0
 //---------------------------------------------------------------------
 static MainSettingController CreateController(
     StartUpProjectSettings settings,
     IOpenCppCoverageCmdLine openCppCoverageCmdLine)
 {
     return(CreateController(
                settings,
                openCppCoverageCmdLine,
                new Mock <IStartUpProjectSettingsBuilder>(),
                new Mock <ISettingsStorage>().Object));
 }
Exemple #8
0
        //---------------------------------------------------------------------
        MainSettingController CreateController(
            StartUpProjectSettings settings,
            Func <MainSettings, string> buildOpenCppCoverageCmdLine)
        {
            var controller = new MainSettingController(buildOpenCppCoverageCmdLine);
            var builder    = new Mock <IStartUpProjectSettingsBuilder>();

            builder.Setup(b => b.ComputeSettings(ProjectSelectionKind.StartUpProject)).Returns(settings);
            controller.StartUpProjectSettingsBuilder = builder.Object;
            return(controller);
        }
Exemple #9
0
        //---------------------------------------------------------------------
        static MainSettingController CreateController(
            StartUpProjectSettings settings,
            IOpenCppCoverageCmdLine openCppCoverageCmdLine,
            Mock <IStartUpProjectSettingsBuilder> builder,
            ISettingsStorage settingsStorage)
        {
            var controller = new MainSettingController(settingsStorage, openCppCoverageCmdLine, builder.Object, null);

            builder.Setup(b => b.ComputeSettings(ProjectSelectionKind.StartUpProject)).Returns(settings);
            return(controller);
        }
Exemple #10
0
        //---------------------------------------------------------------------
        public void UpdateStartUpProject(StartUpProjectSettings settings)
        {
            this.SelectableProjects = settings.CppProjects.Select(
                project => new SelectableProject(project)).ToList();
            this.BasicSettings.ProgramToRun = settings.Command;

            if (String.IsNullOrEmpty(settings.WorkingDir))
            {
                this.HasWorkingDirectory = false;
            }
            else
            {
                this.HasWorkingDirectory = true;
                this.BasicSettings.OptionalWorkingDirectory = settings.WorkingDir;
            }

            this.BasicSettings.Arguments      = settings.Arguments;
            this.BasicSettings.OptimizedBuild = settings.IsOptimizedBuildEnabled;
            this.EnvironmentVariables         = settings.EnvironmentVariables;

            if (this.EnvironmentVariables == null)
            {
                this.EnvironmentVariables = new List <KeyValuePair <string, string> >();
            }

            if (String.IsNullOrEmpty(settings.ProjectName) ||
                String.IsNullOrEmpty(settings.SolutionConfigurationName))
            {
                this.CurrentProject                     = None;
                this.CurrentConfiguration               = None;
                this.IsCompileBeforeRunningEnabled      = false;
                this.CompileBeforeRunningToolTip        = "Nothing to build (No startup project set).";
                this.BasicSettings.CompileBeforeRunning = false;
                this.IsOptimizedBuildCheckBoxEnabled    = true;
                this.OptimizedBuildToolTip              = null;
            }
            else
            {
                this.CurrentProject                     = settings.ProjectName;
                this.CurrentConfiguration               = settings.SolutionConfigurationName;
                this.IsCompileBeforeRunningEnabled      = true;
                this.CompileBeforeRunningToolTip        = null;
                this.BasicSettings.CompileBeforeRunning = true;
                this.IsOptimizedBuildCheckBoxEnabled    = false;
                this.OptimizedBuildToolTip              = "This value is set according to your optimization setting.";
            }
        }
Exemple #11
0
        public void CommandLineText()
        {
            TestHelper.RunInUIhread(() =>
            {
                string commandLine         = "commandLine";
                var startUpProjectSettings = new StartUpProjectSettings()
                {
                    CppProjects = new List <StartUpProjectSettings.CppProject>()
                };

                var controller = CreateController(startUpProjectSettings, settings => { return(commandLine); });
                Assert.IsNull(controller.CommandLineText);

                controller.SelectedTab = new System.Windows.Controls.TabItem();
                Assert.IsNull(controller.CommandLineText);

                controller.SelectedTab = new System.Windows.Controls.TabItem()
                {
                    Header = MainSettingController.CommandLineHeader
                };
                Assert.AreEqual(commandLine, controller.CommandLineText);
            });
        }