public void Given_CreateReportViewModel_comment_When_CreateReport_Returns_Report() { //Given var model = new ReportCommentViewModel() { Content = "Sobaka", CommentId = 1, CallbackPostId = 1 }; var comment = new Comment() { Author = "Shrook", AuthorId = "22", Content = "sosiska" }; //When var result = _postFactory.CreateReport(model, comment); //Then Assert.NotNull(result); Assert.IsInstanceOf <Report>(result); Assert.AreEqual("Shrook", result.SenderName); Assert.AreEqual(comment, result.Comment); Assert.AreEqual(model.Content, result.ReportText); }
public void ReportComment(ReportCommentViewModel model) { var comment = GetComment(model.CommentId); var report = _postFactory.CreateReport(model, comment); comment.Reports.Add(report); _db.SaveChanges(); }
public ReportCommentViewModel BuildReportCommentViewModel(int commentId, int callbackPostId) { var model = new ReportCommentViewModel() { CommentId = commentId, CallbackPostId = callbackPostId }; return(model); }
public Report CreateReport(ReportCommentViewModel model, Comment comment) { var report = new Report() { Comment = comment, ReportText = model.Content, SenderName = _identityFacade.GetUserName() }; return(report); }
public ActionResult ReportComment(ReportCommentViewModel model, int callbackPostId) { if (ModelState.IsValid) { _postRepository.ReportComment(model); return(RedirectToAction("SinglePost", "Post", new { id = callbackPostId })); } ModelState.AddModelError("", "All fields should be filled!"); return(View(model)); }
public void Given_valid_ReportCommentViewModel_When_ReportComment_Returns_SinglePost() { //Given var callbackId = 2; var model = new ReportCommentViewModel(); //When var result = _postController.ReportComment(model, callbackId) as RedirectToRouteResult; //Then Assert.NotNull(result); Assert.AreEqual("Post", result.RouteValues["controller"].ToString()); Assert.AreEqual("SinglePost", result.RouteValues["action"].ToString()); }
public void When_ReportComment_Then_adds_report() { //given var model = new ReportCommentViewModel() { CallbackPostId = 1, CommentId = 1, Content = "UMMAYAD" }; _postFactory.Setup(x => x.CreateReport(It.IsAny <ReportCommentViewModel>(), It.IsAny <Comment>())).Returns(report1); //When _blogRepository.ReportComment(model); //Then Assert.AreEqual(1, comment1.Reports.Count); Assert.AreEqual(comment1.Id, comment1.Reports.Single().CommentId); Assert.AreEqual(model.Content, comment1.Reports.Single().ReportText); }
public void Given_inValid_ReportCommentViewModel_When_ReportComment_Returns_ReportCommentViewModel() { //Given var callbackId = 2; var model = new ReportCommentViewModel(); _postController.ModelState.AddModelError(string.Empty, "There is an error with your model, boy!"); //When var result = _postController.ReportComment(model, callbackId) as ViewResult; //Then Assert.NotNull(result); Assert.IsInstanceOf <ReportCommentViewModel>(result.Model); Assert.AreEqual(String.Empty, result.ViewName); }
public void Given_valid_commentId_When_ReportComment_Returns_ReportCommentViewModel() { //Given var commentId = 1; var postId = 1; var callbackId = 2; var model = new ReportCommentViewModel(); _postBuilder.Setup(x => x.BuildReportCommentViewModel(It.IsAny <int>(), It.IsAny <int>())).Returns(model); //When var result = _postController.ReportComment(commentId, postId, callbackId) as ViewResult; //Then Assert.NotNull(result); Assert.IsInstanceOf <ReportCommentViewModel>(result.Model); Assert.AreEqual(String.Empty, result.ViewName); }
public ActionResult Report(ReportCommentViewModel model) { var reportedComment = new ReportedComment() { CommentId = model.Id, UserId = User.Identity.GetUserId(), Reason = model.Reason, }; try { ctx.ReportedComments.Add(reportedComment); ctx.SaveChanges(); } catch (Exception e) { return(new HttpStatusCodeResult(HttpStatusCode.InternalServerError)); } return(new HttpStatusCodeResult(HttpStatusCode.OK)); }