def test_load_token(self): """Test token loading.""" t = SecretLinkFactory.create_token(1, self.extra_data) self.assertIsNotNone(SecretLinkFactory.load_token(t)) t = SecretLinkFactory.create_token( 1, self.extra_data, expires_at=datetime.now()-timedelta(days=1)) self.assertRaises(SignatureExpired, SecretLinkFactory.load_token, t) self.assertIsNotNone(SecretLinkFactory.load_token(t, force=True))
def test_validation(self): """Test token validation.""" t = SecretLinkFactory.create_token(1, self.extra_data) self.assertIsNotNone(SecretLinkFactory.validate_token( t, expected_data=self.extra_data)) t = SecretLinkFactory.create_token( 1, self.extra_data, expires_at=datetime.now()+timedelta(days=1) ) self.assertIsNotNone(SecretLinkFactory.validate_token( t, expected_data=self.extra_data)) self.assertIsNone(SecretLinkFactory.validate_token( t, expected_data=dict(recid=2)))
def test_secretlink_factory_validation(app, db): """Test token validation.""" extra_data = dict(recid='1') with app.app_context(): t = SecretLinkFactory.create_token(1, extra_data) assert SecretLinkFactory.validate_token( t, expected_data=extra_data) is not None t = SecretLinkFactory.create_token( 1, extra_data, expires_at=datetime.utcnow()+timedelta(days=1) ) assert SecretLinkFactory.validate_token( t, expected_data=extra_data) is not None assert SecretLinkFactory.validate_token( t, expected_data=dict(recid=2)) is None
def test_creation(self): """Test token creation.""" d = datetime.now()+timedelta(days=1) t = SecretLinkFactory.create_token(1, self.extra_data) self.assertIsNotNone(SecretLinkSerializer().validate_token( t, expected_data=self.extra_data)) self.assertIsNone(TimedSecretLinkSerializer().validate_token( t, expected_data=self.extra_data)) t1 = SecretLinkFactory.create_token( 1, self.extra_data, expires_at=d ) t2 = SecretLinkFactory.create_token(1, self.extra_data) self.assertIsNone(SecretLinkSerializer().validate_token( t1, expected_data=self.extra_data)) self.assertIsNotNone(TimedSecretLinkSerializer().validate_token( t1, expected_data=self.extra_data)) self.assertNotEqual(t1, t2)
def test_secretlink_factory_creation(app, db): """Test token creation.""" extra_data = dict(recid='1') with app.app_context(): d = datetime.utcnow()+timedelta(days=1) t = SecretLinkFactory.create_token(1, extra_data) assert SecretLinkSerializer().validate_token( t, expected_data=extra_data) is not None assert TimedSecretLinkSerializer().validate_token( t, expected_data=extra_data) is None t1 = SecretLinkFactory.create_token( 1, extra_data, expires_at=d ) t2 = SecretLinkFactory.create_token(1, extra_data) assert SecretLinkSerializer().validate_token( t1, expected_data=extra_data) is None assert TimedSecretLinkSerializer().validate_token( t1, expected_data=extra_data) is not None assert t1 != t2
def test_secretlink_factory_load_token(app, db): """Test token loading.""" extra_data = dict(recid='1') with app.app_context(): t = SecretLinkFactory.create_token(1, extra_data) assert SecretLinkFactory.load_token(t) is not None t = SecretLinkFactory.create_token( 1, extra_data, expires_at=datetime.utcnow()-timedelta(days=1)) with pytest.raises(SignatureExpired): SecretLinkFactory.load_token(t) assert SecretLinkFactory.load_token(t, force=True) is not None