def test_user_bad_password(self):
     user = User.testing_create()
     with pytest.raises(auth.UserInvalidAuth) as e_info:
         authenticator = auth.KegAuthenticator(app=flask.current_app)
         authenticator.verify_user(login_id=user.email,
                                   password='******')
     assert e_info.value.user is user
    def test_unverified_user(self):
        user = User.testing_create()
        user.is_verified = False
        authenticator = auth.KegAuthenticator(app=flask.current_app)
        with pytest.raises(auth.UserInactive) as e_info:
            authenticator.verify_user(login_id=user.email, password=user._plaintext_pass)
        assert e_info.value.user is user

        found_user = authenticator.verify_user(login_id=user.email, password=user._plaintext_pass,
                                               allow_unverified=True)
        assert user is found_user
 def test_user_verified(self):
     user = User.testing_create()
     authenticator = auth.KegAuthenticator(app=flask.current_app)
     found_user = authenticator.verify_user(login_id=user.email,
                                            password=user._plaintext_pass)
     assert user is found_user
 def test_user_not_active(self):
     user = User.testing_create(is_enabled=False)
     with pytest.raises(auth.UserInactive) as e_info:
         authenticator = auth.KegAuthenticator(app=flask.current_app)
         authenticator.verify_user(login_id=user.email)
     assert e_info.value.user is user
 def test_user_not_found(self):
     with pytest.raises(auth.UserNotFound):
         authenticator = auth.KegAuthenticator(app=flask.current_app)
         authenticator.verify_user(login_id='nobodybythisnamehere')