public void Sort_10ItemDataSet_ComparisonCountsMatches() { //Arrange var fileLocation = @"..\..\TestData\input_dgrcode_06_10.txt"; if (!File.Exists(fileLocation)) { Assert.Fail("File not found"); } var lines = File.ReadAllLines(fileLocation); var unsortedCollection = lines.Select(line => Convert.ToInt32(line)).ToList(); IPivotPositionFinder <int> pivotPositionFinder = new GetMedianOfThreeGetRandomIndexAsPivotImpl <int>(); var sorter = new QuickSortImpl <int>(pivotPositionFinder); var expectedComparison = 21; //Act var sortedResultActual = sorter.Sort(unsortedCollection); //Assert Assert.AreEqual(expectedComparison, sorter.ComparisonCount); }
public void Sort_UsingMedianOfThreeGetRandomIndexAsPivot_ExpectedComparisonCountMatches() { //Arrange var fileLocation = @"..\..\TestData\QuickSort.txt"; if (!File.Exists(fileLocation)) { Assert.Fail("File not found"); } var lines = File.ReadAllLines(fileLocation); var unsortedCollection = lines.Select(line => Convert.ToInt32(line)).ToList(); IPivotPositionFinder <int> pivotPositionFinder = new GetMedianOfThreeGetRandomIndexAsPivotImpl <int>(); var sorter = new QuickSortImpl <int>(pivotPositionFinder); var expectedComparison = 138382; //Act var sortedResultActual = sorter.Sort(unsortedCollection); //Assert Assert.AreEqual(expectedComparison, sorter.ComparisonCount); CollectionAssert.AreEqual(unsortedCollection.OrderBy(item => item).ToList(), sortedResultActual.ToList()); }