public virtual ActionResult GetInitiativeSuggestion(InitiativeSuggestion initiativeSuggestion) { SetNavigationHierarchy(GetInitiativeSuggestionsNavigationItems(), initiativeSuggestion.Title); var getInitiativeSuggestionViewModel = new GetInitiativeSuggestionViewModel(initiativeSuggestion); return View(getInitiativeSuggestionViewModel); }
public virtual ActionResult AddInitiativeSuggestion(AddInitiativeSuggestionFormViewModel form) { InitiativeSuggestion initiativeSuggestion = null; return Handle(() => { initiativeSuggestion = new InitiativeSuggestion(form.Title, form.Description); _documentSession.Store(initiativeSuggestion); }, success: () => MVC.InitiativeSuggestion.GetInitiativeSuggestion(initiativeSuggestion)); }
public void AddVotePost_PositiveVoteOfAnonymousUser_CorrectVoteValueAndUserId() { var initiativeSuggestion = new InitiativeSuggestion("title", "description"); SetupData(x => x.Store(initiativeSuggestion)); _testControllerBuilder.HttpContext.Request.Stub(x => x.UserHostAddress).Return("10.10.10.10"); ExecuteAction<SharedController>(controller => controller.AddVote(initiativeSuggestion.Id, true)); _controller.ModelState.Count.ShouldBe(1); _controller.ModelState[""].Errors.ShouldAllBeEquivalentTo(new ModelErrorCollection() { "Ваш голос принят" }); var initiativeSuggestionDb = _documentStore.OpenSession().Load<InitiativeSuggestion>(initiativeSuggestion.Id); initiativeSuggestionDb.Votes.ShouldAllBeEquivalentTo(new List<Vote>() { new Vote(1, "10.10.10.10", null) }); }
public void AddVotePost_AnonymousUserVoteFromAlreadyVotedIp_DoNotAccept() { var initiativeSuggestion = new InitiativeSuggestion("title", "description"); initiativeSuggestion.Votes.Add(new Vote(1, "10.10.10.10", null)); SetupData(x => x.Store(initiativeSuggestion)); _testControllerBuilder.HttpContext.Request.Stub(x => x.UserHostAddress).Return("10.10.10.10"); ExecuteAction<SharedController>(controller => controller.AddVote(initiativeSuggestion.Id, true)); _controller.ModelState.Count.ShouldBe(1); _controller.ModelState[""].Errors.ShouldAllBeEquivalentTo(new ModelErrorCollection() { "Вы уже проголосовали" }); var initiativeSuggestionDb = _documentStore.OpenSession().Load<InitiativeSuggestion>(initiativeSuggestion.Id); initiativeSuggestionDb.Votes.ShouldAllBeEquivalentTo(new List<Vote>() { new Vote(1, "10.10.10.10", null) }); }
public void AddVotePost_NegativeVoteOfRegisteredUser_CorrectVoteValueAndUserId() { var initiativeSuggestion = new InitiativeSuggestion("title", "description"); SetupData(x => x.Store(initiativeSuggestion)); _testControllerBuilder.HttpContext.Request.Stub(x => x.UserHostAddress).Return("10.10.10.10"); _testControllerBuilder.HttpContext.Items[FrontendConstants.UserKey] = new User() {Id = "Users/1"}; ExecuteAction<SharedController>(controller => controller.AddVote(initiativeSuggestion.Id, false)); _controller.ModelState.Count.ShouldBe(1); _controller.ModelState[""].Errors.ShouldAllBeEquivalentTo(new ModelErrorCollection() { "Ваш голос принят" }); var initiativeSuggestionDb = _documentStore.OpenSession().Load<InitiativeSuggestion>(initiativeSuggestion.Id); initiativeSuggestionDb.Votes.ShouldAllBeEquivalentTo(new List<Vote>() { new Vote(-1, "10.10.10.10", "Users/1") }); }
public void AddVotePost_RegisteredUserSecondVote_DoNotAccept() { var initiativeSuggestion = new InitiativeSuggestion("title", "description"); initiativeSuggestion.Votes.Add(new Vote(1, "10.10.10.10", "Users/1")); SetupData(x => x.Store(initiativeSuggestion)); _testControllerBuilder.HttpContext.Items[FrontendConstants.UserKey] = new User() { Id = "Users/1" }; ExecuteAction<SharedController>(controller => controller.AddVote(initiativeSuggestion.Id, true)); _controller.ModelState.Count.ShouldBe(1); _controller.ModelState[""].Errors.ShouldAllBeEquivalentTo(new ModelErrorCollection() { "Вы уже проголосовали" }); var initiativeSuggestionDb = _documentStore.OpenSession().Load<InitiativeSuggestion>(initiativeSuggestion.Id); initiativeSuggestionDb.Votes.ShouldAllBeEquivalentTo(new List<Vote>() { new Vote(1, "10.10.10.10", "Users/1") }); }