public void FinalizeSortingTest()
        {
            var numbers = new int[5] {
                5, 4, 3, 2, 1
            };
            var expectedNumbers = new int[5] {
                1, 2, 3, 4, 5
            };
            var countingSorting = new CountingSorting(numbers);

            var biggestNumber = countingSorting.FindBiggestNumber();
            var occurences    = new int[biggestNumber + 1];

            countingSorting.FindOccurenceOfEachNumber(occurences);
            countingSorting.FindCumulativeCountOfEachOccurence(occurences, biggestNumber);
            var output = countingSorting.BuildOutput(occurences);

            // Act
            countingSorting.FinalizeSorting(output);

            // Assert
            Assert.Equal(new int[5] {
                1, 2, 3, 4, 5
            }, numbers);
        }
        public void Sort_PassEmptyArray_ReturnEmptyArray()
        {
            var countingSorting = new CountingSorting();
            var sortedArray     = countingSorting.Sort(_emptyArray, 0, _emptyArray.Length - 1, maxValue: 127);

            CollectionAssert.AreEqual(sortedArray, _emptyArray);
        }
        public void Sort_PassValidArray_ReturnSortedArray()
        {
            var countingSorting = new CountingSorting();
            var sortedArray     = countingSorting.Sort(_toSortArray, 0, _toSortArray.Length - 1, maxValue: 127);

            CollectionAssert.AreEqual(sortedArray, _referenceSortedArray);
        }
        public void Sort_PassOneElementArray_ReturnOneElementArray()
        {
            var countingSorting = new CountingSorting();
            var sortedArray     = countingSorting.Sort(_oneElementArray, 0, _oneElementArray.Length - 1, maxValue: 131);

            CollectionAssert.AreEqual(sortedArray, _oneElementArray);
        }
        public void InitializeCountArrayToZeroTest()
        {
            // Arrange
            var countArray = new int[5] {
                0, 0, 0, 0, 0
            };

            // Act
            var actual = new CountingSorting(new int[0]).InitializeCountArrayToZeros(5);

            // Assert
            Assert.Equal(countArray, actual);
        }
        public void FindBiggestNumberTest()
        {
            // Arrange
            var numbers = new int[5] {
                5, 4, 3, 2, 1
            };

            // Act
            var biggestNumber = new CountingSorting(numbers).FindBiggestNumber();

            // Assert
            Assert.Equal(5, biggestNumber);
        }
Esempio n. 7
0
        private void Application_Startup(object sender, StartupEventArgs e)
        {
            SQLRandomTableContent randomContent = new SQLRandomTableContent("Random", "random");
            ITable originalTable = new SQLTable(randomContent, randomContent.Numbers);
            SQLSortedTableContent sortedContent = new SQLSortedTableContent("Sorted", "sorted");
            ITable     sortedTable      = new SQLTable(sortedContent, sortedContent.Numbers);
            INumbers   originalNnumbers = new Numbers(originalTable);
            INumbers   sortedNnumbers   = new Numbers(sortedTable);
            ISorting   sorting          = new CountingSorting();
            ICore      core             = new Core(sorting, originalNnumbers, sortedNnumbers);
            MainWindow window           = new MainWindow(core);

            window.Show();
        }
        public void StoreCountOfEachNumberTest()
        {
            // Arrange
            var numbers = new int[5] {
                1, 1, 2, 2, 3
            };
            var biggestNumber = new CountingSorting(numbers).FindBiggestNumber();
            var countArray    = new int[biggestNumber + 1];

            // Act
            new CountingSorting(numbers).FindOccurenceOfEachNumber(countArray);

            // Assert
            Assert.Equal(new int[4] {
                0, 2, 2, 1
            }, countArray);
        }
Esempio n. 9
0
        public void CountingSorting_Test()
        {
            var rand = new Random();

            var maxValue = 200;

            var list = Enumerable
                       .Range(1, 10000)
                       .Select(x => rand.Next(maxValue))
                       .ToList();

            var actual = CountingSorting.Sort(list, maxValue);

            list.Sort();

            Assert.Equal(list, actual);
        }
        public void BuildOutputTest()
        {
            var numbers = new int[5] {
                1, 1, 2, 2, 3
            };
            var biggestNumber   = new CountingSorting(numbers).FindBiggestNumber();
            var occurences      = new int[biggestNumber + 1];
            var countingSorting = new CountingSorting(numbers);

            countingSorting.FindOccurenceOfEachNumber(occurences);

            // Act
            var actual = countingSorting.BuildOutput(occurences);

            // Assert
            Assert.Equal(new int[6] {
                1, 1, 0, 0, 0, 0
            }, actual);
        }
        public void FindCumulativeCountOfEachOccurenceTest()
        {
            // Arrange
            var numbers = new int[5] {
                1, 1, 2, 2, 3
            };
            var biggestNumber = new CountingSorting(numbers).FindBiggestNumber();
            var occurences    = new int[biggestNumber + 1];

            new CountingSorting(numbers).FindOccurenceOfEachNumber(occurences);

            // Act
            new CountingSorting(new int[0]).FindCumulativeCountOfEachOccurence(occurences, biggestNumber);

            // Assert
            Assert.Equal(new int[4] {
                0, 2, 4, 5
            }, occurences);
        }