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);
        }
Esempio n. 5
0
        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));
        }
Esempio n. 6
0
        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);
        }