Esempio n. 1
0
        public void OneDiagnosticMarker_PositionCaptured(Test test)
        {
            var markers = new TestMarkup().Parse(test.Markup, out var source);

            Assert.Single(markers);
            Assert.Equal(test.ExpectedMarkers[0].Line, markers[0].Line);
            Assert.Equal(test.ExpectedMarkers[0].Column, markers[0].Column);
        }
Esempio n. 2
0
        public void DiagnosticTextMarkers_TextCaptured(Test test)
        {
            var markers = new TestMarkup().Parse(test.Markup, out var source);

            Assert.Equal(test.ExpectedMarkers.Count, markers.Count);

            for (var i = 0; i < markers.Count; ++i)
            {
                Assert.IsType <DiagnosticTextMarker>(markers[i]);
                Assert.Equal(((DiagnosticTextMarker)test.ExpectedMarkers[i]).Text, ((DiagnosticTextMarker)markers[i]).Text);
            }
        }
Esempio n. 3
0
        public void ManyDiagnosticMarkers_PositionsCaptured(Test test)
        {
            var markers = new TestMarkup().Parse(test.Markup, out var source);

            Assert.Equal(test.ExpectedMarkers.Count, markers.Count);

            for (var i = 0; i < markers.Count; ++i)
            {
                Assert.Equal(test.ExpectedMarkers[i].Line, markers[i].Line);
                Assert.Equal(test.ExpectedMarkers[i].Column, markers[i].Column);
            }
        }
Esempio n. 4
0
        public void AllDiagnosticMarkers_MarkerDataCaptured()
        {
            const string Test = @"
namespace My.Namespace
{
    <|class Program
    {
        public void <?>Method(string name)
        {
            <|>Console.WriteLine(name);
        }
    }|>
}";

            const int ExpectedMarkerCount = 3;

            const string ExpectedText = @"class Program
    {
        public void Method(string name)
        {
            Console.WriteLine(name);
        }
    }";

            var expectedPositions = new List <Tuple <int, int> >()
            {
                Tuple.Create(4, 5),
                Tuple.Create(6, 21),
                Tuple.Create(8, 13),
            };

            var markers = new TestMarkup().Parse(Test, out var source);

            Assert.Equal(ExpectedMarkerCount, markers.Count);

            var textMarker = markers.First(x => x is DiagnosticTextMarker);

            Assert.Equal(ExpectedText, ((DiagnosticTextMarker)textMarker).Text);

            for (var i = 0; i < markers.Count; ++i)
            {
                var marker         = markers[i];
                var expectedLine   = expectedPositions[i].Item1;
                var expectedColumn = expectedPositions[i].Item2;

                Assert.Equal(expectedLine, marker.Line);
                Assert.Equal(expectedColumn, marker.Column);
            }
        }
Esempio n. 5
0
        public void OneEmbeddedDiagnosticTextMarker_TextCaptured()
        {
            const string Test = @"
namespace My.Namespace
{
    <|class Program
    {
        public void Method()
        {
        }

        <|class Foo
        {
        }|>
    }|>
}";

            const int ExpectedMarkerCount = 2;

            const string ExpectedText1 = @"class Program
    {
        public void Method()
        {
        }

        class Foo
        {
        }
    }";
            const string ExpectedText2 = @"class Foo
        {
        }";

            var markers = new TestMarkup().Parse(Test, out var source);

            Assert.Equal(ExpectedMarkerCount, markers.Count);

            foreach (var marker in markers)
            {
                Assert.IsType <DiagnosticTextMarker>(marker);
            }

            Assert.Equal(ExpectedText1, ((DiagnosticTextMarker)markers[0]).Text);
            Assert.Equal(ExpectedText2, ((DiagnosticTextMarker)markers[1]).Text);
        }
Esempio n. 6
0
        public void ManyEmbeddedDiagnosticTextMarkers_TextCaptured()
        {
            const string Test = @"
using System;

namespace My.Namespace
{
    <|class Program
    {
        <|public void Method(string name)
        {
            <|Console.WriteLine(name);|>
        }|>
    }|>
}";

            const int ExpectedMarkerCount = 3;

            const string ExpectedText1 = @"class Program
    {
        public void Method(string name)
        {
            Console.WriteLine(name);
        }
    }";
            const string ExpectedText2 = @"public void Method(string name)
        {
            Console.WriteLine(name);
        }";
            const string ExpectedText3 = @"Console.WriteLine(name);";

            var markers = new TestMarkup().Parse(Test, out var source);

            Assert.Equal(ExpectedMarkerCount, markers.Count);

            foreach (var marker in markers)
            {
                Assert.IsType <DiagnosticTextMarker>(marker);
            }

            Assert.Equal(ExpectedText1, ((DiagnosticTextMarker)markers[0]).Text);
            Assert.Equal(ExpectedText2, ((DiagnosticTextMarker)markers[1]).Text);
            Assert.Equal(ExpectedText3, ((DiagnosticTextMarker)markers[2]).Text);
        }