private static TestPatch CreateSmallPatchExample(bool reverse = false) { var header = reverse ? "diff --git a/thisisatestb.txt b/thisisatesta.txt" : "diff --git b/thisisatesta.txt a/thisisatestb.txt"; const string index = "index 5e4dce2..5eb1e6f 100644"; const string fileNameA = "thisisatesta.txt"; const string fileNameB = "thisisatestb.txt"; var patchText = new StringBuilder(); var patchOutput = new StringBuilder(); AppendHeaderLine(header); AppendHeaderLine(index); if (reverse) { AppendHeaderLine("--- b/" + fileNameB); AppendHeaderLine("+++ a/" + fileNameA); } else { AppendHeaderLine("--- a/" + fileNameA); AppendHeaderLine("+++ b/" + fileNameB); } AppendDiffLine("@@ -1,2 +1,2 @@"); AppendDiffLine(" iiiiii"); AppendDiffLine("-ąśdkjaldskjlaksd"); AppendDiffLine("+changed again€"); var patch = new Patch(header, index, PatchFileType.Text, fileNameA, fileNameB, false, PatchChangeType.ChangeFile, patchText.ToString()); return(new TestPatch(patch, patchOutput.ToString())); void AppendHeaderLine(string line) { patchText.Append(line).Append("\n"); patchOutput.Append(VsrModule.ReEncodeString(line, VsrModule.SystemEncoding, VsrModule.LosslessEncoding)); patchOutput.Append("\n"); } void AppendDiffLine(string line) { patchText.Append(line).Append("\n"); patchOutput.Append(VsrModule.ReEncodeString(line, Encoding.UTF8, VsrModule.LosslessEncoding)); patchOutput.Append("\n"); } }