Пример #1
0
    def test_invalid_tokens(self, user, db):
        # Invalid tokens
        used_token = UserPasswordToken(user=user, used=True).save()
        expired_token = UserPasswordToken(user=user, expiration_dt=expired_date()).save()

        # Valid token
        valid_token = UserPasswordToken(user=user, used=False).save()

        # All invalid tokens for a user are captured
        invalid_tokens = set(UserPasswordToken.invalid_tokens(user_id=user.id).all())
        assert invalid_tokens == set([used_token, expired_token])
Пример #2
0
    def test_used_token_is_not_valid(self, user, db):
        # Newly generated token is valid
        token = UserPasswordToken(user=user).save(db.session)
        assert token.invalid is False

        # Used token is not valid
        token.update(used=True)
        assert token.invalid is True
Пример #3
0
    def test_expired_token_is_not_valid(self, user, db):
        # Newly generated token is valid
        token = UserPasswordToken(user=user).save(db.session)
        assert token.invalid is False

        # Expired token is not valid
        token.update(expiration_dt=expired_date())
        token.save(db.session)
        assert token.invalid is True
Пример #4
0
 def test_unique_expiration_dt(self, user, db):
     # Tokens created at different times have different expiration dates
     t1 = UserPasswordToken(user=user).save()
     t2 = UserPasswordToken(user=user).save()
     assert t1.expiration_dt != t2.expiration_dt
Пример #5
0
 def test_token_values_unique(self, user, db):
     # Tokens have different values
     t1 = UserPasswordToken(user=user).save()
     t2 = UserPasswordToken(user=user).save()
     assert t1.value != t2.value
Пример #6
0
 def test_valid_token(self, user, db):
     # Valid token is found
     invalid_token = UserPasswordToken(user=user, used=True).save()
     valid_token = UserPasswordToken(user=user).save()
     assert UserPasswordToken.valid_token(user.id) == valid_token