public void RenderExpected_MoreThanSampleRowsAndMaxRowsCountWithSpecificFailureReportProfile_ReturnEachRowAndHeaderAndSeparation() { var rowCount = 120; var threshold = rowCount - 20; var max = threshold / 2; var list = new List <string>(); for (int i = 0; i < rowCount; i++) { list.Add(String.Format("Item {0:00}", i)); } var profile = Mock.Of <IFailureReportProfile>(p => p.MaxSampleItem == max && p.ThresholdSampleItem == threshold && p.ExpectedSet == FailureReportSetType.Sample ); var factory = new SamplersFactory <string>(); var samplers = factory.Instantiate(profile); var msg = new ItemsMessageMarkdown(samplers); msg.Build(list, null, null); var value = msg.RenderExpected(); var lines = value.Replace("\n", string.Empty).Split('\r'); Assert.That(lines.Count(l => l.Contains("*")), Is.EqualTo(max)); }
public void RenderExpected_OneRow_ReturnCorrectNumberOfRowsOnTopWithoutPlurial() { var list = new List <string>(); list.Add("Item 01"); var factory = new SamplersFactory <string>(); var samplers = factory.Instantiate(FailureReportProfile.Default); var msg = new ItemsMessageMarkdown(samplers); msg.Build(list, null, null); var value = msg.RenderExpected(); var lines = value.Replace("\n", string.Empty).Split('\r'); var firstLine = lines[0]; Assert.That(firstLine, Is.EqualTo("Set of 1 item")); }
public void RenderExpected_LessThanMaxRowsCount_DoesntDisplaySkippedRow(int rowCount) { var list = new List <string>(); for (int i = 0; i < rowCount; i++) { list.Add(String.Format("Item {0:00}", i)); } var factory = new SamplersFactory <string>(); var samplers = factory.Instantiate(FailureReportProfile.Default); var msg = new ItemsMessageMarkdown(samplers); msg.Build(list, null, null); var value = msg.RenderExpected(); Assert.That(value, Is.Not.StringContaining(" others not displayed.")); }
public void RenderExpected_MoreThanMaxRowsCount_ReturnCorrectNumberOfRowsOnTop() { var list = new List <string>(); for (int i = 0; i < 20; i++) { list.Add(String.Format("Item {0:00}", i)); } var factory = new SamplersFactory <string>(); var samplers = factory.Instantiate(FailureReportProfile.Default); var msg = new ItemsMessageMarkdown(samplers); msg.Build(list, null, null); var value = msg.RenderExpected(); var lines = value.Replace("\n", string.Empty).Split('\r'); var firstLine = lines[0]; Assert.That(firstLine, Is.EqualTo("Set of 20 items")); }
public void RenderExpected_MoreThanMaxRowsCount_ReturnSampleRowsCountAndHeaderAndSeparation() { var list = new List <string>(); for (int i = 0; i < 20; i++) { list.Add(String.Format("Item {0:00}", i)); } var factory = new SamplersFactory <string>(); var samplers = factory.Instantiate(FailureReportProfile.Default); var msg = new ItemsMessageMarkdown(samplers); msg.Build(list, null, null); var value = msg.RenderExpected(); var lines = value.Replace("\n", string.Empty).Split('\r'); Assert.That(lines.Count(l => l.Contains("*")), Is.EqualTo(10)); }
public void RenderExpected_MoreThanMaxRowsCount_ReturnCorrectCountOfSkippedRow() { var list = new List <string>(); for (int i = 0; i < 22; i++) { list.Add(String.Format("Item {0:00}", i)); } var factory = new SamplersFactory <string>(); var samplers = factory.Instantiate(FailureReportProfile.Default); var msg = new ItemsMessageMarkdown(samplers); msg.Build(list, null, null); var value = msg.RenderExpected(); var lines = value.Replace("\n", string.Empty).Split('\r'); //Not exactly the last line but the previous due to paragraph rendering. var lastLine = lines.Reverse().ElementAt(1); Assert.That(lastLine, Is.EqualTo("... and 12 others not displayed.")); }