public void Feedback_ShouldNotAddAndReturnDefaultView() { var bm = new FeedbackBm() { Topic = "", Content = "asdasdasdasdasd" }; this.controller.ModelState.AddModelError("topic", "Topic cannot be less than 5 characters long."); this.controller .WithCallTo(c => c.Feedback(bm)) .ShouldRenderDefaultView(); Assert.AreEqual(2, this.context.Feedbacks.Count()); var bm2 = new FeedbackBm() { Topic = "asdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasd", Content = "asddd" }; this.controller.ModelState.AddModelError("Content", "Content cannot be less than 40 characters long."); this.controller .WithCallTo(c => c.Feedback(bm2)) .ShouldRenderDefaultView(); Assert.AreEqual(2, this.context.Feedbacks.Count()); }
public void AddFeedback(FeedbackBm bm, string userId) { var user = this.Context.Users.Find(userId); Feedback feedback = Mapper.Map <FeedbackBm, Feedback>(bm); feedback.User = user; this.Context.Feedbacks.Add(feedback); this.Context.SaveChanges(); }
public ActionResult Feedback(FeedbackBm bm) { if (this.ModelState.IsValid) { var userId = this.User.Identity.GetUserId(); this.service.AddFeedback(bm, userId); return(this.RedirectToAction("All", "Sales")); } var vm = Mapper.Map <FeedbackBm, FeedbackVm>(bm); return(this.View(vm)); }
public void Feedback_ShouldAddAndRedirect() { var bm = new FeedbackBm() { Topic = "Za parite sttava duma", Content = "Dai mi pariteeeeee asdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasdasd" }; this.controller .WithCallTo(c => c.Feedback(bm)) .ShouldRedirectTo <SalesController>(c2 => c2.All(null, null, null)); Assert.AreEqual(3, this.context.Feedbacks.Count()); }