Esempio n. 1
0
        public void GetPoints5()
        {
            Create("foo bar");
            var points = SnapshotSpanUtil.GetPoints(SearchPath.Forward, new SnapshotSpan(_buffer.CurrentSnapshot, 0, 0));

            Assert.Empty(points);
        }
Esempio n. 2
0
        public void GetPoints5()
        {
            Create("foo bar");
            var points = SnapshotSpanUtil.GetPoints(Path.Forward, new SnapshotSpan(_buffer.CurrentSnapshot, 0, 0));

            Assert.Equal(0, points.Count());
        }
Esempio n. 3
0
        public void ExtendToFullLineIncludingLineBreak2()
        {
            Create("dog", "cat", "chicken", "pig");
            var span = new SnapshotSpan(_buffer.GetLine(1).Start, 0);

            span = SnapshotSpanUtil.ExtendToFullLineIncludingLineBreak(span);
            Assert.Equal(_buffer.GetLineRange(1).ExtentIncludingLineBreak, span);
        }
Esempio n. 4
0
        public void ExtendToFullLine1()
        {
            Create("dog", "cat", "chicken", "pig");
            var span = _buffer.GetSpan(0, 1);

            span = SnapshotSpanUtil.ExtendToFullLine(span);
            Assert.Equal(_buffer.GetLineRange(0).Extent, span);
        }
Esempio n. 5
0
        public void GetLastLine4()
        {
            Create("a", "");
            var span    = new SnapshotSpan(_buffer.CurrentSnapshot, 0, _buffer.CurrentSnapshot.Length);
            var endLine = SnapshotSpanUtil.GetLastLine(span);

            Assert.Equal(0, endLine.LineNumber);
        }
Esempio n. 6
0
        public void GetLastLine3()
        {
            Create("", "b", "c");
            var span    = _buffer.GetLine(0).ExtentIncludingLineBreak;
            var endLine = SnapshotSpanUtil.GetLastLine(span);

            Assert.Equal(0, endLine.LineNumber);
        }
Esempio n. 7
0
        public void GetPoints_Backward4()
        {
            Create("foo", "bar");
            var span   = new SnapshotSpan(_buffer.CurrentSnapshot, 0, 2);
            var points = SnapshotSpanUtil.GetPoints(Path.Backward, span).Select(x => x.GetChar()).ToList();

            Assert.Equal(new char[] { 'o', 'f' }, points);
        }
Esempio n. 8
0
        public void GetPoints_Backward3()
        {
            Create("foo", "bar");
            var span  = new SnapshotSpan(_buffer.CurrentSnapshot, 0, 1);
            var point = SnapshotSpanUtil.GetPoints(Path.Backward, span).Single();

            Assert.Equal('f', point.GetChar());
        }
Esempio n. 9
0
        public void GetPoints4()
        {
            Create("foo", "bar");
            var points = SnapshotSpanUtil.GetPoints(Path.Forward, _buffer.GetLine(0).Extent);
            var chars  = points.Select(x => x.GetChar()).ToList();

            Assert.Equal(new char[] { 'f', 'o', 'o' }, chars);
        }
Esempio n. 10
0
        public void ExtendToFullLineIncludingLineBreak1()
        {
            Create("dog", "cat", "chicken", "pig");
            var span = _buffer.GetSpan(0, 1);

            span = SnapshotSpanUtil.ExtendToFullLineIncludingLineBreak(span);
            Assert.AreEqual(_buffer.GetLineRange(0).ExtentIncludingLineBreak, span);
        }
Esempio n. 11
0
        public void GetEndLine2()
        {
            Create("a", "b", "c");
            var span    = _buffer.GetLine(2).ExtentIncludingLineBreak;
            var endLine = SnapshotSpanUtil.GetEndLine(span);

            Assert.AreEqual(2, endLine.LineNumber);
        }
Esempio n. 12
0
        public void GetLinesAndEdges1()
        {
            Create("dog", "cat", "pig", "fox");
            var tuple = SnapshotSpanUtil.GetLinesAndEdges(_buffer.GetLineRange(0, 1).ExtentIncludingLineBreak);

            Assert.True(tuple.Item1.IsNone());
            Assert.True(tuple.Item2.IsSome(x => x.Count == 2));
            Assert.True(tuple.Item2.IsSome(x => x.StartLineNumber == 0));
            Assert.True(tuple.Item3.IsNone());
        }
Esempio n. 13
0
        public void GetPoints_Backward1()
        {
            Create("foo");
            var span   = _buffer.GetLine(0).Extent;
            var points = SnapshotSpanUtil.GetPoints(Path.Backward, span).ToList();

            Assert.Equal(3, points.Count);
            Assert.Equal('o', points[0].GetChar());
            Assert.Equal('o', points[1].GetChar());
            Assert.Equal('f', points[2].GetChar());
        }
Esempio n. 14
0
        public void GetPoints_Backward2()
        {
            Create("foo", "bar");
            var span   = _buffer.GetLine(1).Extent;
            var points = SnapshotSpanUtil.GetPoints(SearchPath.Backward, span).ToList();

            Assert.Equal(3, points.Count);
            Assert.Equal('r', points[0].GetChar());
            Assert.Equal('a', points[1].GetChar());
            Assert.Equal('b', points[2].GetChar());
        }
