コード例 #1
0
        public static SortDirection GetOrderDirection(JournalSortMode newSortMode, JournalSortMode currentSortMode, SortDirection sortDirection)
        {
            if (currentSortMode == newSortMode)
            {
                return(sortDirection == SortDirection.Ascending ? SortDirection.Descending : SortDirection.Ascending);
            }

            return(DefaultSortDirectionJournal[newSortMode]);
        }
コード例 #2
0
        public static SortDirection GetOrderDirection(JournalSortMode newSortMode, JournalSortMode currentSortMode, SortDirection sortDirection)
        {
            if (currentSortMode == newSortMode)
            {
                return sortDirection == SortDirection.Ascending ? SortDirection.Descending : SortDirection.Ascending;
            }

            return DefaultSortDirectionJournal[newSortMode];
        }
コード例 #3
0
        public void GetOrderDirectionWithJournalSortModeIsNotEqualToCurrentSortModeReturnsDefaultDirection(JournalSortMode newSortMode, JournalSortMode currentSortMode, SortDirection expectedSortDirection)
        {
            // Arrange

            // Act
            var orderDirection = UrlHelperExtensions.GetOrderDirection(newSortMode, currentSortMode, SortDirection.Ascending);

            // Assert
            Assert.Equal(expectedSortDirection, orderDirection);
        }
コード例 #4
0
        public void GetOrderDirectionWithJournalSortModeAndCurrentSortModeIsNewSortModeReturnsOppositeDirection(JournalSortMode sortMode, SortDirection sortDirection, SortDirection expectedSortDirection)
        {
            // Arrange
            var currentSortMode = sortMode;

            // Act
            var orderDirection = UrlHelperExtensions.GetOrderDirection(sortMode, currentSortMode, sortDirection);

            // Assert
            Assert.Equal(expectedSortDirection, orderDirection);
        }
コード例 #5
0
        public static string SortUrl(this UrlHelper helper, JournalSortMode newSortMode, JournalSortMode currentSortMode, SortDirection sortDirection)
        {
            var query = helper.RequestContext.HttpContext.Request.QueryString;
            var values = query.AllKeys.ToDictionary(key => key, key => (object)query[key]);

            values["SortBy"] = newSortMode;
            values["Sort"] = GetOrderDirection(newSortMode, currentSortMode, sortDirection);

            var routeValues = new RouteValueDictionary(values);
            return helper.Action(null, routeValues);
        }
コード例 #6
0
        public static string SortUrl(this UrlHelper helper, JournalSortMode newSortMode, JournalSortMode currentSortMode, SortDirection sortDirection)
        {
            var query  = helper.RequestContext.HttpContext.Request.QueryString;
            var values = query.AllKeys.ToDictionary(key => key, key => (object)query[key]);

            values["SortBy"] = newSortMode;
            values["Sort"]   = GetOrderDirection(newSortMode, currentSortMode, sortDirection);

            var routeValues = new RouteValueDictionary(values);

            return(helper.Action(null, routeValues));
        }
コード例 #7
0
        public void GetOrderDirectionWithJournalSortModeIsNotEqualToCurrentSortModeReturnsDefaultDirection(JournalSortMode newSortMode, JournalSortMode currentSortMode, SortDirection expectedSortDirection)
        {
            // Arrange

            // Act
            var orderDirection = UrlHelperExtensions.GetOrderDirection(newSortMode, currentSortMode, SortDirection.Ascending);

            // Assert
            Assert.Equal(expectedSortDirection, orderDirection);
        }
コード例 #8
0
        public void GetOrderDirectionWithJournalSortModeAndCurrentSortModeIsNewSortModeReturnsOppositeDirection(JournalSortMode sortMode, SortDirection sortDirection, SortDirection expectedSortDirection)
        {
            // Arrange
            var currentSortMode = sortMode;

            // Act
            var orderDirection = UrlHelperExtensions.GetOrderDirection(sortMode, currentSortMode, sortDirection);

            // Assert
            Assert.Equal(expectedSortDirection, orderDirection);
        }