public void TestInitialize() { _mockUnitOfWork = new Mock <IUnitOfWork>(); productDetailViewDto = new ProductDetailViewDto() { ProductId = 1, ProductName = "TestProduct", UnitPrice = 2000, ProductDescription = "This is test product", ImageUrl = "" }; _mokcProductRepository = new Mock <IProductRepository>(); _mokcProductRepository.Setup(m => m.GetProductDetailsById(1)).ReturnsAsync(productDetailViewDto); _mockUnitOfWork.Setup(m => m.ProductRepository).Returns(_mokcProductRepository.Object); }
public void GetProduct_WhenSuccessfull_ReturnProduct() { ProductDetailViewDto product = new ProductDetailViewDto { ProductId = 1, ProductName = "TestProduct", ProductDescription = "TestProductDescription", UnitPrice = 1800 }; //mock setup _iProductManagerMock.Setup <Task <ProductDetailViewDto> >(s => s.GetProductDetailsById(1)) .Returns(Task.FromResult <ProductDetailViewDto>(product)); _productController = new ProductController(_iProductManagerMock.Object, _iLoggerMock.Object); Task <IActionResult> result = _productController.Get(1); OkObjectResult okResult = (OkObjectResult)result.Result; ProductDetailViewDto resultProduct = (ProductDetailViewDto)okResult.Value; Assert.AreEqual(200, okResult.StatusCode); Assert.AreEqual("TestProduct", resultProduct.ProductName); Assert.AreEqual(1800, resultProduct.UnitPrice); }