本文整理匯總了Python中stormpath.resources.application.Application.handle_id_site_callback方法的典型用法代碼示例。如果您正苦於以下問題:Python Application.handle_id_site_callback方法的具體用法?Python Application.handle_id_site_callback怎麽用?Python Application.handle_id_site_callback使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類stormpath.resources.application.Application
的用法示例。
在下文中一共展示了Application.handle_id_site_callback方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: IDSiteCallbackTest
# 需要導入模塊: from stormpath.resources.application import Application [as 別名]
# 或者: from stormpath.resources.application.Application import handle_id_site_callback [as 別名]
class IDSiteCallbackTest(IDSiteBuildURITest):
def setUp(self):
super(IDSiteCallbackTest, self).setUp()
self.store = MagicMock()
self.store.get_resource.return_value = {'href': 'acchref', 'sp_http_status': 200}
self.store._cache_get.return_value = False # ignore nonce
self.client.data_store = self.store
self.app = Application(
client=self.client,
properties={'href': 'apphref', 'accounts': {'href': 'acchref'}})
self.acc = MagicMock(href='acchref')
now = datetime.datetime.utcnow()
try:
irt = uuid4().get_hex()
except AttributeError:
irt = uuid4().hex
fake_jwt_data = {
'exp': now + datetime.timedelta(seconds=3600),
'aud': self.app._client.auth.id,
'irt': irt,
'iss': 'Stormpath',
'sub': self.acc.href,
'isNewSub': False,
'state': None,
}
self.fake_jwt = to_unicode(jwt.encode(
fake_jwt_data,
self.app._client.auth.secret,
'HS256'), 'UTF-8')
def test_id_site_callback_handler(self):
fake_jwt_response = 'http://localhost/?jwtResponse=%s' % self.fake_jwt
ret = self.app.handle_id_site_callback(fake_jwt_response)
self.assertIsNotNone(ret)
self.assertEqual(ret.account.href, self.acc.href)
self.assertIsNone(ret.state)
def test_id_site_callback_handler_jwt_already_used(self):
self.store._cache_get.return_value = True # Fake Nonce already used
fake_jwt_response = 'http://localhost/?jwtResponse=%s' % self.fake_jwt
self.assertRaises(ValueError, self.app.handle_id_site_callback, fake_jwt_response)
def test_id_site_callback_handler_invalid_jwt(self):
fake_jwt_response = 'http://localhost/?jwtResponse=%s' % 'INVALID_JWT'
ret = self.app.handle_id_site_callback(fake_jwt_response)
self.assertIsNone(ret)
def test_id_site_callback_handler_invalid_url_response(self):
fake_jwt_response = 'invalid_url_response'
ret = self.app.handle_id_site_callback(fake_jwt_response)
self.assertIsNone(ret)