public void AddNoIndentAnnotation_ModuleContainsCode()
        {
            var input =
                @"Option Explicit
Public Foo As Boolean

Sub Foo()
End Sub";

            var expected =
                @"'@NoIndent
Option Explicit
Public Foo As Boolean

Sub Foo()
End Sub";

            IVBComponent component;
            var          vbe = MockVbeBuilder.BuildFromSingleStandardModule(input, out component);

            using (var state = MockParser.CreateAndParse(vbe.Object))
            {
                var noIndentAnnotationCommand = new NoIndentAnnotationCommand(vbe.Object, state);
                noIndentAnnotationCommand.Execute(null);

                Assert.AreEqual(expected, component.CodeModule.Content());
            }
        }
Ejemplo n.º 2
0
        public void AddNoIndentAnnotation()
        {
            IVBComponent component;
            var          vbe   = MockVbeBuilder.BuildFromSingleStandardModule("", out component);
            var          state = MockParser.CreateAndParse(vbe.Object);

            var noIndentAnnotationCommand = new NoIndentAnnotationCommand(vbe.Object, state);

            noIndentAnnotationCommand.Execute(null);

            Assert.AreEqual("'@NoIndent\r\n", component.CodeModule.Content());
        }
        public void AddNoIndentAnnotation_CanExecute_ModuleAlreadyHasAnnotation()
        {
            IVBComponent component;
            var          vbe = MockVbeBuilder.BuildFromSingleStandardModule("'@NoIndent\r\n", out component);

            vbe.Setup(v => v.ActiveCodePane).Returns((ICodePane)null);

            using (var state = MockParser.CreateAndParse(vbe.Object))
            {
                var noIndentAnnotationCommand = new NoIndentAnnotationCommand(vbe.Object, state);
                Assert.IsFalse(noIndentAnnotationCommand.CanExecute(null));
            }
        }
Ejemplo n.º 4
0
        public void AddNoIndentAnnotation_CanExecute_NullActiveCodePane()
        {
            var         builder = new MockVbeBuilder();
            VBComponent component;
            var         vbe = builder.BuildFromSingleStandardModule("", out component);

            vbe.Setup(v => v.ActiveCodePane).Returns((CodePane)null);
            var mockHost = new Mock <IHostApplication>();

            mockHost.SetupAllProperties();
            var parser = MockParser.Create(vbe.Object, new RubberduckParserState(new Mock <ISinks>().Object));

            parser.Parse(new CancellationTokenSource());
            if (parser.State.Status >= ParserState.Error)
            {
                Assert.Inconclusive("Parser Error");
            }

            var noIndentAnnotationCommand = new NoIndentAnnotationCommand(vbe.Object, parser.State);

            Assert.IsFalse(noIndentAnnotationCommand.CanExecute(null));
        }
Ejemplo n.º 5
0
        public void AddNoIndentAnnotation()
        {
            var         builder = new MockVbeBuilder();
            VBComponent component;
            var         vbe      = builder.BuildFromSingleStandardModule("", out component);
            var         mockHost = new Mock <IHostApplication>();

            mockHost.SetupAllProperties();
            var parser = MockParser.Create(vbe.Object, new RubberduckParserState(new Mock <ISinks>().Object));

            parser.Parse(new CancellationTokenSource());
            if (parser.State.Status >= ParserState.Error)
            {
                Assert.Inconclusive("Parser Error");
            }

            var noIndentAnnotationCommand = new NoIndentAnnotationCommand(vbe.Object, parser.State);

            noIndentAnnotationCommand.Execute(null);

            Assert.AreEqual("'@NoIndent\r\n", component.CodeModule.Lines());
        }
Ejemplo n.º 6
0
        public void AddNoIndentAnnotation_ModuleContainsCode()
        {
            var input =
                @"Option Explicit
Public Foo As Boolean

Sub Foo()
End Sub";

            var expected =
                @"'@NoIndent
Option Explicit
Public Foo As Boolean

Sub Foo()
End Sub";

            var         builder = new MockVbeBuilder();
            VBComponent component;
            var         vbe      = builder.BuildFromSingleStandardModule(input, out component);
            var         mockHost = new Mock <IHostApplication>();

            mockHost.SetupAllProperties();
            var parser = MockParser.Create(vbe.Object, new RubberduckParserState(new Mock <ISinks>().Object));

            parser.Parse(new CancellationTokenSource());
            if (parser.State.Status >= ParserState.Error)
            {
                Assert.Inconclusive("Parser Error");
            }

            var noIndentAnnotationCommand = new NoIndentAnnotationCommand(vbe.Object, parser.State);

            noIndentAnnotationCommand.Execute(null);

            Assert.AreEqual(expected, component.CodeModule.Lines());
        }
Ejemplo n.º 7
0
 public NoIndentAnnotationCommandMenuItem(NoIndentAnnotationCommand command)
     : base(command)
 {
 }