Esempio n. 15
0
        public void GetLinesAndEdges6()
        {
            Create("dog", "cat", "pig", "fox");
            var span = new SnapshotSpan(
                _buffer.CurrentSnapshot.GetEndPoint().Subtract(1),
                0);
            var tuple = SnapshotSpanUtil.GetLinesAndEdges(span);

            Assert.AreEqual(span, tuple.Item1.Value);
            Assert.IsTrue(tuple.Item2.IsNone());
            Assert.IsTrue(tuple.Item3.IsNone());
        }
Esempio n. 16
0
        public void GetLinesAndEdges7()
        {
            Create("dog", "cat", "pig", "fox");
            var span = new SnapshotSpan(
                _buffer.CurrentSnapshot.GetEndPoint(),
                0);
            var tuple = SnapshotSpanUtil.GetLinesAndEdges(span);

            Assert.True(tuple.Item1.IsNone());
            Assert.True(tuple.Item2.IsNone());
            Assert.True(tuple.Item3.IsNone());
        }
Esempio n. 17
0
        public void GetLinesAndEdges5()
        {
            Create("dog", "cat", "pig", "fox");
            var span = new SnapshotSpan(
                _buffer.GetPoint(1),
                _buffer.GetPoint(2));
            var tuple = SnapshotSpanUtil.GetLinesAndEdges(span);

            Assert.Equal(new SnapshotSpan(span.Start, span.End), tuple.Item1.Value);
            Assert.True(tuple.Item3.IsNone());
            Assert.True(tuple.Item2.IsNone());
        }
Esempio n. 18
0
        public void GetLinesAndEdges4()
        {
            Create("dog", "cat", "pig", "fox");
            var span = new SnapshotSpan(
                _buffer.GetPoint(1),
                _buffer.GetLine(2).End);
            var tuple = SnapshotSpanUtil.GetLinesAndEdges(span);

            Assert.Equal(new SnapshotSpan(span.Start, _buffer.GetLine(0).EndIncludingLineBreak), tuple.Item1.Value);
            Assert.Equal(new SnapshotSpan(_buffer.GetLine(2).Start, span.End), tuple.Item3.Value);
            Assert.True(tuple.Item2.IsSome(x => x.Count == 1));
        }
Esempio n. 19
0
        public void GetPoints2()
        {
            Create(s_lines);
            var points =
                _buffer.CurrentSnapshot.Lines
                .Select(x => x.ExtentIncludingLineBreak)
                .SelectMany(x => SnapshotSpanUtil.GetPoints(Path.Forward, x));

            foreach (var point in points)
            {
                var notUsed = point.GetChar();
            }
        }
Esempio n. 20
0
        public void GetLinesAndEdges9()
        {
            Create(s_lines);
            var snapshot = _buffer.CurrentSnapshot;

            for (var i = 0; i < snapshot.Length; i++)
            {
                var span = new SnapshotSpan(snapshot, i, snapshot.Length - i);
                SnapshotSpanUtil.GetLinesAndEdges(span);
                span = new SnapshotSpan(snapshot, 0, i);
                SnapshotSpanUtil.GetLinesAndEdges(span);
            }
        }
Esempio n. 21
0
        public void GetLinesAndEdges8()
        {
            Create("long first line", "ab", "c");
            var span = new SnapshotSpan(
                _buffer.GetLine(1).Start.Add(1),
                _buffer.GetEndPoint());
            var tuple = SnapshotSpanUtil.GetLinesAndEdges(span);

            Assert.True(tuple.Item1.IsSome());
            Assert.Equal(new SnapshotSpan(span.Start, _buffer.GetLine(1).EndIncludingLineBreak), tuple.Item1.Value);
            Assert.True(tuple.Item2.IsNone());
            Assert.Equal(_buffer.GetLine(2).ExtentIncludingLineBreak, tuple.Item3.Value);
        }
Esempio n. 22
0
        public void GetPoints3()
        {
            Create("foo");
            var points =
                _buffer.CurrentSnapshot.Lines
                .Select(x => x.Extent)
                .SelectMany(x => SnapshotSpanUtil.GetPoints(Path.Forward, x))
                .ToList();

            Assert.Equal(3, points.Count);
            Assert.Equal('f', points[0].GetChar());
            Assert.Equal('o', points[1].GetChar());
            Assert.Equal('o', points[2].GetChar());
        }
Esempio n. 23
0
        public static TextSpan ToTextSpan(this SnapshotSpan span)
        {
            var start  = SnapshotPointUtil.GetLineColumn(span.Start);
            var option = SnapshotSpanUtil.GetLastIncludedPoint(span);
            var end    = option.IsSome()
                ? SnapshotPointUtil.GetLineColumn(option.Value)
                : start;

            return(new TextSpan
            {
                iStartLine = start.Item1,
                iStartIndex = start.Item2,
                iEndLine = end.Item1,
                iEndIndex = end.Item2
            });
        }