public void Get_LPC_Report_List_Paging_Data() { int pageSize = 20; var dataSet = LpcReportDataSource.GetLpcReportsList(pageSize).AsQueryable(); var lpcRepository = new Mock <ILpcReportRepository>(); lpcRepository.Setup(b => b.GetCount(It.IsAny <Expression <Func <LpcReport, bool> > >())) .Returns(pageSize); lpcRepository.Setup(b => b.GetPage(It.IsAny <Expression <Func <LpcReport, bool> > >(), 1, 1, null)) .Returns(dataSet); var service = GetLpcReportService(lpcRepository.Object); // Act var request = new LpcReportRequest { PageSize = pageSize, Page = 1 }; var sut = service.GetLPCReports(request); // Assert Assert.NotNull(sut); Assert.IsAssignableFrom <PagedResultModel <LpcReportModel> >(sut); Assert.Equal(sut.Results.Count, sut.Results.Count); Assert.Equal(1, sut.From); Assert.Equal(pageSize, sut.To); }
public void Can_Get_Filtered_Paging_List() { var request = new LpcReportRequest { PageSize = 20, Page = 1, Borough = "Manhattan", }; var results = _lpcReportService.GetLPCReports(request).Results; Assert.Equal(request.PageSize, results.Count); }
public PagedResultModel <LpcReportModel> GetLPCReports(LpcReportRequest request) { var predicate = PredicateBuilder.True <LpcReport>(); if (!string.IsNullOrEmpty(request.Neighborhood)) { predicate = predicate.And(x => x.LPCLocation.Neighborhood == request.Neighborhood); } if (!string.IsNullOrEmpty(request.Borough)) { predicate = predicate.And(x => x.Borough == request.Borough); } if (!string.IsNullOrEmpty(request.ObjectType)) { predicate = predicate.And(x => x.ObjectType == request.ObjectType); } var sortModel = new SortModel { SortColumn = !string.IsNullOrEmpty(request.SortColumn) ? request.SortColumn : null, SortOrder = !string.IsNullOrEmpty(request.SortOrder) ? request.SortOrder : null }; var sortingList = new List <SortModel> { sortModel }; int totalCount = _lpcReportRepository.GetCount(predicate); var results = _lpcReportRepository .GetPage(predicate, request.PageSize * (request.Page - 1), request.PageSize, sortingList).Include(x => x.LPCLocation); var modelData = Mapper.Map <IEnumerable <LpcReport>, IEnumerable <LpcReportModel> >(results).ToList(); return(new PagedResultModel <LpcReportModel> { Total = totalCount, Page = request.Page, Limit = request.PageSize, Results = modelData, }); }
public void Can_Get_Paging_List() { var request = new LpcReportRequest { PageSize = 20, Page = 1, }; var sortingList = new List <SortModel>() { new SortModel { SortColumn = "name", SortOrder = "asc", }, }; var results = _lpcReportRepository.GetPage(request.Page, request.PageSize, sortingList).ToList(); Assert.Equal(request.PageSize, results.Count); }
public IActionResult Get([FromQuery] LPCReportRequestModel query, int limit, int page) { var request = new LpcReportRequest { PageSize = limit, Page = page, SortColumn = !string.IsNullOrEmpty(query.Sort) ? query.Sort : "LPNumber", SortOrder = !string.IsNullOrEmpty(query.Order) ? query.Order : "asc", ParentStyleList = !string.IsNullOrEmpty(query.ParentStyles) ? query.ParentStyles.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries).ToList() : null, Neighborhood = !string.IsNullOrWhiteSpace(query.Neighborhood) ? query.Neighborhood.Trim() : null, Borough = !string.IsNullOrWhiteSpace(query.Borough) ? query.Borough.Trim() : null, ObjectType = !string.IsNullOrWhiteSpace(query.ObjectType) ? query.ObjectType.Trim() : null, }; var records = _lpcReportService.GetLPCReports(request); var totalRecords = records.Total; HttpContext.Response.Headers.Add("Access-Control-Expose-Headers", "X-InlineCount"); HttpContext.Response.Headers.Add("X-InlineCount", totalRecords.ToString()); return(Ok(records.Results)); }
public void Can_Get_Filtered_Paging_List() { var predicate = PredicateBuilder.True <LpcReport>(); var request = new LpcReportRequest() { PageSize = 20, Page = 1, }; var sortModel = new SortModel { SortColumn = !string.IsNullOrEmpty(request.SortColumn) ? request.SortColumn : null, SortOrder = !string.IsNullOrEmpty(request.SortOrder) ? request.SortOrder : null, }; var sortingList = new List <SortModel>(); sortingList.Add(sortModel); var results = _lpcReportRepository .GetPage(predicate, request.PageSize * (request.Page - 1), request.PageSize, sortingList).ToList(); Assert.NotNull(results); }