Example #1
0
        public async Task ApplySortingAsync_WithInvalidSorter_Should_Throw(SorterTypes sortType)
        {
            var value  = "bacsdasdwea";
            var sorter = new SortingService();
            var model  = new FormsMVCModel {
                Input = value, SortType = sortType
            };

            var task = Task.Run(() => sorter.ApplySortingAsync(model));

            await Assert.ThrowsExceptionAsync <TypeLoadException>(() => task);
        }
Example #2
0
        public void ApplySorting_WithInvalidSorter_Should_Throw(SorterTypes sortType)
        {
            var value  = "bacsdasdwea";
            var sorter = new SortingService();
            var model  = new FormsMVCModel {
                Input = value, SortType = sortType
            };

            Action act = () => sorter.ApplySorting(model);

            Assert.ThrowsException <TypeLoadException>(act);
        }
Example #3
0
        public async Task ApplySortingAsync_Should_Sort_Input(SorterTypes sortType)
        {
            var value         = "bacsdasdwea";
            var expectedValue = "aaabcddessw";
            var sorter        = new SortingService();
            var model         = new FormsMVCModel {
                Input = value, SortType = sortType
            };

            var result = await sorter.ApplySortingAsync(model);

            Assert.AreEqual(expectedValue, result);
        }
Example #4
0
        private SorterContext SorterContextProvider(SorterTypes sortType)
        {
            switch (sortType)
            {
            case SorterTypes.Bubble:
                return(new SorterContext(new BubbleSorter()));

            case SorterTypes.Merge:
                return(new SorterContext(new MergeSorter()));

            default:
                throw new TypeLoadException("Cannot identify sorting type");
            }
        }