public int[] OptimizedVersion()
        {
            int[] randomNumbers = DataGenerator.GenerateRandomNumbers();

            GenericArraySorter.IntrospectiveSort(randomNumbers, 0, randomNumbers.Length - 1, new ExperimentalComparer());

            return(randomNumbers);
        }
Example #2
0
        public void Sort_UnsortedList_BecomeSorted()
        {
            var arraySorter = new GenericArraySorter <string>(new FakeSurnameComparator());

            string[] namesList = { "Phil Spencer", "Steve Jobs", "Aaron Jobs" };
            string[] result    = { "Aaron Jobs", "Phil Spencer", "Steve Jobs" };

            arraySorter.Sort(namesList);

            Assert.That(result, Is.EqualTo(namesList));
        }
        public void WhenNoRulesAreSpecifiedTheDefaultComparerShouldBeUsed()
        {
            var randomNumbers     = GenerateRandomNumbers();
            var sortedByArraySort = randomNumbers.ToArray();

            Array.Sort(sortedByArraySort);

            var sortedByOptimizedArraySort = randomNumbers.ToArray();

            GenericArraySorter.IntrospectiveSort(sortedByOptimizedArraySort, 0, randomNumbers.Length - 1, new ExperimentalComparer());

            CollectionAssert.AreEqual(sortedByArraySort, sortedByOptimizedArraySort);
        }
Example #4
0
        public void Sort_NullList_ThrowsException()
        {
            var sorter = new GenericArraySorter <string>(new FakeSurnameComparator());

            Assert.That(() => sorter.Sort(null), Throws.Exception);
        }
Example #5
0
        public int[] Integers()
        {
            GenericArraySorter.IntrospectiveSort(_smallValueTypes, 0, _smallValueTypes.Length - 1, new ArraySortersBenchmarks.ExperimentalComparer());

            return(_smallValueTypes);
        }