public void CreateCommentRunnable_ShouldRemoveNodeFromTreeAndInsertAComment_WhenGettingSyntaxNode()
        {
            // Given
            var source    = @"
                public void foo() {
                    var a = 10;
                }
            ";
            var node      = SyntaxFactory.ParseSyntaxTree(source).GetRoot();
            var underTest = new CreateCommentRunnable();

            // When
            var result = underTest.Run(node).ToFullString();

            // Then
            Assert.That(result, Is.Not.Null);
        }
        public void CreateCommentRunnable_ShouldRemoveNodeFromTreeAndInsertAComment_WhenGettingSyntaxNode()
        {
            // Given
            var source = @"
                public void foo() {
                    var a = 10;
                }
            ";
            var node = SyntaxFactory.ParseSyntaxTree(source).GetRoot();
            var underTest = new CreateCommentRunnable();

            // When
            var result = underTest.Run(node).ToFullString();

            // Then
            Assert.That(result, Is.Not.Null);
        }
        public void CreateCommentRunnable_ShouldRemoveNodeFromTreeAndInsertAComment_WhenTransformingMethodBody()
        {
            // Given
            var source              = @"
                public void foo() {
                    var a = 10;
                }
            ";
            var compilationUnit     = SyntaxFactory.ParseSyntaxTree(source).GetRoot() as CompilationUnitSyntax;
            var variableDeclaration = compilationUnit.DescendantNodes()
                                      .OfType <MethodDeclarationSyntax>()
                                      .Single(m => m.Identifier.ValueText == "foo")
                                      .DescendantNodes()
                                      .OfType <VariableDeclarationSyntax>()
                                      .Single();

            var underTest = new CreateCommentRunnable();

            // When
            var result = underTest.Run(variableDeclaration).ToFullString();

            // Then
            Assert.That(result, Is.Not.Null);
        }
        public void CreateCommentRunnable_ShouldRemoveNodeFromTreeAndInsertAComment_WhenTransformingMethodBody()
        {
            // Given
            var source = @"
                public void foo() {
                    var a = 10;
                }
            ";
            var compilationUnit = SyntaxFactory.ParseSyntaxTree(source).GetRoot() as CompilationUnitSyntax;
            var variableDeclaration = compilationUnit.DescendantNodes()
                                                     .OfType<MethodDeclarationSyntax>()
                                                     .Single(m => m.Identifier.ValueText == "foo")
                                                     .DescendantNodes()
                                                     .OfType<VariableDeclarationSyntax>()
                                                     .Single();

            var underTest = new CreateCommentRunnable();

            // When
            var result = underTest.Run(variableDeclaration).ToFullString();

            // Then
            Assert.That(result, Is.Not.Null);
        }