public void ChildDeleteValidator_ModelInvalid_ThrowsException() { var invalidDto = new RootDeleteDto(); var result = _validator.TestValidate(invalidDto); result.ShouldHaveAnyValidationError(); }
public void ChildDeleteValidator_ModelValid_DontThrowsException() { var validDto = new RootDeleteDto() { Id = "5e9c9ee859231a63bc853bf0", OwnerId = 1, }; var result = _validator.TestValidate(validDto); result.ShouldNotHaveAnyValidationErrors(); }
public async Task <ActionResult <int> > Delete([FromBody] RootDeleteDto deleteDto) { if (deleteDto.OwnerId != _userResolverService.GetUserId() && !_userResolverService.IsUserAdmin()) { return(Forbid()); } int number = await _rootBookCommentService.Remove(deleteDto.Id); if (number == 0) { return(NotFound(number)); } return(Ok(number)); }
public async Task DeleteCommentByUser_NotTheirComment_ReturnsForbidResult() { RootDeleteDto deleteDto = new RootDeleteDto() { Id = "5e9c9ee859231a63bc853bf0", OwnerId = 1 }; _mockRootBookCommentService.Setup(s => s.Remove(deleteDto.Id)).ReturnsAsync(1); _mockUserResolverService.Setup(s => s.GetUserId()).Returns(2); _mockUserResolverService.Setup(s => s.IsUserAdmin()).Returns(false); var deleteResult = await _bookRootCommentsController.Delete(deleteDto); var forbidResult = deleteResult.Result as ForbidResult; forbidResult.Should().BeOfType <ForbidResult>(); }
public async Task DeleteCommentByAdmin_CommentNotExist_ReturnsNotFoundObjectResult() { RootDeleteDto deleteDto = new RootDeleteDto() { Id = "5e9c9ee859231a63bc853bf0", OwnerId = 1 }; _mockRootBookCommentService.Setup(s => s.Remove(deleteDto.Id)).ReturnsAsync(0); _mockUserResolverService.Setup(s => s.GetUserId()).Returns(2); _mockUserResolverService.Setup(s => s.IsUserAdmin()).Returns(true); var deleteResult = await _bookRootCommentsController.Delete(deleteDto); var notFoundObjectResult = deleteResult.Result as NotFoundObjectResult; notFoundObjectResult.Should().BeOfType <NotFoundObjectResult>(); int deletedNumber = Convert.ToInt32(notFoundObjectResult.Value); deletedNumber.Should().Be(0); }
public async Task RemoveComment_BookRootCommentExistsAndNot_ReturnsNumberOfCommentsRemoved(int updateValue, string commentId, int expectedResult) { RootDeleteDto deleteDto = new RootDeleteDto() { Id = commentId }; _mockRootRepository .Setup(s => s.DeleteByIdAsync(deleteDto.Id)) .ReturnsAsync(new DeleteResult.Acknowledged(updateValue)); _mockRootRepository.Setup(x => x.FindByIdAsync(It.IsAny <string>())).ReturnsAsync(new BookRootComment()); _bookRepositoryMock.Setup(x => x.FindByIdAsync(It.IsAny <int>())).ReturnsAsync(new Domain.RDBMS.Entities.Book() { Id = 1232 }); var result = await _bookRootCommentService.Remove(deleteDto.Id); result.Should().Be(expectedResult); }