static void WriteFiles(string fileLeft, string fileRight, DateTime baseTime, ModifiedTimes m, Content c) { var addTime = (m == ModifiedTimes.MTime) ? 1 : 0; var contentsLeft = fileLeft; var contentsRight = contentsLeft; if (c == Content.AltText) { // replace first char with * contentsRight = "*" + contentsRight.Substring(1); } else if (c == Content.AddText) { contentsRight += "***"; } TestUtil.IsTrue(!File.Exists(fileLeft) && !File.Exists(fileRight)); File.WriteAllText(fileLeft, contentsLeft); File.SetLastWriteTimeUtc(fileLeft, baseTime); File.WriteAllText(fileRight, contentsRight); File.SetLastWriteTimeUtc(fileRight, baseTime.AddHours(addTime)); }
static int Go(string dirLeft, string dirRight, DateTime baseTime, ModifiedTimes m, Content c, Filename f, ExtraCopies copies) { var baseName = m.ToString() + c.ToString() + f.ToString() + copies.ToString(); var fileLeft = Path.Combine( dirLeft, baseName + ".a"); var fileRight = Path.Combine( dirRight, baseName + (f == Filename.MName ? ".z" : ".a")); WriteFiles(fileLeft, fileRight, baseTime, m, c); switch (copies) { case ExtraCopies.OneOnLeft: File.Copy(fileLeft, fileLeft + "_1"); break; case ExtraCopies.OneOnRight: File.Copy(fileRight, fileRight + "_1"); break; } return(copies == ExtraCopies.None ? 2 : 3); }