예제 #1
0
        public void DuplicateToDoMarkersAreIgnored()
        {
            var actual = new ToDoListSettings
            {
                ToDoMarkers = new[]
                {
                    new ToDoMarker("NOTE"),
                    new ToDoMarker("TODO"),
                    new ToDoMarker("BUG"),
                    new ToDoMarker("PLACEHOLDER"),
                    new ToDoMarker("PLACEHOLDER")
                }
            };

            var expected = new ToDoListSettings
            {
                ToDoMarkers = new[]
                {
                    new ToDoMarker("NOTE"),
                    new ToDoMarker("TODO"),
                    new ToDoMarker("BUG"),
                    new ToDoMarker("PLACEHOLDER")
                }
            };

            Assert.IsTrue(actual.ToDoMarkers.SequenceEqual(expected.ToDoMarkers));
        }
예제 #2
0
 public ToDoItemsMenu(VBE vbe, AddIn addInInstance, ToDoListSettings settings, Parser parser)
 {
     _vbe      = vbe;
     _addIn    = addInInstance;
     _settings = settings;
     _parser   = parser;
 }
예제 #3
0
        public void GetDefaultTodoMarkersTest()
        {
            var settings = new ToDoListSettings();

            ToDoMarker[] markers = settings.ToDoMarkers;
            Assert.AreEqual("NOTE", markers[0].Text.Trim(), "Note failed to load.");
            Assert.AreEqual("TODO", markers[1].Text.Trim(), "Todo failed to load.");
            Assert.AreEqual("BUG", markers[2].Text.Trim(), "Bug failed to load.");
        }
예제 #4
0
        private Configuration GetTodoConfig(string[] markers)
        {
            var todoSettings = new ToDoListSettings
            {
                ToDoMarkers = markers.Select(m => new ToDoMarker(m)).ToArray()
            };

            var userSettings = new UserSettings(null, null, todoSettings, null, null, null, null);

            return(new Configuration(userSettings));
        }
예제 #5
0
        private Configuration GetNondefaultConfig()
        {
            var todoSettings = new ToDoListSettings
            {
                ToDoMarkers = new[]
                {
                    new ToDoMarker("PLACEHOLDER")
                }
            };

            var userSettings = new UserSettings(null, null, null, todoSettings, null, null, null, null);

            return(new Configuration(userSettings));
        }
예제 #6
0
        private Configuration GetTodoConfig()
        {
            var todoSettings = new ToDoListSettings
            {
                ToDoMarkers = new[]
                {
                    new ToDoMarker("NOTE "),
                    new ToDoMarker("TODO "),
                    new ToDoMarker("BUG ")
                }
            };

            var userSettings = new UserSettings(null, null, todoSettings, null, null, null);

            return(new Configuration(userSettings));
        }
