public void ElementsSumIncreasingFirstArraySumLowerTest()
        {
            int[] arr1 = new int[] { 1, 2, 3 };
            int[] arr2 = new int[] { 4,5,6};
            ElementsSumIncreasing st = new ElementsSumIncreasing();
            int expected = ((IComparer)st).Compare(arr1, arr2);

            Assert.AreEqual(expected, -1);
        }
        public void ElementsSumIncreasingBothArraysNullTest()
        {
            int[] arr1 = null;
            int[] arr2 = null;
            ElementsSumIncreasing st = new ElementsSumIncreasing();
            int expected = ((IComparer)st).Compare(arr1, arr2);

            Assert.AreEqual(expected, 0);
        }
        public void ElementsSumIncreasingSecondArrayEmptyTest()
        {
            int[] arr1 = new int[] {1,2,3};
            int[] arr2 = new int[] { };
            ElementsSumIncreasing st = new ElementsSumIncreasing();
            int expected = ((IComparer)st).Compare(arr1, arr2);

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

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

            CollectionAssert.AreEqual(expected, actual);
        }