void CheckLines() { string text = document.Text; int lineNumber = 1; int lineStart = 0; for (int i = 0; i < text.Length; i++) { char c = text[i]; if (c == '\r' && i + 1 < text.Length && text[i + 1] == '\n') { DocumentLine line = document.GetLineByNumber(lineNumber); Assert.AreEqual(lineNumber, line.LineNumber); Assert.AreEqual(2, line.DelimiterLength); Assert.AreEqual(lineStart, line.Offset); Assert.AreEqual(i - lineStart, line.Length); i++; // consume \n lineNumber++; lineStart = i + 1; } else if (c == '\r' || c == '\n') { DocumentLine line = document.GetLineByNumber(lineNumber); Assert.AreEqual(lineNumber, line.LineNumber); Assert.AreEqual(1, line.DelimiterLength); Assert.AreEqual(lineStart, line.Offset); Assert.AreEqual(i - lineStart, line.Length); lineNumber++; lineStart = i + 1; } } Assert.AreEqual(lineNumber, document.LineCount); }
public void TestHeightChanged() { heightTree.SetHeight(document.GetLineByNumber(4), 100); CheckHeights(); }
public void CheckGetLineInEmptyDocument() { Assert.AreEqual(1, document.Lines.Count); List <DocumentLine> lines = new List <DocumentLine>(document.Lines); Assert.AreEqual(1, lines.Count); DocumentLine line = document.Lines[0]; Assert.AreSame(line, lines[0]); Assert.AreSame(line, document.GetLineByNumber(1)); Assert.AreSame(line, document.GetLineByOffset(0)); }
CollapsedLineSection SimpleCheck(int from, int to) { CollapsedLineSection sec1 = heightTree.CollapseText(document.GetLineByNumber(from), document.GetLineByNumber(to)); for (int i = 1; i < from; i++) { Assert.IsFalse(heightTree.GetIsCollapsed(i)); } for (int i = from; i <= to; i++) { Assert.IsTrue(heightTree.GetIsCollapsed(i)); } for (int i = to + 1; i <= 10; i++) { Assert.IsFalse(heightTree.GetIsCollapsed(i)); } CheckHeights(); return(sec1); }