示例#1
0
        public async Task GetByProductId_ProductServiceReturnsProductOptionDtos_ReturnsProductOptionDtos(Product product)
        {
            //Arrange
            const int pageNumber = 1;
            const int pageSize   = 100;

            var productOptionDtos = product.ProductOptions
                                    .Select(x => x.ToDto(product.Id))
                                    .ToPagedList(pageNumber, pageSize);

            _mockProductService
            .Setup(x => x.GetPagedProductOptionsAsync(product.Id, pageNumber, pageSize))
            .ReturnsAsync(productOptionDtos)
            .Verifiable();

            //Act
            var result = await _sut.Get(product.Id);

            //Assert
            _mockProductService.Verify();
            Assert.Equal(productOptionDtos.Count, result.Value.Items.Count());
        }
示例#2
0
 public ActionResult <ProductOptionDto> GetProductOptionByOptionId(int id, int optionId)
 {
     try
     {
         var productOption = _ProductOptionsController.Get(id, optionId);
         if (productOption != null)
         {
             return(Ok(productOption));
         }
         else
         {
             return(NotFound("Product Options could not be found"));
         }
     }
     catch (Exception ex)
     {
         return(StatusCode(StatusCodes.Status500InternalServerError, ex.Message));
     }
 }