public void LoginAction_CookieIsGenerated_OnValidLogin() { // Setup Member member = new Member(); LoginViewModel viewModel = new LoginViewModel { Username = string.Empty, Password = string.Empty }; Mock<IAuthenticationService> fakeauthenticationService = new Mock<IAuthenticationService>(); fakeauthenticationService.Setup(a => a.ValidateUser(It.IsAny<string>(), It.IsAny<string>())).Returns(member); AccountController controller = new AccountController(fakeauthenticationService.Object); // Action //var result = controller.Login(viewModel, string.Empty); //// Assert //fakeauthenticationService.Verify(a => a.GenerateCookieFor(member), Times.Once()); }
/// <summary> /// Generates a cookie for the user /// </summary> /// <param name="member">The member to set the cookie for</param> public HttpCookie GenerateCookieFor(Member member) { ZokerPrincipalSerializeModel serializeModel = new ZokerPrincipalSerializeModel(); serializeModel.ID = member.ID; serializeModel.Username = member.Username; JavaScriptSerializer serializer = new JavaScriptSerializer(); string userData = serializer.Serialize(serializeModel); FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket( 1, member.Name, DateTime.Now, DateTime.Now.AddMinutes(15), false, userData); string encryptedTicket = FormsAuthentication.Encrypt(authTicket); return new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket); }
/// <summary> /// Create a new Member object. /// </summary> /// <param name="id">Initial value of the ID property.</param> /// <param name="username">Initial value of the Username property.</param> /// <param name="name">Initial value of the Name property.</param> /// <param name="password">Initial value of the Password property.</param> /// <param name="roleID">Initial value of the RoleID property.</param> public static Member CreateMember(global::System.Int32 id, global::System.String username, global::System.String name, global::System.String password, global::System.Int32 roleID) { Member member = new Member(); member.ID = id; member.Username = username; member.Name = name; member.Password = password; member.RoleID = roleID; return member; }
/// <summary> /// Deprecated Method for adding a new object to the Members EntitySet. Consider using the .Add method of the associated ObjectSet<T> property instead. /// </summary> public void AddToMembers(Member member) { base.AddObject("Members", member); }