コード例 #1
0
        public void Sort_OutOfBoundsStringOfNumbers_ShouldReturnNull()
        {
            var    sortingService  = SetupSortingServiceForSort_ShouldReturnNull();
            string stringOfNumbers = "5 464 65 85 545468486846153111525416841681616816816887496126181919861919819189611686161623166416845";

            SortResponseDTO expectedReult = null;

            var actualResult = sortingService.Sort(stringOfNumbers);

            Assert.Equal(expectedReult, actualResult);
        }
コード例 #2
0
        public void Sort_CorruptStringOfNumbers_ShouldReturnNull()
        {
            var    sortingService  = SetupSortingServiceForSort_ShouldReturnNull();
            string stringOfNumbers = "5 464 65 aswf87 45";

            SortResponseDTO expectedReult = null;

            var actualResult = sortingService.Sort(stringOfNumbers);

            Assert.Equal(expectedReult, actualResult);
        }
コード例 #3
0
        public void Sort_ShouldReturnSortResponseDTO()
        {
            string      stringOfNumbers       = "5 464 65 85 5454";
            string      sortedStringOfNumbers = "5 65 85 464 5454";
            List <long> numberList            = new List <long>()
            {
                5, 464, 65, 85, 5454
            };
            List <long> sortedNumberList = new List <long>()
            {
                5, 65, 85, 464, 5454
            };

            var sortingService = SetupSortingServiceForSort(sortedStringOfNumbers, numberList, sortedNumberList);

            SortResponseDTO expectedReult = new SortResponseDTO
            {
                SortedNumbers        = "5 65 85 464 5454",
                AlgortihmPerformance = new List <SortAlgorithmResponseDTO>()
                {
                    new SortAlgorithmResponseDTO()
                    {
                        AlgorithmTitle = Enum.GetName(typeof(ESortingAlgorithms), ESortingAlgorithms.BubbleSort), DurationInMiliseconds = It.IsAny <double>()
                    },
                    new SortAlgorithmResponseDTO()
                    {
                        AlgorithmTitle = Enum.GetName(typeof(ESortingAlgorithms), ESortingAlgorithms.InsertionSort), DurationInMiliseconds = It.IsAny <double>()
                    },
                    new SortAlgorithmResponseDTO()
                    {
                        AlgorithmTitle = Enum.GetName(typeof(ESortingAlgorithms), ESortingAlgorithms.QuickSort), DurationInMiliseconds = It.IsAny <double>()
                    }
                }
            };

            var actualResult = sortingService.Sort(stringOfNumbers);

            Assert.Equal(expectedReult.SortedNumbers, actualResult.SortedNumbers);
            Assert.Equal(expectedReult.AlgortihmPerformance.Select(x => x.AlgorithmTitle).ToList(), actualResult.AlgortihmPerformance.Select(x => x.AlgorithmTitle).ToList());
            Assert.True(actualResult.AlgortihmPerformance.All(x => x.DurationInMiliseconds != default));
        }