public void SortJaggedArray_EmptyArray_ArgumentNullExceptionExpected()
        {
            int[][] emptyJaggedArray = new int[3][];

            SortByMaxSumDesc comparer = new SortByMaxSumDesc();

            JaggedArraySorting.SortJaggedArray(emptyJaggedArray, comparer);
        }
        public void SortJaggedArray_UnsortedJaggedArray_SortedByMaximalRawSumInDescOrderArray()
        {
            int[][] expectedArray = new int[][]
            {
                new int[] { 11, 22, -6, 26, -4 },
                new int[] { 8, 15 },
                new int[] { 0, 2, 4, 6, 11 },
                new int[] { 1, 3, 5, 7 }
            };

            SortByMaxSumDesc comparer = new SortByMaxSumDesc();

            JaggedArraySorting.SortJaggedArray(jaggedArray, comparer);

            for (int i = 0; i < jaggedArray.Length; i++)
            {
                CollectionAssert.AreEqual(expectedArray[i], jaggedArray[i]);
            }
        }
        public void SortJaggedArray_EmptyComparer_ArgumentNullExceptionExpected()
        {
            SortByMaxSumDesc comparer = null;

            JaggedArraySorting.SortJaggedArray(jaggedArray, comparer);
        }
        public void SortJaggedArray_NullArray_ArgumentNullExceptionExpected()
        {
            SortByMaxSumDesc comparer = new SortByMaxSumDesc();

            JaggedArraySorting.SortJaggedArray(null, comparer);
        }