public void AddAnnotationNotOnFirstPhysicalLineOfALogicalLineDoesNothing()
        {
            const string inputCode =
                @"
Private fooBar As Long, _
baz As Variant


'@Obsolete
    Public Sub Foo(bar As String)
        bar = vbNullString
    End Sub
";

            const string expectedCode =
                @"
Private fooBar As Long, _
baz As Variant


'@Obsolete
    Public Sub Foo(bar As String)
        bar = vbNullString
    End Sub
";
            var annotationToAdd = new ObsoleteAnnotation();

            string actualCode;

            var(component, rewriteSession, state) = TestSetup(inputCode);
            using (state)
            {
                var bazDeclaration = state.DeclarationFinder
                                     .UserDeclarations(DeclarationType.Variable)
                                     .First(decl => decl.IdentifierName == "baz");
                var annotationUpdater = new AnnotationUpdater();

                annotationUpdater.AddAnnotation(rewriteSession, bazDeclaration, annotationToAdd);
                rewriteSession.TryRewrite();

                actualCode = component.CodeModule.Content();
            }
            Assert.AreEqual(expectedCode, actualCode);
        }
        public void AddAnnotationOnTheFirstLineIgnoresIndentation()
        {
            const string inputCode =
                @"  Private Sub FooBar() 
  End Sub


'@Obsolete
    Public Sub Foo(bar As String)
        bar = vbNullString
    End Sub
";

            const string expectedCode =
                @"'@Obsolete
  Private Sub FooBar() 
  End Sub


'@Obsolete
    Public Sub Foo(bar As String)
        bar = vbNullString
    End Sub
";
            var annotationToAdd = new ObsoleteAnnotation();

            string actualCode;

            var(component, rewriteSession, state) = TestSetup(inputCode);
            using (state)
            {
                var fooBarDeclaration = state.DeclarationFinder
                                        .UserDeclarations(DeclarationType.Procedure)
                                        .First(decl => decl.IdentifierName == "FooBar");
                var annotationUpdater = new AnnotationUpdater();

                annotationUpdater.AddAnnotation(rewriteSession, fooBarDeclaration, annotationToAdd);
                rewriteSession.TryRewrite();

                actualCode = component.CodeModule.Content();
            }
            Assert.AreEqual(expectedCode, actualCode);
        }
Exemplo n.º 3
0
        public void ObsoleteAnnotation_TypeIsObsolete()
        {
            var annotation = new ObsoleteAnnotation(new QualifiedSelection(), null, new[] { "param" });

            Assert.AreEqual(AnnotationType.Obsolete, annotation.AnnotationType);
        }