nicTest.diff_match_patchTest.diff_linesToCharsTest C# (CSharp) Method

diff_linesToCharsTest() private method

private diff_linesToCharsTest ( ) : void
return void
    public void diff_linesToCharsTest() {
      diff_match_patchTest dmp = new diff_match_patchTest();
      // Convert lines down to characters.
      List<string> tmpVector = new List<string>();
      tmpVector.Add("");
      tmpVector.Add("alpha\n");
      tmpVector.Add("beta\n");
      Object[] result = dmp.diff_linesToChars("alpha\nbeta\nalpha\n", "beta\nalpha\nbeta\n");
      Assert.AreEqual("\u0001\u0002\u0001", result[0]);
      Assert.AreEqual("\u0002\u0001\u0002", result[1]);
      CollectionAssert.AreEqual(tmpVector, (List<string>)result[2]);

      tmpVector.Clear();
      tmpVector.Add("");
      tmpVector.Add("alpha\r\n");
      tmpVector.Add("beta\r\n");
      tmpVector.Add("\r\n");
      result = dmp.diff_linesToChars("", "alpha\r\nbeta\r\n\r\n\r\n");
      Assert.AreEqual("", result[0]);
      Assert.AreEqual("\u0001\u0002\u0003\u0003", result[1]);
      CollectionAssert.AreEqual(tmpVector, (List<string>)result[2]);

      tmpVector.Clear();
      tmpVector.Add("");
      tmpVector.Add("a");
      tmpVector.Add("b");
      result = dmp.diff_linesToChars("a", "b");
      Assert.AreEqual("\u0001", result[0]);
      Assert.AreEqual("\u0002", result[1]);
      CollectionAssert.AreEqual(tmpVector, (List<string>)result[2]);

      // More than 256 to reveal any 8-bit limitations.
      int n = 300;
      tmpVector.Clear();
      StringBuilder lineList = new StringBuilder();
      StringBuilder charList = new StringBuilder();
      for (int x = 1; x < n + 1; x++) {
        tmpVector.Add(x + "\n");
        lineList.Append(x + "\n");
        charList.Append(Convert.ToChar(x));
      }
      Assert.AreEqual(n, tmpVector.Count);
      string lines = lineList.ToString();
      string chars = charList.ToString();
      Assert.AreEqual(n, chars.Length);
      tmpVector.Insert(0, "");
      result = dmp.diff_linesToChars(lines, "");
      Assert.AreEqual(chars, result[0]);
      Assert.AreEqual("", result[1]);
      CollectionAssert.AreEqual(tmpVector, (List<string>)result[2]);
    }