test_verifiers.py 770 B

12345678910111213141516171819202122
  1. import pytest
  2. from flaskbb.core.tokens import Token, TokenActions, TokenVerificationError
  3. from flaskbb.tokens import verifiers
  4. from flaskbb.user.models import User
  5. def test_raises_if_email_doesnt_match_token_user(Fred):
  6. verifier = verifiers.EmailMatchesUserToken(User)
  7. token = Token(user_id=1, operation=TokenActions.RESET_PASSWORD)
  8. with pytest.raises(TokenVerificationError) as excinfo:
  9. verifier(token, email="not really")
  10. assert excinfo.value.attribute == "email"
  11. assert excinfo.value.reason == "Wrong email"
  12. def test_doesnt_raise_if_email_matches_token_user(Fred):
  13. verifier = verifiers.EmailMatchesUserToken(User)
  14. token = Token(user_id=Fred.id, operation=TokenActions.ACTIVATE_ACCOUNT)
  15. verifier(token, email=Fred.email)