示例#1
0
 public void LineBuffer_CharByChar()
 {
     var lineBuffer = new LineBuffer();
     Verify(lineBuffer, "a", new string[] { });
     Verify(lineBuffer, "b", new string[] { });
     Verify(lineBuffer, "c", new string[] { });
     Verify(lineBuffer, "d", new string[] { });
     Verify(lineBuffer, "e", new string[] { });
     Verify(lineBuffer, "\n", new string[] { "abcde" });
 }
示例#2
0
        private void Verify(LineBuffer lineBuffer, string textToAdd, string[] expectedOutput)
        {
            IEnumerable<string> result;
            lineBuffer.ProcessText(textToAdd, out result);
            string[] r = result.ToArray();

            Assert.AreEqual<int>(expectedOutput.Length, r.Length);

            for (int i = 0; i < expectedOutput.Length; i++)
            {
                Assert.AreEqual<string>(expectedOutput[i], r[i]);
            }
        }
示例#3
0
 public void LineBuffer_EmptyLineCR()
 {
     var lineBuffer = new LineBuffer();
     Verify(lineBuffer, "hello", new string[] { });
     Verify(lineBuffer, "\r\n\nworld\r\n", new string[] { "hello", "", "world" });
 }
示例#4
0
 public void LineBuffer_SplitLine2()
 {
     var lineBuffer = new LineBuffer();
     Verify(lineBuffer, "hello\nworld\nmore text", new string[] { "hello", "world" });
     Verify(lineBuffer, "comes now\n", new string[] { "more textcomes now" });
 }
示例#5
0
 public void LineBuffer_MultiLine()
 {
     var lineBuffer = new LineBuffer();
     Verify(lineBuffer, "hello\nworld\n!\n", new string[] { "hello", "world", "!" });
 }
示例#6
0
 public void LineBuffer_TwoParts()
 {
     var lineBuffer = new LineBuffer();
     Verify(lineBuffer, "hello", new string[] { });
     Verify(lineBuffer, "\n", new string[] { "hello" });
 }
示例#7
0
 public void LineBuffer_FullLineWithCR()
 {
     var lineBuffer = new LineBuffer();
     Verify(lineBuffer, "hello\r\n", new string[] { "hello" });
 }