static void Test_GetLineColumnIndexFromCharIndex() { TextBuffer text; SplitArray <int> lhi; int l, c; MakeTestData(out text, out lhi); LineLogic.GetLineColumnIndexFromCharIndex(text, lhi, 0, out l, out c); TestUtl.AssertEquals(0, l); TestUtl.AssertEquals(0, c); LineLogic.GetLineColumnIndexFromCharIndex(text, lhi, 2, out l, out c); TestUtl.AssertEquals(0, l); TestUtl.AssertEquals(2, c); LineLogic.GetLineColumnIndexFromCharIndex(text, lhi, 40, out l, out c); TestUtl.AssertEquals(4, l); TestUtl.AssertEquals(2, c); LineLogic.GetLineColumnIndexFromCharIndex(text, lhi, 71, out l, out c); // 71 --> EOF TestUtl.AssertEquals(6, l); TestUtl.AssertEquals(18, c); try { LineLogic.GetLineColumnIndexFromCharIndex(text, lhi, 72, out l, out c); TestUtl.Fail("exception must be thrown here."); } catch (Exception ex) { TestUtl.AssertType <AssertException>(ex); } }