예제 #1
0
        public CommandLineUI(string[] args, CommandStatusWriter consoleOut)
        {
            _commandArgs = new CommandArgs(consoleOut, false);
            if (!_commandArgs.ParseArgs(args))
            {
                consoleOut.WriteLine(Resources.CommandLine_Run_Exiting___);
                return;
            }

            Program.UnitTest                = Program.FunctionalTest = true;
            Program.TestExceptions          = new List <Exception>();
            Program.NoSaveSettings          = true;
            Program.DisableJoining          = _commandArgs.ImportDisableJoining;
            Program.NoAllChromatogramsGraph = _commandArgs.NoAllChromatogramsGraph;
            Settings.Default.AutoShowAllChromatogramsGraph = !_commandArgs.HideAllChromatogramsGraph;
            LocalizationHelper.InitThread();

            // Run test in new thread (Skyline on main thread).
            Program.Init();
            Settings.Default.SrmSettingsList[0] = SrmSettingsList.GetDefault();
            // Reset defaults with names from resources for testing different languages
            Settings.Default.BackgroundProteomeList[0] = BackgroundProteomeList.GetDefault();
            Settings.Default.DeclusterPotentialList[0] = DeclusterPotentialList.GetDefault();
            Settings.Default.RetentionTimeList[0]      = RetentionTimeList.GetDefault();
            Settings.Default.ShowStartupForm           = false;

            var threadTest = new Thread(Run);

            LocalizationHelper.InitThread(threadTest);
            threadTest.Start();
            Program.Main();
            threadTest.Join();
        }
예제 #2
0
        public void SettingsChangeNotDoc()
        {
            SrmDocument docFasta = CreateMixedDoc();
            SrmSettings settings = docFasta.Settings;

            // Change declustering potential, collision energy, and retention time
            var regressions = new DeclusterPotentialList();

            regressions.AddDefaults();
            var dpRegress  = regressions["SCIEX"];
            var collisions = new CollisionEnergyList();

            collisions.AddDefaults();
            var ceRegress = collisions["SCIEX"];
            var calc      = Settings.Default.RTScoreCalculatorList.GetDefaults().First();
            var rtRegress = new RetentionTimeRegression("Test", calc, 3.5, 10.4, 12.8,
                                                        new MeasuredRetentionTime[0]);

            SrmSettings settings2 = settings.ChangePeptidePrediction(p => p.ChangeRetentionTime(rtRegress)).
                                    ChangeTransitionPrediction(p => p.ChangeCollisionEnergy(ceRegress).ChangeDeclusteringPotential(dpRegress));

            SrmDocument docFasta2 = docFasta.ChangeSettings(settings2);

            AssertEx.IsDocumentState(docFasta2, docFasta.RevisionIndex + 1, 3, 111, 352);
            Assert.AreSame(docFasta.Children, docFasta2.Children);
            Assert.AreNotEqual(docFasta.Settings, docFasta2.Settings);

            // Change auto-select toggles
            SrmSettings settings3 = settings.ChangePeptideFilter(f => f.ChangeAutoSelect(false)).
                                    ChangeTransitionFilter(f => f.ChangeAutoSelect(false));

            SrmDocument docFasta3 = docFasta.ChangeSettings(settings3);

            AssertEx.IsDocumentState(docFasta3, docFasta.RevisionIndex + 1, 3, 111, 352);
            Assert.AreSame(docFasta.Children, docFasta3.Children);
            Assert.AreNotEqual(docFasta.Settings, docFasta3.Settings);
        }
예제 #3
0
        public void SettingsChangeNotDoc()
        {
            SrmDocument docFasta = CreateMixedDoc();
            SrmSettings settings = docFasta.Settings;

            // Change declustering potential, collision energy, and retention time
            var regressions = new DeclusterPotentialList();
            regressions.AddDefaults();
            var dpRegress = regressions["ABI"];
            var collisions = new CollisionEnergyList();
            collisions.AddDefaults();
            var ceRegress = collisions["ABI 4000 QTrap"];
            var calc = Settings.Default.RTScoreCalculatorList.GetDefaults().First();
            var rtRegress = new RetentionTimeRegression("Test", calc, 3.5, 10.4, 12.8,
                new MeasuredRetentionTime[0]);

            SrmSettings settings2 = settings.ChangePeptidePrediction(p => p.ChangeRetentionTime(rtRegress)).
                ChangeTransitionPrediction(p => p.ChangeCollisionEnergy(ceRegress).ChangeDeclusteringPotential(dpRegress));

            SrmDocument docFasta2 = docFasta.ChangeSettings(settings2);
            AssertEx.IsDocumentState(docFasta2, docFasta.RevisionIndex + 1, 3, 111, 352);
            Assert.AreSame(docFasta.Children, docFasta2.Children);
            Assert.AreNotEqual(docFasta.Settings, docFasta2.Settings);

            // Change auto-select toggles
            SrmSettings settings3 = settings.ChangePeptideFilter(f => f.ChangeAutoSelect(false)).
                ChangeTransitionFilter(f => f.ChangeAutoSelect(false));

            SrmDocument docFasta3 = docFasta.ChangeSettings(settings3);
            AssertEx.IsDocumentState(docFasta3, docFasta.RevisionIndex + 1, 3, 111, 352);
            Assert.AreSame(docFasta.Children, docFasta3.Children);
            Assert.AreNotEqual(docFasta.Settings, docFasta3.Settings);
        }