public void Should_SortArray_When_OnlyOneSwapIsRequired(int[] asc, int[] desc) { var question = new Question_ModifiedBubbleSort(); DoTest(question, asc, desc); Assert.Equal(1, question.LastSwapCount); }
public void Should_NotSortArray_When_IsSortedAlready(int[] asc, int[] desc) { var question = new Question_ModifiedBubbleSort(); DoTest(question, asc, desc); Assert.Equal(0, question.LastSwapCount); }
private void DoTest <T>(Question_ModifiedBubbleSort question, T[] ascArray, T[] descArray) where T : IComparable { Output.WriteLine("Ascending Before: " + String.Join(", ", ascArray)); Output.WriteLine("Descending Before: " + String.Join(", ", descArray)); question.BubbleSort(ascArray, false); question.BubbleSort(descArray, true); Output.WriteLine("Ascending After: " + String.Join(", ", ascArray)); Output.WriteLine("Descending After: " + String.Join(", ", descArray)); Assert.True(IsSorted(ascArray)); Assert.True(IsSorted(descArray, true)); }
public void Should_Sort_When_ElementsAreOutOfOrder(int[] asc, int[] desc) { var question = new Question_ModifiedBubbleSort(); DoTest(question, asc, desc); }