def test_get_user_by_case_insensitive_public_nickname(self): user = DBDiscussionSession.query(User).get(2) self.assertIsNotNone( lib.get_user_by_case_insensitive_public_nickname( user.public_nickname.lower())) self.assertIsNotNone( lib.get_user_by_case_insensitive_public_nickname( user.public_nickname.upper())) self.assertIsNone( lib.get_user_by_case_insensitive_public_nickname('puh_der_bär'))
def __check_login_params(nickname, email, password, passwordconfirm) -> Keywords: db_nick1 = get_user_by_case_insensitive_nickname(nickname) db_nick2 = get_user_by_case_insensitive_public_nickname(nickname) db_mail = DBDiscussionSession.query(User).filter( func.lower(User.email) == func.lower(email)).first() is_mail_valid = validate_email(email, check_mx=True) # are the password equal? if not password == passwordconfirm: LOG.debug("Passwords are not equal") return _.pwdNotEqual # empty password? if len(password) <= 5: LOG.debug("Password too short") return _.pwdShort # is the nick already taken? if db_nick1 or db_nick2: LOG.debug("Nickname '%s' is taken", nickname) return _.nickIsTaken # is the email already taken? if db_mail: LOG.debug("E-Mail '%s' is taken", email) return _.mailIsTaken if len(email) < 2 or not is_mail_valid: LOG.debug("E-Mail '%s' is too short or not valid otherwise", email) return _.mailNotValid return None
def __check_login_params(nickname, email, password, passwordconfirm) -> Keywords: db_nick1 = get_user_by_case_insensitive_nickname(nickname) db_nick2 = get_user_by_case_insensitive_public_nickname(nickname) db_mail = DBDiscussionSession.query(User).filter( func.lower(User.email) == func.lower(email)).first() is_mail_valid = validate_email(email, check_mx=True) # are the password equal? if not password == passwordconfirm: logger('Auth.Login', 'Passwords are not equal') return _.pwdNotEqual # empty password? if len(password) <= 5: logger('Auth.Login', 'Password too short') return _.pwdShort # is the nick already taken? if db_nick1 or db_nick2: logger('Auth.Login', 'Nickname \'' + nickname + '\' is taken') return _.nickIsTaken # is the email already taken? if db_mail: logger('Auth.Login', 'E-Mail \'' + email + '\' is taken') return _.mailIsTaken if len(email) < 2 or not is_mail_valid: logger('Auth.Login', 'E-Mail \'' + email + '\' is too short or not valid') return _.mailNotValid return None