public async Task DeleteAsync_Returns_NoContent() { //Arrange const int id = 1; //Act var result = await _productsController.DeleteAsync(id); //Assert result.Should().BeOfType <NoContentResult>(); }
public async Task DeleteProduct() { //Arrange mockRepo.Setup(p => p.DeleteProduct(1)).Returns(Task.FromResult(1)); // Act var result = await controller.DeleteAsync(1); // Assert Assert.IsType <OkResult>(result); }
public async Task Delete_NotExistingProduct_ReturnsNotFoundResult(string id) { var commandHandlerMock = new Mock <IProductCommandsHandler>(); commandHandlerMock.Setup(handler => handler.DeleteAsync(id)).ReturnsAsync(false); var productController = new ProductsController(commandHandlerMock.Object, GetProductQueriesHandler(), null); var result = await productController.DeleteAsync(id); Assert.IsInstanceOf <NotFoundResult>(result); }
public async Task Delete_OnInnerException_ReturnsStatusCode500(string id) { var commandHandlerMock = new Mock <IProductCommandsHandler>(); commandHandlerMock.Setup(handler => handler.DeleteAsync(id)).ThrowsAsync(new Exception()); var productController = new ProductsController(commandHandlerMock.Object, GetProductQueriesHandler(), null); var result = await productController.DeleteAsync(id); Assert.IsInstanceOf <StatusCodeResult>(result); Assert.AreEqual(500, ((StatusCodeResult)result).StatusCode); }
public async void DeleteAsync_ValidId_ReturnNoContentStatus() { //Arrange _productService.Setup(s => s.GetProductByIdAsync(It.IsAny <Guid>())).ReturnsAsync(new Product()); var productsController = new ProductsController(_productService.Object, _mapper.Object); //Act var result = await productsController.DeleteAsync(new Guid()); //Assert var noContentResult = Assert.IsType <NoContentResult>(result); Assert.Equal(204, noContentResult.StatusCode); }
public async Task DELETE_BadResult_ErrorMsgMatch() { var product = OneProduct(); var productResponse = new ProductResponse("Invalid Product ID"); var saveProduct = OneSaveProductResource(); var productService = new Mock <IProductService>(); productService.Setup(x => x.DeleteAsync(product.Id)).ReturnsAsync( productResponse ); var sut_productController = new ProductsController(productService.Object, BuildMapper()); var result = await sut_productController.DeleteAsync(product.Id) as BadRequestObjectResult; Assert.Equal(productResponse.Message, result.Value); }
public async Task DELETE_OKResult() { var product = OneProduct(); var productResponse = new ProductResponse(product); var saveProduct = OneSaveProductResource(); var productService = new Mock <IProductService>(); productService.Setup(x => x.DeleteAsync(product.Id)).ReturnsAsync( productResponse ); var sut_productController = new ProductsController(productService.Object, BuildMapper()); var result = await sut_productController.DeleteAsync(product.Id) as OkObjectResult; Assert.IsType <OkObjectResult>(result); }
public async Task DeleteAsyncNotFoundTest() { // Arrange var productResponse = new ProductResponse("error"); var service = new Mock <IProductService>(); service.Setup(e => e.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(productResponse); service.Setup(e => e.DeleteAsync(It.IsAny <int>())).ReturnsAsync(productResponse); var controller = new ProductsController(service.Object, _mapper); // Act var result = await controller.DeleteAsync(1); // Assert Assert.IsType <BadRequestObjectResult>(result); }
public async Task DeleteAsyncOkTest() { var product = ProductGenerator.GetTestProduct(); var productResponse = new ProductResponse(product); var service = new Mock <IProductService>(); service.Setup(e => e.DeleteAsync(It.IsAny <int>())).ReturnsAsync(productResponse); var controller = new ProductsController(service.Object, _mapper); // Act var result = await controller.DeleteAsync(1); //Assert var actionResult = Assert.IsType <OkObjectResult>(result); var productResource = Assert.IsAssignableFrom <ProductResource>(actionResult.Value); ProductAssertHelper.AssertEquals(productResponse, productResource); }