public List<string> Convert(IMergedLine line) { var result = new List<string>(); if (line.Status == LineStatus.Survived) { result.Add(line.Text); } if (line.IsHaveConflict) { result.Add(line.MergeConflict.GetFrameAbove()); result.AddRange(line.MergeConflict.FirstVariantLines); result.Add(line.MergeConflict.GetFrameBetween()); result.AddRange(line.MergeConflict.SecondVariantLines); result.Add(line.MergeConflict.GetFrameBelow()); } else { if (line.AddedLinesAfter.Any()) { result.AddRange(line.AddedLinesAfter); } } return result; }
public void CoreConvertTest(IMergedLine line, List<string> expected) { // arraange var mltslt = new MergedLineToStrListConverter(); // act var result = mltslt.Convert(line); //assert Assert.AreEqual(expected.Count, result.Count, "Количество строк"); for (int i = 0; i < result.Count; i++) { Assert.AreEqual(expected[i], result[i], "Ожидаемая строка"); } }