//[Test]
        public void TestCharPositionFromNonSpaceCharCount()
        {
            // \tb = a + 3;
            // \t    c\t = a + \t b;
            TextBuffer   textBuffer = new TextBuffer("\tb = a + 3;\n\t    c\t = a + \t b;");
            CharPosition position   = new CharPosition(textBuffer);

            position.SetCharacterPosition(0, 0); // First line.
            position.FromNonSpaceCharCount(1);
            Assert.AreEqual(2, position.CharacterX);
            position.FromNonSpaceCharCount(4);
            Assert.AreEqual(8, position.CharacterX);

            position.SetCharacterPosition(0, 1); // Second line.
            position.FromNonSpaceCharCount(1);
            Assert.AreEqual(6, position.CharacterX);
            position.FromNonSpaceCharCount(3);
            Assert.AreEqual(11, position.CharacterX);
            position.FromNonSpaceCharCount(5);
            Assert.AreEqual(17, position.CharacterX);
        }
        public void TestCharPositionFromNonSpaceCharCount()
        {
            // \tb = a + 3;
            // \t    c\t = a + \t b;
            TextBuffer textBuffer = new TextBuffer("\tb = a + 3;\n\t    c\t = a + \t b;");
            CharPosition position = new CharPosition(textBuffer);

            position.SetCharacterPosition(0, 0); // First line.
            position.FromNonSpaceCharCount(1);
            Assert.AreEqual(2, position.CharacterX);
            position.FromNonSpaceCharCount(4);
            Assert.AreEqual(8, position.CharacterX);

            position.SetCharacterPosition(0, 1); // Second line.
            position.FromNonSpaceCharCount(1);
            Assert.AreEqual(6, position.CharacterX);
            position.FromNonSpaceCharCount(3);
            Assert.AreEqual(11, position.CharacterX);
            position.FromNonSpaceCharCount(5);
            Assert.AreEqual(17, position.CharacterX);
        }