예제 #7
0
        private Configuration GetNondefaultConfig()
        {
            var generalSettings = new Rubberduck.Settings.GeneralSettings
            {
                Language       = new DisplayLanguageSetting("sv-SE"),
                HotkeySettings = new[]
                {
                    new HotkeySetting {
                        Name = "IndentProcedure", IsEnabled = false, Key1 = "CTRL-C"
                    },
                    new HotkeySetting {
                        Name = "IndentModule", IsEnabled = false, Key1 = "CTRL-X"
                    }
                },
                AutoSaveEnabled = true,
                AutoSavePeriod  = 5
            };

            var todoSettings = new ToDoListSettings
            {
                ToDoMarkers = new[]
                {
                    new ToDoMarker("PLACEHOLDER ")
                }
            };

            var inspections = Inspections().Select(i => new CodeInspectionSetting(i)).ToArray();

            inspections[0].Severity = CodeInspectionSeverity.Warning;
            inspections[1].Severity = CodeInspectionSeverity.Suggestion;
            inspections[2].Severity = CodeInspectionSeverity.Hint;
            inspections[3].Severity = CodeInspectionSeverity.Error;
            inspections[4].Severity = CodeInspectionSeverity.DoNotShow;
            inspections[5].Severity = CodeInspectionSeverity.Error;

            var inspectionSettings = new CodeInspectionSettings
            {
                CodeInspections = inspections
            };

            var unitTestSettings = new Rubberduck.Settings.UnitTestSettings
            {
                BindingMode = BindingMode.EarlyBinding,
                AssertMode  = AssertMode.PermissiveAssert,
                ModuleInit  = false,
                MethodInit  = false,
                DefaultTestStubInNewModule = true
            };

            var indenterSettings = new Rubberduck.Settings.IndenterSettings
            {
                IndentEntireProcedureBody      = false,
                IndentFirstCommentBlock        = false,
                IndentFirstDeclarationBlock    = false,
                AlignCommentsWithCode          = false,
                AlignContinuations             = false,
                IgnoreOperatorsInContinuations = false,
                IndentCase = true,
                ForceDebugStatementsInColumn1    = true,
                ForceCompilerDirectivesInColumn1 = true,
                IndentCompilerDirectives         = false,
                AlignDims             = true,
                AlignDimColumn        = 16,
                EnableUndo            = false,
                EndOfLineCommentStyle = Rubberduck.SmartIndenter.EndOfLineCommentStyle.Absolute,
                EndOfLineCommentColumnSpaceAlignment = 60,
                IndentSpaces = 2
            };

            var userSettings = new UserSettings(generalSettings, todoSettings, inspectionSettings, unitTestSettings, indenterSettings);

            return(new Configuration(userSettings));
        }
예제 #8
0
        private Configuration GetDefaultConfig()
        {
            var generalSettings = new Rubberduck.Settings.GeneralSettings
            {
                Language       = new DisplayLanguageSetting("en-US"),
                HotkeySettings = new[]
                {
                    new HotkeySetting {
                        Name = "IndentProcedure", IsEnabled = true, Key1 = "^P"
                    },
                    new HotkeySetting {
                        Name = "IndentModule", IsEnabled = true, Key1 = "^M"
                    }
                },
                AutoSaveEnabled = false,
                AutoSavePeriod  = 10
            };

            var todoSettings = new ToDoListSettings
            {
                ToDoMarkers = new[]
                {
                    new ToDoMarker("NOTE "),
                    new ToDoMarker("TODO "),
                    new ToDoMarker("BUG ")
                }
            };

            var inspectionSettings = new CodeInspectionSettings
            {
                CodeInspections = Inspections().Select(i => new CodeInspectionSetting(i)).ToArray()
            };

            var unitTestSettings = new Rubberduck.Settings.UnitTestSettings
            {
                BindingMode = BindingMode.LateBinding,
                AssertMode  = AssertMode.StrictAssert,
                ModuleInit  = true,
                MethodInit  = true,
                DefaultTestStubInNewModule = false
            };

            var indenterSettings = new Rubberduck.Settings.IndenterSettings
            {
                IndentEntireProcedureBody      = true,
                IndentFirstCommentBlock        = true,
                IndentFirstDeclarationBlock    = true,
                AlignCommentsWithCode          = true,
                AlignContinuations             = true,
                IgnoreOperatorsInContinuations = true,
                IndentCase = false,
                ForceDebugStatementsInColumn1    = false,
                ForceCompilerDirectivesInColumn1 = false,
                IndentCompilerDirectives         = true,
                AlignDims             = false,
                AlignDimColumn        = 15,
                EnableUndo            = true,
                EndOfLineCommentStyle = Rubberduck.SmartIndenter.EndOfLineCommentStyle.AlignInColumn,
                EndOfLineCommentColumnSpaceAlignment = 50,
                IndentSpaces = 4
            };

            var userSettings = new UserSettings(generalSettings, todoSettings, inspectionSettings, unitTestSettings, indenterSettings);

            return(new Configuration(userSettings));
        }