public async Task <IActionResult> GetAll([FromQuery] ProductParmeters productParmeters)
        {
            if (productParmeters.PageSize < 1 || productParmeters.PageNumber < 1)
            {
                return(BadRequest());
            }

            var products = await _productsService.GetPaged(productParmeters);

            Response.AddPagination(products);

            return(Ok(products));
        }
        public async Task ProductsControllerV2_GetAll_ReturnsBadRequest_PageSize()
        {
            // arrange
            var service          = InfrastructureBuilder.GetProductService();
            var controller       = new ProductsController(service);
            var productParmeters = new ProductParmeters {
                PageNumber = 1, PageSize = -1
            };

            // act
            var result = await controller.GetAll(productParmeters);

            // assert
            Assert.NotNull(result);
            Assert.IsType <BadRequestResult>(result);
        }
Example #3
0
        public async Task ProductService_GetAllPaged_PageSizeOk()
        {
            // arrange
            var service = InfrastructureBuilder.GetProductService();

            var pageSize          = 10;
            var pageNumber        = 2;
            var productParameters = new ProductParmeters {
                PageNumber = pageNumber, PageSize = pageSize
            };

            // act
            var result = await service.GetPaged(productParameters);

            // assert
            Assert.NotNull(result);
            Assert.Equal(pageSize, result.Count());
        }
        public async Task ProductsControllerV2_GetAll_ReturnsOk()
        {
            // arrange
            var service    = InfrastructureBuilder.GetProductService();
            var controller = new ProductsController(service);

            MockResponse(controller);

            var pageSize         = 10;
            var pageNumber       = 2;
            var productParmeters = new ProductParmeters {
                PageNumber = pageNumber, PageSize = pageSize
            };

            // act
            var result = await controller.GetAll(productParmeters);

            // assert
            Assert.NotNull(result);
            Assert.IsType <OkObjectResult>(result);
        }
Example #5
0
 public async Task <PagedList <ProductGetDTO> > GetPaged(ProductParmeters productParmeters)
 {
     return(await _context.Products.AsNoTracking()
            .Select(p => _mapper.Map <ProductGetDTO>(p))
            .ToPagedList(productParmeters));
 }