public void QuickSortMaxAbsIncreasingDelegateTest()
        {
            int[][] expected = new int[][]
            {
                null,
                null,
                null,
                null,
                array[2],
                array[6],
                array[5],
                array[4],
                array[1],
                array[0],
                array[8]
            };

            QuickSorter qs = new QuickSorter();
            MaxAbsElementsIncreasing st = new MaxAbsElementsIncreasing();
            array.Sort(qs, ((IComparer)st).Compare);
            int[][] actual = array;

            CollectionAssert.AreEqual(expected, actual);
        }
        public void QuickSortMaxAbsDecreasingInterfaceTest()
        {
            int[][] expected = new int[][]
            {                
                array[8],
                array[0],
                array[1],
                array[4],
                array[5],
                array[6],
                array[2],
                null,
                null,
                null,
                null 
            };

            QuickSorter qs = new QuickSorter();
            MaxAbsElementsDecreasing st = new MaxAbsElementsDecreasing();
            array.Sort(qs, st);
            int[][] actual = array;

            CollectionAssert.AreEqual(expected, actual);
        }
 public void ArgumentNullExceptionTest2()
 {
     QuickSorter qs = new QuickSorter();
     ElementsSumDecreasing st = null;
     array.Sort(qs, st);
 }
 public void NullRefferenceExceptionTest()
 {
     int[][] testArray = null;
     QuickSorter qs = new QuickSorter();
     ElementsSumDecreasing st = new ElementsSumDecreasing();
     testArray.Sort(qs, st);
 }
        public void QuickSortRowsLengthDecreasingDelegateTest()
        {
            int[][] expected = new int[][]
            { 
                array[4],
                array[0],
                array[1],
                array[5],
                array[8],
                array[6], 
                array[2],
                null,
                null,
                null,
                null
            };

            QuickSorter qs = new QuickSorter();

            array.Sort(qs, Comparators.CompareRowsLengthDecreasing);
            int[][] actual = array;

            CollectionAssert.AreEqual(expected, actual);
        }