public void ShouldCalculateTotalPages(int page, int totalResults, int pagesToShow, int resultsOnPage) { var searchResults = new PagedSearchResults(page, totalResults, pagesToShow, resultsOnPage); var totalPages = Math.Ceiling(totalResults / (double)resultsOnPage); searchResults.TotalPagesCount.ShouldBeEquivalentTo(totalPages); }
public void LastPageEdgeCase(int page, int totalResults, int pagesToShow, int resultsOnPage) { page = 1; var searchResults = new PagedSearchResults(page, totalResults, pagesToShow, resultsOnPage); searchResults.LastPage.Should().BeOneOf(pagesToShow, searchResults.TotalPagesCount); }
public async Task T011_It_can_get_resources_back_from_a_search_a_page_at_a_time() { // Arrange var it = IdmNetClientFactory.BuildClient(); var criteria = new SearchCriteria("/ObjectTypeDescription"); criteria.Selection.Add("DisplayName"); PagedSearchResults pagedSearchResults = await it.GetPagedResultsAsync(criteria, 5); PagingContext pagingContext = pagedSearchResults.PagingContext; // Act var pagedResults = await it.GetPagedResultsAsync(5, pagingContext); // Assert Assert.AreEqual(5, pagedResults.Results.Count); Assert.IsTrue(pagedResults.Results[0].DisplayName.Length > 0); Assert.AreEqual("/ObjectTypeDescription", pagedResults.PagingContext.Filter); Assert.AreEqual(10, pagedResults.PagingContext.CurrentIndex); Assert.AreEqual("Forwards", pagedResults.PagingContext.EnumerationDirection); Assert.AreEqual("9999-12-31T23:59:59.9999999", pagedResults.PagingContext.Expires); Assert.AreEqual("ObjectID", pagedResults.PagingContext.Selection[0]); Assert.AreEqual("ObjectType", pagedResults.PagingContext.Selection[1]); Assert.AreEqual("DisplayName", pagedResults.PagingContext.Selection[2]); Assert.AreEqual("DisplayName", pagedResults.PagingContext.Sorting.SortingAttributes[0].AttributeName); Assert.AreEqual(true, pagedResults.PagingContext.Sorting.SortingAttributes[0].Ascending); Assert.AreEqual(null, pagedResults.EndOfSequence); Assert.AreEqual(true, pagedResults.Items is XmlNode[]); Assert.AreEqual(5, ((XmlNode[])(pagedResults.Items)).Length); }
public ActionResult PagedSearchResults(string query, int?page) { var pagingSettings = this.renderingPropertiesRepository.Get <PagingSettings>(); var pageNumber = page ?? 1; var results = this.GetSearchResults(new SearchQuery { Query = query, Page = pageNumber, ResultsOnPage = pagingSettings.ResultsOnPage }); var pageble = new PagedSearchResults(pageNumber, results.TotalNumberOfResults, pagingSettings.PagesToShow, pagingSettings.ResultsOnPage); pageble.Query = query; pageble.Results = results; return(this.View(pageble)); }
private async Task SetupGetStar(SearchCriteria criteria) { criteria.Selection = new List <string> { "ObjectType" }; PullInfo objectTypePullInfo = await PreparePagedSearchAsync(criteria, 1); PagingContext objectTypePagingContext = objectTypePullInfo.PagingContext; PagedSearchResults objectTypeResults = await GetPagedResultsAsync(1, objectTypePagingContext); string objectType = objectTypeResults.Results[0].ObjectType; criteria.Selection = await GetAttributeNamesForObjectType(objectType); }
public async Task T010_It_can_do_a_search_and_return_the_first_page_of_results_and_info_on_retrieving_subsequent_pages_if_any() { // Arrange var it = IdmNetClientFactory.BuildClient(); var criteria = new SearchCriteria("/ObjectTypeDescription"); criteria.Selection.Add("DisplayName"); // Act PagedSearchResults result = await it.GetPagedResultsAsync(criteria, 5); // Assert Assert.AreEqual("/ObjectTypeDescription", result.PagingContext.Filter); Assert.AreEqual(5, result.PagingContext.CurrentIndex); Assert.AreEqual("Forwards", result.PagingContext.EnumerationDirection); Assert.AreEqual("9999-12-31T23:59:59.9999999", result.PagingContext.Expires); Assert.AreEqual("ObjectID", result.PagingContext.Selection[0]); Assert.AreEqual("ObjectType", result.PagingContext.Selection[1]); Assert.AreEqual("DisplayName", result.PagingContext.Selection[2]); Assert.AreEqual("DisplayName", result.PagingContext.Sorting.SortingAttributes[0].AttributeName); Assert.AreEqual(true, result.PagingContext.Sorting.SortingAttributes[0].Ascending); Assert.AreEqual("ObjectTypeDescription", result.Results[0].ObjectType); }
public void LastPageShouldNotBeGreaterThanTotalPages(int page, int totalResults, int pagesToShow, int resultsOnPage) { var searchResults = new PagedSearchResults(page, totalResults, pagesToShow, resultsOnPage); searchResults.FirstPage.Should().BeLessOrEqualTo(searchResults.TotalPagesCount); }
public void FirstPageShouldBeGreaterThanZero(int page, int totalResults, int pagesToShow, int resultsOnPage) { var searchResults = new PagedSearchResults(page, totalResults, pagesToShow, resultsOnPage); searchResults.FirstPage.Should().BeGreaterThan(0); }
public void FirstPageShouldBeLessThanLast(int page, int totalResults, int pagesToShow, int resultsOnPage) { var searchResults = new PagedSearchResults(page, totalResults, pagesToShow, resultsOnPage); searchResults.FirstPage.Should().BeLessOrEqualTo(searchResults.LastPage); }