public async Task Delete_given_repository_returns_false_returns_NotFound() { var repository = new Mock <IVoteRepository>(); var controller = new VotesController(repository.Object); var delete = await controller.Delete(42); Assert.IsType <NotFoundResult>(delete); }
public async Task Delete_given_id_deletes_vote() { var repository = new Mock <IVoteRepository>(); var controller = new VotesController(repository.Object); await controller.Delete(42); repository.Verify(s => s.DeleteAsync(42)); }
public async Task Delete_given_valid_returns_NoContent() { var repository = new Mock <IVoteRepository>(); repository.Setup(s => s.DeleteAsync(42)).ReturnsAsync(true); var controller = new VotesController(repository.Object); var delete = await controller.Delete(42); Assert.IsType <NoContentResult>(delete); }
public async void Delete_Errors() { VotesControllerMockFacade mock = new VotesControllerMockFacade(); var mockResult = new Mock <ActionResponse>(); mockResult.SetupGet(x => x.Success).Returns(false); mock.ServiceMock.Setup(x => x.Delete(It.IsAny <int>())).Returns(Task.FromResult <ActionResponse>(mockResult.Object)); VotesController controller = new VotesController(mock.ApiSettingsMoc.Object, mock.LoggerMock.Object, mock.TransactionCoordinatorMock.Object, mock.ServiceMock.Object, mock.ModelMapperMock.Object); controller.ControllerContext = new ControllerContext(); controller.ControllerContext.HttpContext = new DefaultHttpContext(); IActionResult response = await controller.Delete(default(int)); response.Should().BeOfType <ObjectResult>(); (response as ObjectResult).StatusCode.Should().Be((int)HttpStatusCode.UnprocessableEntity); mock.ServiceMock.Verify(x => x.Delete(It.IsAny <int>())); }