Felbook.Models.FelbookAccountMembershipService.ChangePassword C# (CSharp) Method

ChangePassword() public method

public ChangePassword ( string userName, string oldPassword, string newPassword ) : bool
userName string
oldPassword string
newPassword string
return bool
        public bool ChangePassword(string userName, string oldPassword, string newPassword)
        {
            if (String.IsNullOrEmpty(userName)) throw new ArgumentException("Value cannot be null or empty.", "userName");
            if (String.IsNullOrEmpty(oldPassword)) throw new ArgumentException("Value cannot be null or empty.", "oldPassword");
            if (String.IsNullOrEmpty(newPassword)) throw new ArgumentException("Value cannot be null or empty.", "newPassword");

            try
            {
                User user = DBEntities.UserSet.Single(u => u.Username == userName);

                if (user.CheckPassword(oldPassword))
                {
                    user.ChangePassword(newPassword);
                    DBEntities.SaveChanges();
                    return true;
                }
                else
                {
                    return false;
                }

            }
            catch (InvalidOperationException)
            {
                return false;
            }
        }

Usage Example

        public void ChangePasswordTest1()
        {
            FelBookDBEntities db = new FelBookDBEntities();
            IMembershipService MembershipService = new FelbookAccountMembershipService(db);

            #region usernameTests
            try
            {
                MembershipService.ChangePassword(null, "old password", "new password");
            }
            catch (ArgumentException ex)
            {
                Assert.AreEqual("Value cannot be null or empty." + Environment.NewLine + "Parameter name: userName", ex.Message);
            }

            try
            {
                MembershipService.ChangePassword("", "old password", "new password");
            }
            catch (ArgumentException ex)
            {
                Assert.AreEqual("Value cannot be null or empty." + Environment.NewLine + "Parameter name: userName", ex.Message);
            }
            #endregion

            #region oldPasswordTests
            try
            {
                MembershipService.ChangePassword("some username", null, "new password");
            }
            catch (ArgumentException ex)
            {
                Assert.AreEqual("Value cannot be null or empty." + Environment.NewLine + "Parameter name: oldPassword", ex.Message);
            }

            try
            {
                MembershipService.ChangePassword("some username", "", "new password");
            }
            catch (ArgumentException ex)
            {
                Assert.AreEqual("Value cannot be null or empty." + Environment.NewLine + "Parameter name: oldPassword", ex.Message);
            }
            #endregion

            #region newPasswordTests
            try
            {
                MembershipService.ChangePassword("some username", "old password", null);
            }
            catch (ArgumentException ex)
            {
                Assert.AreEqual("Value cannot be null or empty." + Environment.NewLine + "Parameter name: newPassword", ex.Message);
            }

            try
            {
                MembershipService.ChangePassword("some username", "old password", "");
            }
            catch (ArgumentException ex)
            {
                Assert.AreEqual("Value cannot be null or empty." + Environment.NewLine + "Parameter name: newPassword", ex.Message);
            }
            #endregion

            try
            {
                MembershipService.ChangePassword("some username", "old password", "new password");
            }
            catch (ArgumentException)
            {
                Assert.Fail();
            }
        }
All Usage Examples Of Felbook.Models.FelbookAccountMembershipService::ChangePassword