def test_update_password( user: User, user_create_data: dict, session: Session, application: Application, ): old_password = user_create_data["password"] new_password = "******" assert old_password != new_password application.update_password(session, user, old_password, new_password) assert user.hashed_password != old_password assert user.hashed_password != new_password assert not util.password_is_match(old_password, user.hashed_password) assert util.password_is_match(new_password, user.hashed_password)
def update_password( data: PasswordUpdateSchema, user: User = Depends(dependencies.get_current_user), app: Application = Depends(dependencies.get_application), session: Session = Depends(dependencies.get_database_session), ): try: return app.update_password(session, user, data.old_password, data.new_password) except ApplicationError as e: if "not found" in str(e).lower(): raise HTTPException(404, str(e)) raise HTTPException(400, str(e))