public async Task Get_ItemWithIdDoesNotExist_ReturnsNotFoundResult() { var repoMock = new Mock <IProductCategories>(); repoMock.Setup(p => p.GetAsync(It.IsAny <string>())) .Throws(new ItemNotFoundException()); var categoryController = new ProductCategoryController(repoMock.Object, null); var result = await categoryController.GetProductCategory("abc"); Assert.IsType <NotFoundObjectResult>(result.Result); }
public async Task Get_ItemWithIdDoesExist_ReturnsOkResult_WithCorrectItem() { var item = new ProductCategory() { Id = "123-abc", Name = "TestCategory" }; var repoMock = new Mock <IProductCategories>(); repoMock.Setup(p => p.GetAsync(item.Id)) .Returns(Task.FromResult(item)); var categoryController = new ProductCategoryController(repoMock.Object, null); var response = await categoryController.GetProductCategory(item.Id); Assert.IsType <OkObjectResult>(response.Result); var objectResult = response.Result as OkObjectResult; Assert.IsType <ProductCategoryResult>(objectResult.Value); Assert.Equal(item.Name, (objectResult.Value as ProductCategoryResult).ResultData.FirstOrDefault().Name); }