public void Assignment_UpdateUser_Test()
        {
            //Arrange
            UserSqlDAL dao = new UserSqlDAL(ConnectionString);

            User inputUser = new User();

            inputUser.Password = "******";
            inputUser.Salt     = "NuE0Y6FonAI=";
            inputUser.Role     = "Teacher";
            inputUser.Username = "******";


            dao.CreateUser(inputUser);

            inputUser = dao.GetUser(inputUser.Username);

            inputUser.Role = "Admin";
            dao.UpdateUser(inputUser);

            //Action
            User testUser = dao.GetUser(inputUser.Username);

            //Assert
            Assert.AreEqual(testUser.Role, inputUser.Role);
        }
示例#2
0
        /// <summary>
        /// Changes the current user's password.
        /// </summary>
        /// <param name="existingPassword"></param>
        /// <param name="newPassword"></param>
        /// <returns></returns>
        public bool ChangePassword(string existingPassword, string newPassword)
        {
            var hashProvider = new HashProvider();
            var user         = GetCurrentUser();

            // Confirm existing password match
            if (user != null && hashProvider.VerifyPasswordMatch(user.UserPassword, existingPassword, user.Salt))
            {
                // Hash new password
                var newHash = hashProvider.HashPassword(newPassword);
                user.UserPassword = newHash.Password;
                user.Salt         = newHash.Salt;

                // Save into the db
                userDAL.UpdateUser(user);

                return(true);
            }

            return(false);
        }