예제 #1
0
        public void GetExtentIncludingLineBreak1()
        {
            Create("foo", "baz");
            var span = SnapshotLineUtil.GetExtentIncludingLineBreak(_buffer.GetLine(0));

            Assert.Equal("foo" + Environment.NewLine, span.GetText());
        }
예제 #2
0
        public void GetExtent1()
        {
            Create("foo");
            var span = SnapshotLineUtil.GetExtent(_buffer.GetLine(0));

            Assert.Equal("foo", span.GetText());
        }
예제 #3
0
            public void PartialTab()
            {
                Create("d\tog", "extra");
                var point = SnapshotLineUtil.GetSpaceWithOverlapOrEnd(_textBuffer.GetLine(0), spacesCount: 4, tabStop: 4);

                Assert.Equal(_textBuffer.GetPoint(position: 2), point.Point);
            }
예제 #4
0
        private SnapshotOverlapSpan GetSpanFromSpaceAndCount(ITextSnapshotLine line, int start, int count, int tabStop)
        {
            var startPoint = SnapshotLineUtil.GetSpaceWithOverlapOrEnd(line, start, tabStop);
            var endPoint   = SnapshotLineUtil.GetSpaceWithOverlapOrEnd(line, start + count, tabStop);

            return(new SnapshotOverlapSpan(startPoint, endPoint));
        }
예제 #5
0
        public void GetPoints1()
        {
            Create("foo");
            var points = SnapshotLineUtil.GetPoints(Path.Forward, _buffer.CurrentSnapshot.GetLineFromLineNumber(0));
            var text   = points.Select(x => x.GetChar().ToString()).Aggregate((x, y) => x + y);

            Assert.Equal("foo", text);
        }
예제 #6
0
            public void AfterTab()
            {
                Create("d\tog", "extra");
                var point = SnapshotLineUtil.GetSpaceWithOverlapOrEnd(_textBuffer.GetLine(0), spacesCount: 5, tabStop: 4);

                Assert.Equal(_textBuffer.GetPoint(position: 3), point.Point);
                Assert.Equal('g', point.Point.GetChar());
            }