public void ShouldDeletePostLikeWhenPostLikedByUserAlready() { var postLike = _postLikes.Where(a => a.PostId == 1 && a.UserId == 1).ToList(); _postLikeRepository = new Mock<IPostLikeRepository>(); _postLikeRepository.Setup(a => a.Find(It.IsAny<Expression<Func<PostLike, bool>>>(), false)) .Returns(postLike); _postLikeRepository.Setup(a => a.Delete(It.IsAny<PostLike>())); _postLikesLogic = new PostLikesLogic(_postLikeRepository.Object); var result = _postLikesLogic.Add(new Common.Contracts.PostLike { PostId = 1, UserId = 1 }); Assert.Null(result); }
public void ShouldThrowExceptionWhenAddPostLikeFails() { _postLikeRepository = new Mock<IPostLikeRepository>(); _postLikeRepository.Setup(a => a.Find(It.IsAny<Expression<Func<PostLike, bool>>>(), false)) .Throws(new Exception()); _postLikesLogic = new PostLikesLogic(_postLikeRepository.Object); Assert.Throws<BlogException>(() => _postLikesLogic.Add(new Common.Contracts.PostLike())); }
public void ShouldAddPostLikeWhenPostNotYetLikedByUser() { var postLike = new PostLike { PostLikeId = 4, PostId = 1, UserId = 1, User = new User { UserId = 1, UserName = "******" } }; _postLikeRepository = new Mock<IPostLikeRepository>(); _postLikeRepository.Setup(a => a.Find(It.IsAny<Expression<Func<PostLike, bool>>>(), false)) .Returns(new List<PostLike>()); _postLikeRepository.Setup(a => a.Add(It.IsAny<PostLike>())) .Returns(postLike); _postLikesLogic = new PostLikesLogic(_postLikeRepository.Object); var result = _postLikesLogic.Add(new Common.Contracts.PostLike { PostId = 1, UserId = 1 }); Assert.NotNull(result); Assert.AreEqual(4, result.PostLikeId); }