public void Create_Goal() { MemoryUser user = new MemoryUser("adarsh"); ApplicationUser applicationUser = getApplicationUser(); var userContext = new UserInfo { UserId = user.Id, DisplayName = user.UserName, UserIdentifier = applicationUser.Email, RoleName = Enum.GetName(typeof(UserRoles), applicationUser.RoleId) }; var testTicket = new FormsAuthenticationTicket( 1, user.Id, DateTime.Now, DateTime.Now.Add(FormsAuthentication.Timeout), false, userContext.ToString()); GroupController controller = new GroupController(groupService, groupUserService, userService, metricService, focusService, groupgoalService, groupInvitationService, securityTokenService, groupUpdateService, groupCommentService, goalStatusService, groupRequestService, followUserService, groupCommentUserService, groupUpdateSupportService, groupUpdateUserService); principal.SetupGet(x => x.Identity.Name).Returns("adarsh"); controllerContext.SetupGet(x => x.HttpContext.User).Returns(principal.Object); controllerContext.SetupGet(p => p.HttpContext.Request.IsAuthenticated).Returns(true); controller.ControllerContext = controllerContext.Object; contextBase.SetupGet(x => x.Request).Returns(httpRequest.Object); contextBase.SetupGet(x => x.Response).Returns(httpResponse.Object); genericPrincipal.Setup(x => x.Identity).Returns(identity.Object); contextBase.SetupGet(a => a.Response.Cookies).Returns(new HttpCookieCollection()); var formsAuthentication = new DefaultFormsAuthentication(); formsAuthentication.SetAuthCookie(contextBase.Object, testTicket); HttpCookie authCookie = contextBase.Object.Response.Cookies[FormsAuthentication.FormsCookieName]; var ticket = formsAuthentication.Decrypt(authCookie.Value); var goalsetterUser = new SocialGoalUser(ticket); string[] userRoles = { goalsetterUser.RoleName }; principal.Setup(x => x.Identity).Returns(goalsetterUser); GroupUser grpuser = new GroupUser() { GroupId = 1, UserId = "402bd590-fdc7-49ad-9728-40efbfe512ec" }; groupUserRepository.Setup(x => x.Get(It.IsAny<Expression<Func<GroupUser, bool>>>())).Returns(grpuser); // Act Mapper.CreateMap<GroupGoalFormModel, GroupGoal>(); GroupGoalFormModel goal = new GroupGoalFormModel() { GoalName = "t", GroupGoalId = 1, StartDate = DateTime.Now, EndDate = DateTime.Now.AddDays(1), Description = "t", GroupId = 1, GroupUserId = 1, }; var result = (RedirectToRouteResult)controller.CreateGoal(goal); Assert.AreEqual("Index", result.RouteValues["action"]); }
public void Create_Goal_Get_ReturnsView() { IEnumerable<Focus> fakeFocus = new List<Focus> { new Focus { FocusId = 1, FocusName="Test1",GroupId = 1}, new Focus { FocusId = 2, FocusName="Test2",GroupId = 1}, new Focus { FocusId = 3, FocusName="Test3",GroupId = 1} }.AsEnumerable(); focusRepository.Setup(x => x.GetMany(It.IsAny<Expression<Func<Focus, bool>>>())).Returns(fakeFocus); IEnumerable<Metric> fakeMatrices = new List<Metric> { new Metric{MetricId=1, Type="Test1"}, new Metric{MetricId=2,Type="Test2"}, new Metric{MetricId=3,Type="Test3"} }.AsEnumerable(); metricRepository.Setup(x => x.GetAll()).Returns(fakeMatrices); GroupGoalFormModel goal = new GroupGoalFormModel(); GroupController controller = new GroupController(groupService, groupUserService, userService, metricService, focusService, groupgoalService, groupInvitationService, securityTokenService, groupUpdateService, groupCommentService, goalStatusService, groupRequestService, followUserService, groupCommentUserService, groupUpdateSupportService, groupUpdateUserService); ViewResult result = controller.CreateGoal(1) as ViewResult; Assert.IsNotNull(result, "View Result is null"); Assert.IsInstanceOf(typeof(GroupGoalFormModel), result.ViewData.Model, "Wrong View Model"); }