public void diff_levenshteinTest()
        {
            var dmp = new diff_match_patchTest();
            var diffs = new List<Diff>{
                new Diff(Operation.Delete, "abc"),
                new Diff(Operation.Insert, "1234"),
                new Diff(Operation.Equal, "xyz")
            };
            Assert.AreEqual(4, dmp.diff_levenshtein(diffs), "diff_levenshtein: Levenshtein with trailing equality.");

            diffs = new List<Diff>{
                new Diff(Operation.Equal, "xyz"),
                new Diff(Operation.Delete, "abc"),
                new Diff(Operation.Insert, "1234")
            };
            Assert.AreEqual(4, dmp.diff_levenshtein(diffs), "diff_levenshtein: Levenshtein with leading equality.");

            diffs = new List<Diff>{
                new Diff(Operation.Delete, "abc"),
                new Diff(Operation.Equal, "xyz"),
                new Diff(Operation.Insert, "1234")
            };
            Assert.AreEqual(7, dmp.diff_levenshtein(diffs), "diff_levenshtein: Levenshtein with middle equality.");
        }
    public void diff_levenshteinTest() {
      diff_match_patchTest dmp = new diff_match_patchTest();
      List<Diff> diffs = new List<Diff> {
          new Diff(Operation.DELETE, "abc"),
          new Diff(Operation.INSERT, "1234"),
          new Diff(Operation.EQUAL, "xyz")};
      Assert.AreEqual(4, dmp.diff_levenshtein(diffs), "diff_levenshtein: Levenshtein with trailing equality.");

      diffs = new List<Diff> {
          new Diff(Operation.EQUAL, "xyz"),
          new Diff(Operation.DELETE, "abc"),
          new Diff(Operation.INSERT, "1234")};
      Assert.AreEqual(4, dmp.diff_levenshtein(diffs), "diff_levenshtein: Levenshtein with leading equality.");

      diffs = new List<Diff> {
          new Diff(Operation.DELETE, "abc"),
          new Diff(Operation.EQUAL, "xyz"),
          new Diff(Operation.INSERT, "1234")};
      Assert.AreEqual(7, dmp.diff_levenshtein(diffs), "diff_levenshtein: Levenshtein with middle equality.");
    }