public void PageOptions_Construct_PageCount()
        {
            // arrange / act
            PageOptions options = PageOptionsBuilder.Build(100, 1, 5);

            // assert
            Assert.Equal(20, options.PageCount);
        }
        public void PageOptions_Construct_Defaults()
        {
            // arrange / act
            PageOptions options = PageOptionsBuilder.Build(100);

            // assert
            Assert.Equal(1, options.PageNumber);
            Assert.Equal(10, options.PageSize);
        }
        public void PageOptions_Construct_PageNumberOver()
        {
            // arrange / act
            PageOptions options = PageOptionsBuilder.Build(100, 25, 5);

            // assert
            Assert.Equal(options.PageNumber, options.PageCount);
            Assert.Equal(20, options.PageCount);
        }
        public void PageOptions_Construct_InvalidItemCount()
        {
            // arrange / act
            PageOptions options = PageOptionsBuilder.Build(-100, 1, 5);

            // assert
            Assert.Equal(0, options.PageCount);
            Assert.Equal(0, options.ItemCount);
        }
        public void PageOptions_Construct_InvalidPageSize()
        {
            // arrange / act
            PageOptions options1 = PageOptionsBuilder.Build(100, 1, 0);
            PageOptions options2 = PageOptionsBuilder.Build(100, 1, -5);

            // assert
            Assert.Equal(10, options1.PageSize);
            Assert.Equal(10, options2.PageSize);
        }
        public void PageOptions_Construct_InvalidPageNumber()
        {
            // arrange / act
            PageOptions options1 = PageOptionsBuilder.Build(100, 0, 5);
            PageOptions options2 = PageOptionsBuilder.Build(100, -5, 5);

            // assert
            Assert.Equal(1, options1.PageNumber);
            Assert.Equal(1, options2.PageNumber);
        }
예제 #7
0
 /// <summary>
 /// Contructor - Set configuration for mounting paged list
 /// </summary>
 /// <param name="OriginUrl">Origin url - full or only path</param>
 /// <param name="itemCount">Items count total </param>
 /// <param name="pageNumber">Current page</param>
 /// <param name="pageSize">Page max size</param>
 /// <param name="navigatorSize">Numeric navigator size, if null, this is not generated </param>
 public PagedList(
     string originUrl,
     long itemCount,
     int pageNumber,
     int pageSize,
     int?navigatorSize = null
     )
 {
     this.Options   = PageOptionsBuilder.Build(itemCount, pageNumber, pageSize);
     originUrl      = UrlHelper.GetUrlBaseToPagingWithoutPagingParams(originUrl, pageSize);
     this.Navigator = UrlNavigatorBuilder.Build(originUrl, Options.PageNumber, Options.PageCount, navigatorSize);
 }